Вывод в реквизите запроса даты из табличной части документа

1. user1984314 10.07.24 12:50 Сейчас в теме
Здравствуйте, коллеги!

Появилась нетривиальная задача следующего содержания:

В документе есть табличная часть "ЖурналСобытий" с реквизитами "Дата", "Событие".
Необходимо написать такой запрос для динамического списка, чтобы в одном из реквизитов этого запроса с псевдонимом "Дата подписания договора" высвечивалась дата из реквизита "Дата" табличной части при условии, что значение реквизита "Событие" = "ДоговорПодписан". Если же строки подходящей под это условие нет, реквизит с псевдонимом "Дата подписания договора" остается пустым.

Буду очень благодарен за помощь в этом деле.
По теме из базы знаний
Найденные решения
5. user1984314 10.07.24 14:24 Сейчас в теме
(4) Получилось!
Вот мой рецепт:
1. Создание временную таблицу для каждой даты с уникальным условием;
2. Соединяем временные таблицы с основной выборкой левым соединением (Документ - ВТ);
3. Выбираем реквизиты из временных таблиц и задаем им псевдонимы.

Спасибо всем, кто принял участие и отправлял свои варианты, которые навели меня на эту схему!
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Zevzm 10.07.24 13:14 Сейчас в теме
Что в ней нетривиального? ТЧ это отдельная таблица. Левое соединение по ссылке и с условием на событие. Главное, чтобы оно было одно, иначе сначала выбрать по одному наиболее позднему событию.
3. user1984314 10.07.24 13:40 Сейчас в теме
(2) Здравствуйте! Не очень понятно, как при левом соединении выводить все документы. Дело в том, что нужно заполнять несуществующий реквизит данными из строки табличной части. Я пытался в качестве реквизита прописать следующее:

ВЫБРАТЬ ПЕРВЫЕ 1
	ЖурналСобытий.Дата 
ИЗ
	Документ.смт_Проект.ЖурналСобытий КАК ЖурналСобытий
ГДЕ
	ЖурналСобытий.Событие = "Погрузка"


Но некорректно
4. hobbit94 10.07.24 14:07 Сейчас в теме
Что-то такое
ВЫБРАТЬ
	смт_Проект.Ссылка
ПОМЕСТИТЬ ВТ_Проекты
ИЗ 
	Документ.смт_Проект КАК смт_Проект
;
ВЫБРАТЬ ПЕРВЫЕ 1
    ЖурналСобытий.Дата КАК Дата,
	ЖурналСобытий.Ссылка КАК Ссылка
ПОМЕСТИТЬ ВТ_ЖурналСобытий	
ИЗ
    Документ.смт_Проект.ЖурналСобытий КАК ЖурналСобытий
ГДЕ
    ЖурналСобытий.Событие = "ДоговорПодписан"
;
ВЫБРАТЬ
	ВТ_Проекты.Ссылка,
	ЖурналСобытий.Дата
ИЗ
	ВТ_Проекты КАК ВТ_Проекты
		ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ЖурналСобытий КАК ЖурналСобытий
		ПО ЖурналСобытий.Ссылка = ВТ_Проекты.Ссылка
Показать
5. user1984314 10.07.24 14:24 Сейчас в теме
(4) Получилось!
Вот мой рецепт:
1. Создание временную таблицу для каждой даты с уникальным условием;
2. Соединяем временные таблицы с основной выборкой левым соединением (Документ - ВТ);
3. Выбираем реквизиты из временных таблиц и задаем им псевдонимы.

Спасибо всем, кто принял участие и отправлял свои варианты, которые навели меня на эту схему!
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот