Построитель отчета позволяет работать с дополнениями датами, в указанном диапазоне, группировок типа Дата. Для того, чтобы реализовать подобную функциональность, достаточно в тексте запроса для построителя отчета указать информацию о дополнении периодами в предложении языка запроса ИТОГИ ПО. Данная информация будет обработана построителем отчета, и, в случае если пользователь выберет данную группировку для вывода в отчет, построитель отчета добавит дополнение группировки в результирующий запрос, а также выведет в отчет все даты с указанной периодичностью.
Для примера рассмотрим следующую задачу: пусть нам необходимо получить остатки по номенклатуре за месяц в разрезе дней. Причем остатки необходимо вывести вне зависимости от того, были ли в данный день движения по данной номенклатуре.
Запрос, для получения данных будет выглядеть следующим образом:
ВЫБРАТЬ
УчетНоменклатурыОстаткиИОбороты.Номенклатура КАК Номенклатура,
УчетНоменклатурыОстаткиИОбороты.Период КАК Период,
УчетНоменклатурыОстаткиИОбороты.КоличествоНачальныйОстаток КАК КоличествоНачальныйОстаток
ИЗ
РегистрНакопления.УчетНоменклатуры.ОстаткиИОбороты(, , День, ДвиженияИГраницыПериода, ) КАК УчетНоменклатурыОстаткиИОбороты
ИТОГИ
СУММА(КоличествоНачальныйОстаток)
ПО
Период ПЕРИОДАМИ(ДЕНЬ, , ),
Номенклатура
Если данный запрос установить в качестве текста запроса построителю отчета, то в отчет будут выведены остатки за все дни, в интервале, который присутствует в регистре. Если пользователь установит интервал отчета, при помощи полей "НачалоПериода" и "КонецПериода", то в отчет будут выведены все даты в данном периоде, включая те даты, на которые не было движений.
Заметим, что все даты будут выводиться только в случае, если дополняемая группировка находится на первом уровне в группируемых строках или колонках. В случае, если дополняемая группировка будет являться вложенной для некой группировки, в отчет попадут только те записи, по которым в регистре присутствовали движения.