Старнная работа ПОЛНОГО СОЕДИНЕНИЯ в запросе.

1. sv_baranov 6 28.10.21 11:25 Сейчас в теме
Уважаемы форумчане. Помогите решить вопрос.
Платформа: 1С:Предприятие 8.3 (8.3.18.1334)
Конфигурация: Бухгалтерия предприятия, редакция 3.0 (3.0.102.11)
Решил написать простенький отчет по документу Путевой лист (не кидаться в меня сразу тухлыми помидорами, знаю что плохо делать запрос к документам, но тут надо было).
Делаю запрос к двум ТЧ в этом документе и связываю ПОЛНЫМ СОЕДИНЕНИЕМ.

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

СГРУППИРОВАТЬ ПО
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.Дата, ПутевойЛистМаршрут.Ссылка.Дата),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка, ПутевойЛистМаршрут.Ссылка),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ФизЛицо, ПутевойЛистМаршрут.Ссылка.ФизЛицо),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство.НормаРасхода, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство.НормаРасхода)

УПОРЯДОЧИТЬ ПО
	Дата
Показать


Так вот выдает мне данный запрос не все нужные документы, а только те, в которых заполнена ТЧ Топливо. Если же ТЧ топливо не заполнено, а ТЧ Маршрут имеет значения - такой документ в выборку не попадает.


Переписал запрос через временные таблицы. Получилось вот так:

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

СГРУППИРОВАТЬ ПО
	ПутевойЛистТопливо.Ссылка.Дата,
	ПутевойЛистТопливо.Ссылка,
	ПутевойЛистТопливо.Ссылка.ТранспортноеСредство,
	ПутевойЛистТопливо.Ссылка.ФизЛицо,
	ПутевойЛистТопливо.Ссылка.НормаРасхода
;

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

СГРУППИРОВАТЬ ПО
	ПутевойЛистМаршрут.Ссылка.Дата,
	ПутевойЛистМаршрут.Ссылка,
	ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство,
	ПутевойЛистМаршрут.Ссылка.ФизЛицо,
	ПутевойЛистМаршрут.Ссылка.НормаРасхода
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ЕСТЬNULL(вт_Маршрут.Дата, вт_Топливо.Дата) КАК Дата,
	ЕСТЬNULL(вт_Маршрут.Ссылка, вт_Топливо.Ссылка) КАК Ссылка,
	ЕСТЬNULL(вт_Маршрут.ТранспортноеСредство, вт_Топливо.ТранспортноеСредство) КАК ТранспортноеСредство,
	ЕСТЬNULL(вт_Маршрут.ФизЛицо, вт_Топливо.ФизЛицо) КАК ФизЛицо,
	ЕСТЬNULL(вт_Маршрут.НормаРасхода, вт_Топливо.НормаРасхода) КАК НормаРасхода,
	вт_Маршрут.Расстояние КАК Расстояние,
	вт_Маршрут.Расход КАК Расход,
	вт_Топливо.Количество КАК Количество
ИЗ
	вт_Топливо КАК вт_Топливо
		ПОЛНОЕ СОЕДИНЕНИЕ вт_Маршрут КАК вт_Маршрут
		ПО (вт_Топливо.Ссылка = вт_Маршрут.Ссылка)

УПОРЯДОЧИТЬ ПО
	Дата
Показать


Второй запрос отрабатывает как надо.
Кстати в первом запросе не использовал для дат МЕЖДУ, т.к. тоже не отрабатывало, а надо было быстро не стал разбираться.

В итоге 2 вопроса:
1. Почему в первом запросе не работает ПОЛНОЕ СОЕДИНЕНИЕ?
2. Почему в первом запросе не работает оператор МЕЖДУ?
Найденные решения
13. -AI- 28.10.21 11:45 Сейчас в теме
(1) из-за отбора в поле где, полное соединение превращается во внутреннее
и что бы этого не происходило, переделайте условия в такой вид:
ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Проведен,Истина)
И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Проведен,Истина)
И ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Дата,&ДатаНач) >= &ДатаНач
И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Дата,&ДатаНач) >= &ДатаНач
// и т.д.

PS а т.к. у вас есть неявное соединение с справочником (дважды!), то лучше сделайте его явным (единожды!):
ИЗ
    Документ.ПутевойЛист как спр
        левое соединенние
    Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
        ПО ПутевойЛистМаршрут.Ссылка = спр.Ссылка
            левое СОЕДИНЕНИЕ
    Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
        ПО ПутевойЛистТопливо.Ссылка = спр.Ссылка
ГДЕ
    спр.Проведен
    И спр.Дата >= &ДатаНач
    И спр.Дата <= &ДатаКон
    и (ПутевойЛистМаршрут.Ссылка Есть НЕ NULL или ПутевойЛистТопливо.Ссылка Есть НЕ NULL)
Показать
PlatonStepan; +1 Ответить
2. Sashares 34 28.10.21 11:31 Сейчас в теме
(1)
1. Почему в первом запросе не работает ПОЛНОЕ СОЕДИНЕНИЕ?

Потому что дальше в ГДЕ у вас отбор:
ПутевойЛистМаршрут.Ссылка.Проведен
    И ПутевойЛистТопливо.Ссылка.Проведен...

Если не будет хотя бы одной строки в обеих таблицах, данные не попадут.
9. spacecraft 28.10.21 11:38 Сейчас в теме
(1)
В итоге 2 вопроса:
1. Почему в первом запросе не работает ПОЛНОЕ СОЕДИНЕНИЕ?
2. Почему в первом запросе не работает оператор МЕЖДУ?

Ответ на оба вопроса простой:
Полное соединение отрабатывает, но после соединения идет секция ГДЕ, в которой отсекаются не нужные записи.
ГДЕ
ПутевойЛистМаршрут.Ссылка.Проведен
И ПутевойЛистТопливо.Ссылка.Проведен
И ПутевойЛистМаршрут.Ссылка.Дата >= &ДатаНач
И ПутевойЛистМаршрут.Ссылка.Дата <= &ДатаКон
И ПутевойЛистТопливо.Ссылка.Дата >= &ДатаНач
И ПутевойЛистТопливо.Ссылка.Дата <= &ДатаКон

Так вот выдает мне данный запрос не все нужные документы, а только те, в которых заполнена ТЧ Топливо.

Если данных в какой-то таблице нет, то ИмяТаблицы.Ссылка будет null. Соответственно по null все условия дадут Ложь и будут исключены из выборки.
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. Sashares 34 28.10.21 11:31 Сейчас в теме
(1)
1. Почему в первом запросе не работает ПОЛНОЕ СОЕДИНЕНИЕ?

Потому что дальше в ГДЕ у вас отбор:
ПутевойЛистМаршрут.Ссылка.Проведен
    И ПутевойЛистТопливо.Ссылка.Проведен...

Если не будет хотя бы одной строки в обеих таблицах, данные не попадут.
5. Sashares 34 28.10.21 11:33 Сейчас в теме
(1)
2. Почему в первом запросе не работает оператор МЕЖДУ?

В чем выражается, что он не работает?
10. sv_baranov 6 28.10.21 11:42 Сейчас в теме
(5) Очень просто - не отсекает ненужных дат документа. Вываливает либо все доки, либо вообще не выдает ни одного.
16. Sashares 34 28.10.21 11:53 Сейчас в теме
(10)Приложите текст запроса, приложите результат, тогда можно будет сказать, что не верно.
8. nomad_irk 67 28.10.21 11:35 Сейчас в теме
(1)начнем с того, зачем вообще использовать полное соединение?
11. Sashares 34 28.10.21 11:42 Сейчас в теме
(8)Поддержу. Сначала взять данные шапки, и к ним присоединить данные ТЧ.
12. sv_baranov 6 28.10.21 11:43 Сейчас в теме
(8) Этот запрос для СКД. Нужны поля из обеих ТЧ. Потому и соединяю их. Если выбрать в качестве источника документ (а не две ТЧ), то он ссыпает все в одно поле.
14. nomad_irk 67 28.10.21 11:47 Сейчас в теме
(12)что значит "ссыпает все в одно поле"?
9. spacecraft 28.10.21 11:38 Сейчас в теме
(1)
В итоге 2 вопроса:
1. Почему в первом запросе не работает ПОЛНОЕ СОЕДИНЕНИЕ?
2. Почему в первом запросе не работает оператор МЕЖДУ?

Ответ на оба вопроса простой:
Полное соединение отрабатывает, но после соединения идет секция ГДЕ, в которой отсекаются не нужные записи.
ГДЕ
ПутевойЛистМаршрут.Ссылка.Проведен
И ПутевойЛистТопливо.Ссылка.Проведен
И ПутевойЛистМаршрут.Ссылка.Дата >= &ДатаНач
И ПутевойЛистМаршрут.Ссылка.Дата <= &ДатаКон
И ПутевойЛистТопливо.Ссылка.Дата >= &ДатаНач
И ПутевойЛистТопливо.Ссылка.Дата <= &ДатаКон

Так вот выдает мне данный запрос не все нужные документы, а только те, в которых заполнена ТЧ Топливо.

Если данных в какой-то таблице нет, то ИмяТаблицы.Ссылка будет null. Соответственно по null все условия дадут Ложь и будут исключены из выборки.
13. -AI- 28.10.21 11:45 Сейчас в теме
(1) из-за отбора в поле где, полное соединение превращается во внутреннее
и что бы этого не происходило, переделайте условия в такой вид:
ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Проведен,Истина)
И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Проведен,Истина)
И ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Дата,&ДатаНач) >= &ДатаНач
И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Дата,&ДатаНач) >= &ДатаНач
// и т.д.

PS а т.к. у вас есть неявное соединение с справочником (дважды!), то лучше сделайте его явным (единожды!):
ИЗ
    Документ.ПутевойЛист как спр
        левое соединенние
    Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
        ПО ПутевойЛистМаршрут.Ссылка = спр.Ссылка
            левое СОЕДИНЕНИЕ
    Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
        ПО ПутевойЛистТопливо.Ссылка = спр.Ссылка
ГДЕ
    спр.Проведен
    И спр.Дата >= &ДатаНач
    И спр.Дата <= &ДатаКон
    и (ПутевойЛистМаршрут.Ссылка Есть НЕ NULL или ПутевойЛистТопливо.Ссылка Есть НЕ NULL)
Показать
PlatonStepan; +1 Ответить
17. sv_baranov 6 28.10.21 12:03 Сейчас в теме
(13) Исправил. Вдруг кому надо. Результирующий запрос, который отрабатывает как надо:
ВЫБРАТЬ
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.Дата, ПутевойЛистМаршрут.Ссылка.Дата) КАК Дата,
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка, ПутевойЛистМаршрут.Ссылка) КАК ПутевойЛист,
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство) КАК ТранспортноеСредство,
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ФизЛицо, ПутевойЛистМаршрут.Ссылка.ФизЛицо) КАК Сотрудник,
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство.НормаРасхода, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство.НормаРасхода) КАК НормаРасхода,
	СУММА(ПутевойЛистТопливо.Количество) КАК Количество,
	СУММА(ПутевойЛистМаршрут.Расстояние) КАК Расстояние,
	СУММА(ПутевойЛистМаршрут.Расход) КАК Расход
ИЗ
	Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
		ПОЛНОЕ СОЕДИНЕНИЕ Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
		ПО ПутевойЛистМаршрут.Ссылка = ПутевойЛистТопливо.Ссылка
ГДЕ
	ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Проведен,Истина)
	И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Проведен, Истина)
	И ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Дата,&ДатаНач) >= &ДатаНач
	И ЕстьNULL(ПутевойЛистМаршрут.Ссылка.Дата,&ДатаКон) <= &ДатаКон
	И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Дата,&ДатаНач) >= &ДатаНач
	И ЕстьNULL(ПутевойЛистТопливо.Ссылка.Дата,&ДатаКон) <= &ДатаКон

СГРУППИРОВАТЬ ПО
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.Дата, ПутевойЛистМаршрут.Ссылка.Дата),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка, ПутевойЛистМаршрут.Ссылка),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ФизЛицо, ПутевойЛистМаршрут.Ссылка.ФизЛицо),
	ЕСТЬNULL(ПутевойЛистТопливо.Ссылка.ТранспортноеСредство.НормаРасхода, ПутевойЛистМаршрут.Ссылка.ТранспортноеСредство.НормаРасхода)

УПОРЯДОЧИТЬ ПО
	Дата
Показать
18. -AI- 28.10.21 12:59 Сейчас в теме
(17) и всё же...
слишком много ЕстьNULL у вас, я бы оставил только один:
ВЫБРАТЬ
    ПутевойЛист.Дата,
    ПутевойЛист.Ссылка,
    ПутевойЛист.ТранспортноеСредство,
    ПутевойЛист.ФизЛицо КАК Сотрудник,
    ПутевойЛист.ТранспортноеСредство.НормаРасхода КАК НормаРасхода,
    СУММА(ПутевойЛистТопливо.Количество) КАК Количество,
    СУММА(ПутевойЛистМаршрут.Расстояние) КАК Расстояние,
    СУММА(ПутевойЛистМаршрут.Расход) КАК Расход
ИЗ
    Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
        ПОЛНОЕ СОЕДИНЕНИЕ Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
        ПО ПутевойЛистМаршрут.Ссылка = ПутевойЛистТопливо.Ссылка
    левое СОЕДИНЕНИЕ Документ.ПутевойЛист КАК ПутевойЛист
        ПО ЕстьNULL(ПутевойЛистМаршрут.Ссылка, ПутевойЛистТопливо.Ссылка)=ПутевойЛист.Ссылка
ГДЕ
    ПутевойЛист.Проведен
    И ПутевойЛист.Дата >= &ДатаНач
    И ПутевойЛист.Дата <= &ДатаКон

СГРУППИРОВАТЬ ПО
    ПутевойЛист.Дата,
    ПутевойЛист.Ссылка,
    ПутевойЛист.ТранспортноеСредство,
    ПутевойЛист.ФизЛицо

УПОРЯДОЧИТЬ ПО
    ПутевойЛист.Дата
Показать
19. Sashares 34 28.10.21 13:33 Сейчас в теме
(18)Почему у вас такое?
Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
        ПОЛНОЕ СОЕДИНЕНИЕ Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
        ПО ПутевойЛистМаршрут.Ссылка = ПутевойЛистТопливо.Ссылка
    левое СОЕДИНЕНИЕ Документ.ПутевойЛист КАК ПутевойЛист
        ПО ЕстьNULL(ПутевойЛистМаршрут.Ссылка, ПутевойЛистТопливо.Ссылка)=ПутевойЛист.Ссылка


Почему не так?

Документ.ПутевойЛист КАК ПутевойЛист
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПутевойЛист.Маршрут КАК ПутевойЛистМаршрут
ПО ПутевойЛист.Ссылка = ПутевойЛистМаршрут.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПутевойЛист.Топливо КАК ПутевойЛистТопливо
ПО ПутевойЛист.Ссылка = ПутевойЛистТопливо.Ссылка
20. -AI- 28.10.21 13:42 Сейчас в теме
(19) потому что такой вариант я предлагал выше...

но он "не зашел" автору топика....
21. Sashares 34 28.10.21 13:44 Сейчас в теме
(20)ТС не ищет легких путей))
22. sv_baranov 6 28.10.21 14:02 Сейчас в теме
23. sv_baranov 6 28.10.21 14:03 Сейчас в теме
(19) А вот этого я не знаю. Для меня тяжелочитаемы двойные соединения...
24. -AI- 28.10.21 14:16 Сейчас в теме
(23)
Для меня тяжелочитаемы двойные соединения...

двойное соединение = одинарное соединение, где первый запрос "вложенный" (ну или, в вашем случае, временная таблица)

перефразирую:

если у вас в голове есть результат первого соединения, то вы всегда можете присоединить к нему ещё одно и т.д.
3. user1461477 28.10.21 11:31 Сейчас в теме
это массовый гипноз - что подокументарные отчеты - это плохо
пусть сначала начнут писать что-то вразумительно с регистрами, потом будут щОки надувать, правильно-неправильно
4. user1461477 28.10.21 11:32 Сейчас в теме
(3) кто видел в реальных базах РАУЗ, тот над документаркой не смеется
6. gybson 28.10.21 11:34 Сейчас в теме
В условиях уберите ТЧ, если они требуются, то перенесите условия в соединение
7. user1461477 28.10.21 11:35 Сейчас в теме
а так, да
запросец весьма смишон
15. user1461477 28.10.21 11:52 Сейчас в теме
(7)
Выбрать  Ссылка, Дата, ТранспортноеСредство, ФизЛицо КАК Сотрудник, 
ТранспортноеСредство.НормаРасхода КАК НормаРасхода
поместить Доки из Документ.ПутевойЛист  ГДЕ
    Проведен
    И (Дата Между &ДатаНач и &ДатаКон)
    ;
 Выбрать СУММА(Количество) КАК Количество, Ссылка поместить топливо
 из Документ.ПутевойЛист.Топливо 
 где Ссылка.Проведен
    И (Ссылка.Дата Между &ДатаНач и &ДатаКон)   
СГРУППИРОВАТЬ ПО
    Ссылка

    ;
 Выбрать СУММА(Расстояние) КАК Расстояние, СУММА(Расход) КАК Расход,
Ссылка поместить маршрут
 из Документ.ПутевойЛист.ПутевойЛистМаршрут 
 где Ссылка.Проведен
    И (Ссылка.Дата Между &ДатаНач и &ДатаКон)   
СГРУППИРОВАТЬ ПО
    Ссылка

;
выбрать * из Доки левое соединение Топливо КАК топливо по Доки.Ссылка = Топливо.Ссылка
левое соединение маршрут как Маршрут по Доки.Ссылка = маршрут.Ссылка
Показать


как-то так, извините за неровный почерк
в выходном запросе пропустить астерикс через конструктор и убрать два лишних поля ссылок
25. gybson 29.10.21 09:27 Сейчас в теме
Я бы еще посмотрел в сторону объединения, так как фактически это оно и есть
Оставьте свое сообщение
Вакансии
Программист
Санкт-Петербург
зарплата от 180 000 руб. до 240 000 руб.
Полный день

Разработчик 1С
Москва
зарплата от 150 000 руб. до 250 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Программист 1С
Екатеринбург
зарплата от 130 000 руб. до 170 000 руб.
Полный день

Программист 1C
Санкт-Петербург
зарплата от 140 000 руб. до 200 000 руб.
Полный день