Добрый день! Не могу понять, что делаю не так. Есть запрос из задачника:
Пользуясь рекомендацией 1С не создавать вложенные запросы, а использовать вместо них временные таблицы, решение задачи сделал с её помощью
Результат запроса в первом случае как на скрине
В моём случае всё то же самое, но пропадает склад "В магазине", а появляется только в случае замены Левого соединения на Полное, хотя по логике вещей должно работать как и в первом случае. Подскажите, пожалуйста, с временными таблицами какие-то отличия в соединениях или что-то не так сделал?
ВЫБРАТЬ
Склады.Ссылка КАК Ссылка,
ДанныеОПродажах.Количество КАК Количество,
ДанныеОПродажах.Сумма КАК Сумма
ИЗ
Справочник.Склады КАК Склады
ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
ПродажаТовара.Склад КАК Склад,
СУММА(ПродажаТовараТовары.Количество) КАК Количество,
СУММА(ПродажаТовараТовары.Сумма) КАК Сумма
ИЗ
Документ.ПродажаТовара.Товары КАК ПродажаТовараТовары
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПродажаТовара КАК ПродажаТовара
ПО ПродажаТовараТовары.Ссылка = ПродажаТовара.Ссылка
ГДЕ
ПродажаТовара.Проведен
СГРУППИРОВАТЬ ПО
ПродажаТовара.Склад) КАК ДанныеОПродажах
ПО (Склады.Ссылка = ДанныеОПродажах.Склад)
СГРУППИРОВАТЬ ПО
Склады.Ссылка,
ДанныеОПродажах.Количество,
ДанныеОПродажах.Сумма
ПоказатьПользуясь рекомендацией 1С не создавать вложенные запросы, а использовать вместо них временные таблицы, решение задачи сделал с её помощью
ВЫБРАТЬ
СУММА(ПродажаТовараТовары.Сумма) КАК Сумма,
СУММА(ПродажаТовараТовары.Количество) КАК Количество,
ПродажаТовара.Склад КАК Склад
ПОМЕСТИТЬ ВТ_1
ИЗ
Документ.ПродажаТовара.Товары КАК ПродажаТовараТовары
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПродажаТовара КАК ПродажаТовара
ПО (ПродажаТовараТовары.Ссылка = ПродажаТовара.Ссылка)
ГДЕ
ПродажаТовара.Проведен
СГРУППИРОВАТЬ ПО
ПродажаТовара.Склад
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ
ВТ_1.Сумма КАК Сумма,
ВТ_1.Количество КАК Количество,
Склады.Ссылка КАК Ссылка
ИЗ
ВТ_1 КАК ВТ_1
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Склады КАК Склады
ПО (ВТ_1.Склад = Склады.Ссылка)
ПоказатьРезультат запроса в первом случае как на скрине
В моём случае всё то же самое, но пропадает склад "В магазине", а появляется только в случае замены Левого соединения на Полное, хотя по логике вещей должно работать как и в первом случае. Подскажите, пожалуйста, с временными таблицами какие-то отличия в соединениях или что-то не так сделал?
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(5)
Да, так и переделал в итоге, спасибо, но поменял местами руками в связях таблицу в конструкторе запроса. Так и должно быть или при выборе как-то они могут встать автоматически, если к примеру в выборку добавил сначала справочник, а потом ВТ?
ВЫБРАТЬ
ВТ_1.Сумма КАК Сумма,
ВТ_1.Количество КАК Количество,
Склады.Ссылка КАК Ссылка
ИЗ
Справочник.Склады КАК Склады
ЛЕВОЕ СОЕДИНЕНИЕ ВТ_1 КАК ВТ_1
ПО (Склады.Ссылка = ВТ_1.Склад)
ВТ_1.Сумма КАК Сумма,
ВТ_1.Количество КАК Количество,
Склады.Ссылка КАК Ссылка
ИЗ
Справочник.Склады КАК Склады
ЛЕВОЕ СОЕДИНЕНИЕ ВТ_1 КАК ВТ_1
ПО (Склады.Ссылка = ВТ_1.Склад)
Да, так и переделал в итоге, спасибо, но поменял местами руками в связях таблицу в конструкторе запроса. Так и должно быть или при выборе как-то они могут встать автоматически, если к примеру в выборку добавил сначала справочник, а потом ВТ?
(6) Связи могут вставать автоматически, и обычно встают так: слева - присоединяемая таблица, справа - основная. Логика в этом есть.
Но это дело привычки. Лично я привык наоборот: основная - слева, присоединяемая - справа.
Это ни на что не влиет. Главное - это как указаны сами таблицы в секции ИЗ ... ЛЕВОЕ СОЕДИНЕНИЕ.
Но это дело привычки. Лично я привык наоборот: основная - слева, присоединяемая - справа.
Это ни на что не влиет. Главное - это как указаны сами таблицы в секции ИЗ ... ЛЕВОЕ СОЕДИНЕНИЕ.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот