Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Соединения в запросе

Соединения в запросе
Я
   trialex3
 
10.08.21 - 17:12
Добрый день. Подскажите пожалуйста почему при полном соединении выкидывается одна запись из временной таблицы "ВсеИзделия" в запросе. Во временной таблице 50 записей а в документе ЗаказПокупателя 49 (во временной 1 лишняя). Т.е. при соединении должна быть 1 запись лишняя с пустыми реквизитами Заказа покупателя, но по факту остается 49 записей.

ВЫБРАТЬ
    РезервированиеТоваровТовары.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    РезервированиеТоваровТовары.Номенклатура КАК Номенклатура,
    РезервированиеТоваровТовары.Количество КАК Количество,
    РезервированиеТоваровТовары.Ссылка.Заказ КАК Заказ
ПОМЕСТИТЬ ВсеИзделия
ИЗ
    Документ.РезервированиеТоваров.Товары КАК РезервированиеТоваровТовары
ГДЕ
    РезервированиеТоваровТовары.Ссылка.Заказ = &пка
    И НЕ РезервированиеТоваровТовары.НовоеРазмещение = НЕОПРЕДЕЛЕНО

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ЗаказНаПроизводствоПродукция.ХарактеристикаНоменклатуры,
    ЗаказНаПроизводствоПродукция.Номенклатура,
    СУММА(ЗаказНаПроизводствоПродукция.Количество),
    ЗаказНаПроизводствоПродукция.Заказ
ИЗ
    Документ.ЗаказНаПроизводство.Продукция КАК ЗаказНаПроизводствоПродукция
ГДЕ
    ЗаказНаПроизводствоПродукция.Заказ = &пка

СГРУППИРОВАТЬ ПО
    ЗаказНаПроизводствоПродукция.ХарактеристикаНоменклатуры,
    ЗаказНаПроизводствоПродукция.Номенклатура,
    ЗаказНаПроизводствоПродукция.Заказ
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВсеИзделия.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    ВсеИзделия.Номенклатура КАК Номенклатура,
    ВсеИзделия.Количество КАК Количество,
    ВсеИзделия.Заказ КАК Заказ,
    ЗаказПокупателяТовары.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры1,
    ЗаказПокупателяТовары.Номенклатура КАК Номенклатура1,
    ЗаказПокупателяТовары.Количество КАК Количество1,
    ЗаказПокупателяТовары.Ссылка КАК Ссылка
ИЗ
    ВсеИзделия КАК ВсеИзделия
        ПОЛНОЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателяТовары
        ПО ВсеИзделия.ХарактеристикаНоменклатуры = ЗаказПокупателяТовары.ХарактеристикаНоменклатуры
ГДЕ
    ЗаказПокупателяТовары.Ссылка = &пка
   mikecool
 
1 - 10.08.21 - 17:14
потому что
ГДЕ
    ЗаказПокупателяТовары.Ссылка = &пка
   Eiffil123
 
2 - 10.08.21 - 17:16
(0) а почему должна быть одна? полное соединение берет записи, подходящие по условию ВсеИзделия.ХарактеристикаНоменклатуры = ЗаказПокупателяТовары.ХарактеристикаНоменклатуры

Таких записей как я понимаю 49.
   Eiffil123
 
3 - 10.08.21 - 17:18
(1) а всё, я туплю. вы всё верно написали
   trialex3
 
4 - 10.08.21 - 17:18
(2) Не. (1) Прав. mikecool спасибо. Но почему это так работает?
   mikecool
 
5 - 10.08.21 - 17:27
(4) потому что Где накладывается на результат соединения
   Жан Пердежон
 
6 - 10.08.21 - 17:27
(4) Условие в ГДЕ отрабатывает ПОСЛЕ соединения,
перенеси "ЗаказПокупателяТовары.Ссылка = &пка" в условие соединения и всё будет
   trialex3
 
7 - 10.08.21 - 17:29
(6) Да именно так и сделал. Спасибо (5) Спасибо.

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.