Задвоение количества при левом соединении в запросе
Всем привет. Хотелось бы разобраться с запросом. Я хочу выбрать по поступлениям количество заказанного товара. При условии что у одного заказа есть более одного поступления количество начинает повторяться.
Сам запрос:
Сам запрос:
ВЫБРАТЬ
ПриобретениеТоваровУслугТовары.Ссылка.Партнер КАК Контрагент,
ПриобретениеТоваровУслугТовары.Ссылка.Дата КАК ДатаПоступления,
ПриобретениеТоваровУслугТовары.Номенклатура КАК Номенклатура,
ПриобретениеТоваровУслугТовары.Характеристика КАК Характеристика,
ВЫБОР
КОГДА ПриобретениеТоваровУслугТовары.Упаковка = ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка)
ТОГДА ПриобретениеТоваровУслугТовары.Номенклатура.ЕдиницаИзмерения
ИНАЧЕ ПриобретениеТоваровУслугТовары.Упаковка
КОНЕЦ КАК ЕдИзм,
СУММА(ПриобретениеТоваровУслугТовары.Количество) КАК КоличествоПоступило,
СУММА(ПриобретениеТоваровУслугТовары.Сумма) КАК СуммаПоступило,
СУММА(ЕСТЬNULL(ЗаказПоставщикуТовары.Количество, 0)) КАК КоличествоЗаказано,
СУММА(ЕСТЬNULL(ЗаказПоставщикуТовары.Сумма, 0)) КАК СуммаЗаказано,
ПриобретениеТоваровУслугТовары.Ссылка КАК Поступление,
ЕСТЬNULL(ЗаказПоставщикуТовары.Ссылка, ЗНАЧЕНИЕ(Документ.ЗаказПоставщику.ПустаяСсылка)) КАК ЗаказПоставщику,
ПриобретениеТоваровУслугТовары.Характеристика.Наименование КАК ХарактеристикаНаименование
ПОМЕСТИТЬ ВТ_Поступления
ИЗ
Документ.ПриобретениеТоваровУслуг.Товары КАК ПриобретениеТоваровУслугТовары
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары
ПО ПриобретениеТоваровУслугТовары.ЗаказПоставщику = ЗаказПоставщикуТовары.Ссылка
И ПриобретениеТоваровУслугТовары.Номенклатура = ЗаказПоставщикуТовары.Номенклатура
И ПриобретениеТоваровУслугТовары.Характеристика = ЗаказПоставщикуТовары.Характеристика
ГДЕ
ПриобретениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
И ПриобретениеТоваровУслугТовары.ЗаказПоставщику = &ЗаказПоставщику
{ГДЕ
(ПриобретениеТоваровУслугТовары.Ссылка.Дата > ПриобретениеТоваровУслугТовары.ЗаказПоставщику.ЖелаемаяДатаПоступления) КАК ТолькоПросроченные,
(ПриобретениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания) КАК Поле2}
СГРУППИРОВАТЬ ПО
ПриобретениеТоваровУслугТовары.Ссылка.Партнер,
ПриобретениеТоваровУслугТовары.Ссылка.Дата,
ПриобретениеТоваровУслугТовары.Номенклатура,
ПриобретениеТоваровУслугТовары.Характеристика,
ВЫБОР
КОГДА ПриобретениеТоваровУслугТовары.Упаковка = ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка)
ТОГДА ПриобретениеТоваровУслугТовары.Номенклатура.ЕдиницаИзмерения
ИНАЧЕ ПриобретениеТоваровУслугТовары.Упаковка
КОНЕЦ,
ПриобретениеТоваровУслугТовары.Ссылка,
ПриобретениеТоваровУслугТовары.Характеристика.Наименование,
ЕСТЬNULL(ЗаказПоставщикуТовары.Ссылка, ЗНАЧЕНИЕ(Документ.ЗаказПоставщику.ПустаяСсылка))
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ
ВТ_Поступления.Номенклатура КАК Номенклатура,
ВТ_Поступления.Характеристика КАК Характеристика,
ВТ_Поступления.ЗаказПоставщику КАК ЗаказПоставщику
ПОМЕСТИТЬ ВТ_ПоступленияГрупп
ИЗ
ВТ_Поступления КАК ВТ_Поступления
ГДЕ
НЕ ВТ_Поступления.ЗаказПоставщику = ЗНАЧЕНИЕ(Документ.ЗаказПоставщику.ПустаяСсылка)
СГРУППИРОВАТЬ ПО
ВТ_Поступления.Номенклатура,
ВТ_Поступления.Характеристика,
ВТ_Поступления.ЗаказПоставщику
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ
ПриобретениеТоваровУслугТовары.Номенклатура КАК Номенклатура,
ПриобретениеТоваровУслугТовары.Характеристика КАК Характеристика,
СУММА(ПриобретениеТоваровУслугТовары.Количество) КАК Количество,
СУММА(ПриобретениеТоваровУслугТовары.Сумма) КАК Сумма,
ПриобретениеТоваровУслугТовары.ЗаказПоставщику КАК ЗаказПоставщику
ПОМЕСТИТЬ ВТ_ПоступленияДоДатыНачала
ИЗ
Документ.ПриобретениеТоваровУслуг.Товары КАК ПриобретениеТоваровУслугТовары
ГДЕ
(ПриобретениеТоваровУслугТовары.ЗаказПоставщику, ПриобретениеТоваровУслугТовары.Номенклатура, ПриобретениеТоваровУслугТовары.Характеристика) В
(ВЫБРАТЬ
ВТ_ПоступленияГрупп.ЗаказПоставщику КАК ЗаказПоставщику,
ВТ_ПоступленияГрупп.Номенклатура КАК Номенклатура,
ВТ_ПоступленияГрупп.Характеристика КАК Характеристика
ИЗ
ВТ_ПоступленияГрупп КАК ВТ_ПоступленияГрупп)
И ПриобретениеТоваровУслугТовары.Ссылка.Дата < &ДатаНачала
СГРУППИРОВАТЬ ПО
ПриобретениеТоваровУслугТовары.Номенклатура,
ПриобретениеТоваровУслугТовары.Характеристика,
ПриобретениеТоваровУслугТовары.ЗаказПоставщику
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ
ВЫБОР
КОГДА ТИПЗНАЧЕНИЯ(ВЫБОР
КОГДА ВТ_Поступления.ЗаказПоставщику = ЗНАЧЕНИЕ(Документ.ЗаказПоставщику.ПустаяСсылка)
ТОГДА ВТ_Поступления.Поступление
ИНАЧЕ ВТ_Поступления.ЗаказПоставщику
КОНЕЦ) = ТИП(Документ.ПриобретениеТоваровУслуг)
ТОГДА "Без заказа"
ИНАЧЕ ВТ_Поступления.Контрагент
КОНЕЦ КАК Контрагент,
ВТ_Поступления.ДатаПоступления КАК ДатаПоступления,
ВТ_Поступления.Номенклатура КАК Номенклатура,
ВТ_Поступления.Характеристика КАК Характеристика,
ВТ_Поступления.ЕдИзм КАК ЕдИзм,
ВТ_Поступления.КоличествоПоступило КАК КоличествоПоступило,
ВТ_Поступления.СуммаПоступило КАК СуммаПоступило,
ВТ_Поступления.КоличествоЗаказано КАК КоличествоЗаказано,
ВТ_Поступления.СуммаЗаказано КАК СуммаЗаказано,
ВЫБОР
КОГДА ВТ_Поступления.ЗаказПоставщику = ЗНАЧЕНИЕ(Документ.ЗаказПоставщику.ПустаяСсылка)
ТОГДА ВТ_Поступления.Поступление
ИНАЧЕ ВТ_Поступления.ЗаказПоставщику
КОНЕЦ КАК ДокументДвижения,
ВТ_Поступления.Поступление КАК Поступление,
ЕСТЬNULL(ПоступленияДоДатыНачала.Количество, 0) КАК КоличествоПрошлыйПериод,
ЕСТЬNULL(ПоступленияДоДатыНачала.Сумма, 0) КАК СуммаПрошлыйПериод
ПОМЕСТИТЬ ВТ_Промежуточная
ИЗ
ВТ_Поступления КАК ВТ_Поступления
ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ПоступленияДоДатыНачала КАК ПоступленияДоДатыНачала
ПО ВТ_Поступления.Номенклатура = ПоступленияДоДатыНачала.Номенклатура
И ВТ_Поступления.Характеристика = ПоступленияДоДатыНачала.Характеристика
И ВТ_Поступления.ЗаказПоставщику = ПоступленияДоДатыНачала.ЗаказПоставщику
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ
ВТ_Промежуточная.Контрагент КАК Контрагент,
ВТ_Промежуточная.ДатаПоступления КАК ДатаПоступления,
ВТ_Промежуточная.Номенклатура КАК Номенклатура,
ВТ_Промежуточная.Характеристика КАК Характеристика,
ВТ_Промежуточная.ЕдИзм КАК ЕдИзм,
ВТ_Промежуточная.КоличествоПоступило КАК КоличествоПоступило,
ВТ_Промежуточная.СуммаПоступило КАК СуммаПоступило,
ВТ_Промежуточная.КоличествоЗаказано КАК КоличествоЗаказано,
ВТ_Промежуточная.СуммаЗаказано КАК СуммаЗаказано,
ВТ_Промежуточная.ДокументДвижения КАК ДокументДвижения,
ВТ_Промежуточная.Поступление КАК Поступление,
ВТ_Промежуточная.КоличествоПрошлыйПериод КАК КоличествоПрошлыйПериод,
ВТ_Промежуточная.СуммаПрошлыйПериод КАК СуммаПрошлыйПериод
ИЗ
ВТ_Промежуточная КАК ВТ_Промежуточная
Результат выполнения прикрепил.
ПоказатьПрикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот