Добрый день, я только учусь 1С, поэтому могу чего-то не знать
Суть в чем, есть таблица значений с одним столбцом "Дата". В этом столбце выводиться значения, например:
01.01.2022
05.01.2022
09.01.2022
13.01.2022
И надо через запрос прогнать эту таблицу значений и вывести результат в два столбца в виде периодов между датами, например получить должны:
01.01.2022 | 04.01.2022
05.01.2022 | 08.01.2022
09.01.2022 | 12.01.2022
13.01.2022 |
В первом столбце по сути ничего не меняется, а вот во второй уже меняется на -1 день и начинается со второго значения
Пробовал создавать 2 пакета запросов и связывать левым соединением, но не достиг желаемого результата, значения дублируются
Может у кого мысли какие есть? Логикой можете подсказать)
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ВТ.ДатаНачала КАК ДатаНачала,
ДОБАВИТЬКДАТЕ(ВТ.ДатаНачала, ДЕНЬ, -1) КАК ДатаОкончания
ПОМЕСТИТЬ Вт2
ИЗ
ВТ КАК ВТ
СГРУППИРОВАТЬ ПО
ВТ.ДатаНачала,
ДОБАВИТЬКДАТЕ(ВТ.ДатаНачала, ДЕНЬ, -1)
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ВТ.ДатаНачала КАК ДатаНачала,
МИНИМУМ(Вт2.ДатаОкончания) КАК ДатаОкончания
ИЗ
ВТ КАК ВТ
ЛЕВОЕ СОЕДИНЕНИЕ Вт2 КАК Вт2
ПО ВТ.ДатаНачала < Вт2.ДатаОкончания
Всем спасибо, у меня получился желаемый результат. Всего то надо было сгруппировать по "МИНИМУМ"
Спасибо за код:)
Но я своим справился, за подсказки МЕГА благодарность ;)
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший