|
Почему не отрабатывает левое соединение? | ☑ | ||
---|---|---|---|---|
0
andreanochilentano
naïve
18.07.24
✎
09:57
|
Есть запрос:
ВЫБРАТЬ ДанныеПроизводственногоКалендаря.Дата КАК Дата, ДанныеПроизводственногоКалендаря.ВидДня КАК ВидДня ИЗ РегистрСведений.ДанныеПроизводственногоКалендаря КАК ДанныеПроизводственногоКалендаря ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&НачалоПрошлогоПериода, &КонецПрошлогоПериода, День, , Склад.Родитель.Наименование ПОДОБНО "%оптовы%") КАК ТоварыНаСкладахОстаткиИОбороты ПО (ДанныеПроизводственногоКалендаря.Дата = ТоварыНаСкладахОстаткиИОбороты.Период) ГДЕ ДанныеПроизводственногоКалендаря.Дата МЕЖДУ &НачалоПрошлогоПериода И &КонецПрошлогоПериода И ТоварыНаСкладахОстаткиИОбороты.Номенклатура = &Н В левой колонке я ожидаю увидеть список дат с первой даты до второй. а они отображаются не все, выборочно. Но у меня же левое соединение. Почему? Куда делись нуллы? |
|||
1
andreanochilentano
naïve
18.07.24
✎
09:56
|
||||
2
Волшебник
18.07.24
✎
09:57
|
в регистре период с временем
|
|||
3
Волшебник
18.07.24
✎
09:58
|
почему в списке ВЫБРАТЬ нет полей из правой таблицы?
|
|||
4
maxab72
18.07.24
✎
09:59
|
(0) Надо Дату и Период оба привести привести к началу дня для сравнимости.
|
|||
5
andreanochilentano
naïve
18.07.24
✎
09:59
|
(2) В регистре Календаря все даты по порядку. Они же должны выводиться все, а если нет соответствия справа - то нуллы.
|
|||
6
Волшебник
18.07.24
✎
10:01
|
(5) Это Вы меня учите что ли?
|
|||
7
andreanochilentano
naïve
18.07.24
✎
10:03
|
(4) они в регистрах все со временем 00:00:00
если бы я делал внутреннее соединение, то да. но у меня же левое. Кстати, если я меняю левое соединение на внутреннее - то ничего не происходит. Результат запроса аналогичный. |
|||
8
Мультук
18.07.24
✎
10:03
|
(0)
Потому что не нужно тащить из присоединяемой таблицы условие в ГДЕ Притащил -- превратил левое соединение во внутреннее Ну логично же, нет ? ВЫБРАТЬ ДанныеПроизводственногоКалендаря.Дата КАК Дата, ДанныеПроизводственногоКалендаря.ВидДня КАК ВидДня ИЗ РегистрСведений.ДанныеПроизводственногоКалендаря КАК ДанныеПроизводственногоКалендаря ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&НачалоПрошлогоПериода, &КонецПрошлогоПериода, День, , Склад.Родитель.Наименование ПОДОБНО "%оптовы%" И Номенклатура = &Н ) КАК ТоварыНаСкладахОстаткиИОбороты ПО (ДанныеПроизводственногоКалендаря.Дата = ТоварыНаСкладахОстаткиИОбороты.Период) ГДЕ ДанныеПроизводственногоКалендаря.Дата МЕЖДУ &НачалоПрошлогоПериода И &КонецПрошлогоПериода |
|||
9
andreanochilentano
naïve
18.07.24
✎
10:04
|
(8) блин, елки-палки! Спасибо огромное.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |