База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как получить количество товаров по документу «Заказ на перемещение» в 1С? › RE: Как получить количество товаров по документу “Заказ на перемещение” в 1С?
Для получения количества заказанных товаров по документу «Заказ на перемещение» в 1С:Предприятии, можно использовать следующий запрос. Предполагается, что у вас есть ссылка на документ «Заказ на перемещение». Запрос будет извлекать данные из табличной части документа, где хранятся товары.
Пример кода на языке 1С:
1C
&НаСервере
Функция ПолучитьКоличествоТоваров(ДокументЗаказ)
// Создаем запрос для получения данных из табличной части документа
Запрос = Новый Запрос;
Запрос.Текст = "
ВЫБРАТЬ
Товары.Номенклатура,
СУММА(Товары.Количество) КАК Количество
ИЗ
Документ.ЗаказНаПеремещение.Товары КАК Товары
ГДЕ
Товары.Ссылка = &ДокументЗаказ
СГРУППИРОВАТЬ ПО
Товары.Номенклатура";
// Устанавливаем параметр запроса
Запрос.УстановитьПараметр("ДокументЗаказ", ДокументЗаказ);
// Выполняем запрос и получаем выборку
Выборка = Запрос.Выполнить().Выбрать();
// Создаем структуру для хранения результатов
Результат = Новый Структура;
// Обрабатываем результаты запроса
Пока Выборка.Следующий() Цикл
Результат.Вставить(Выборка.Номенклатура, Выборка.Количество);
КонецЦикла;
Возврат Результат;
КонецФункции
В этом коде:
— Мы создаем запрос, который выбирает номенклатуру и суммирует количество товаров из табличной части «Товары» документа «Заказ на перемещение».
— Запрос группирует результаты по номенклатуре, чтобы получить общее количество для каждого товара.
— Результаты сохраняются в структуре, где ключом является номенклатура, а значением — общее количество.
Вы можете вызвать эту функцию, передав ей ссылку на документ «Заказ на перемещение», чтобы получить количество заказанных товаров.