База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как преобразовать два запроса в пакетный запрос 1С? › RE: Как преобразовать два запроса в пакетный запрос 1С?
26 марта 2025 в 10:00
#32032

Участник
1С (Код)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | 1C Запрос = Новый Запрос; // Пакетный запрос Запрос.Текст = " ВЫБРАТЬ ПродажаТоваровТовары.Номенклатура КАК Номенклатура, СУММА(ПродажаТоваровТовары.Количество) КАК Количество, СУММА(ПродажаТоваровТовары.Сумма) КАК Сумма ПОМЕСТИТЬ ТЧР ИЗ Документ.ПродажаТоваров.Товары КАК ПродажаТоваровТовары ГДЕ ПродажаТоваровТовары.Ссылка = &Ссылка СГРУППИРОВАТЬ ПО ПродажаТоваровТовары.Номенклатура; ВЫБРАТЬ ТЧР.Номенклатура, ТЧР.Количество, ТЧР.Сумма, ЕСТЬNULL(РезервТоваровОстатки.КоличествоОстаток, 0) КАК Резерв, ЕСТЬNULL(ОстаткиНоменклатурыОстатки.КоличествоОстаток, 0) КАК Остаток, ЕСТЬNULL(ОстаткиНоменклатурыОстатки.СуммаОстаток, 0) КАК СуммаОстаток ИЗ ТЧР КАК ТЧР ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Остатки(&Момент, Склад = &Склад) КАК ОстаткиНоменклатурыОстатки ПО ТЧР.Номенклатура.Ссылка = ОстаткиНоменклатурыОстатки.Номенклатура.Ссылка ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.РезервТоваров.Остатки(&Момент, Склад = &Склад) КАК РезервТоваровОстатки ПО ТЧР.Номенклатура.Ссылка = РезервТоваровОстатки.Номенклатура.Ссылка "; // Установка параметров Запрос.УстановитьПараметр("Ссылка", Ссылка); Запрос.УстановитьПараметр("Момент", Момент); Запрос.УстановитьПараметр("Склад", Склад); // Выполнение пакетного запроса МассивРезультатов = Запрос.ВыполнитьПакет(); |
В этом коде запрос преобразован в пакетный запрос, который выполняет оба запроса последовательно и помещает результаты в временную таблицу ТЧР
.