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