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

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

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

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

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

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

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