|
|
Не работает полное соединение в элементарном запросе |
☑ |
|
0
evorle145
05.01.13
✎
14:11
|
Не понимаю, почему не выходят ячейки со значением null, то есть результат запроса получаю как внутреннее соединение
Запрос1 = Новый Запрос;
Запрос1.Текст =
"ВЫБРАТЬ
| РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура1,
| ПоступлениеТоваровУслугТовары.Номенклатура
|ИЗ
| Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
| ПОЛНОЕ СОЕДИНЕНИЕ Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
| ПО РеализацияТоваровУслугТовары.Номенклатура = ПоступлениеТоваровУслугТовары.Номенклатура
|ГДЕ
| ПоступлениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаКонец
| И ПоступлениеТоваровУслугТовары.Ссылка.Проведен = &Проведен
| И РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаКонец";
Запрос1.УстановитьПараметр("ДатаКонец", КонецДня(ЭлементыФормы.ДатаКонец.Значение));
Запрос1.УстановитьПараметр("ДатаНачала", НачалоДня(ЭлементыФормы.ДатаНачала.Значение));
Запрос1.УстановитьПараметр("Проведен", Истина);
Результат = Запрос1.Выполнить().Выгрузить();
Помогите понять, где туплю?
|
|
|
1
evorle145
05.01.13
✎
14:16
|
В документах реализации есть номенклатура, которой не было в поступлении, значит точно должны быть строки типа
Номен1 NULL
Номен2 NULL
|
|
|
2
shuhard
05.01.13
✎
14:16
|
(0) [где туплю]
в блоке Where
|
|
|
3
evorle145
05.01.13
✎
14:17
|
(2) но я там только делаю выборку за нужный период и беру только проведенные документы и все..
|
|
|
4
Ns33
05.01.13
✎
14:20
|
Сначала выполняется соединение, а потом применяются условия. В данном случае условия накладываются на поля обеих таблиц, т.е. Истина будет только там, где есть не пустые поля из обеих таблиц.
Делать подзапросами или через временные таблицы.
|
|
|
5
evorle145
05.01.13
✎
14:23
|
(4), эх, точно. Спасибо! Второй раз уже на эти грабли натыкаюсь, обидно даже...
|
|
|
6
shuhard
05.01.13
✎
14:24
|
(0) правильный запрос:
ВЫБРАТЬ
ВложенныйЗапрос.Номенклатура,
СУММА(ВложенныйЗапрос.Продано) КАК Продано,
СУММА(ВложенныйЗапрос.Куплено) КАК Куплено
ИЗ
(ВЫБРАТЬ
РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
РеализацияТоваровУслугТовары.Количество КАК Продано,
0 КАК Куплено
ИЗ
Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
ПоступлениеТоваровУслугТовары.Номенклатура,
0,
ПоступлениеТоваровУслугТовары.Количество
ИЗ
Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары) КАК ВложенныйЗапрос
СГРУППИРОВАТЬ ПО
ВложенныйЗапрос.Номенклатура
|
|
|
7
evorle145
05.01.13
✎
14:25
|
(6), я понял-понял. Спасибо больше! видимо я просто после праздников не успел отойти =)
|
|