Для отчётного дня 15 сентября получаем сначала весь месяц, затем интервал от начала года до конца этого дня.
Где и как запускать
Полный модуль управляемой формы собственной обработки, только толстый клиент.
Подготовка
Собственная учебная база 8.5.1.1343, толстый клиент Windows. Создайте внешнюю обработку с управляемой формой, командой Выполнить и её кнопкой; вставьте весь модуль выбранного урока в форму.
НастройкаПериода доступна толстому клиенту, не тонкому/веб-клиенту и не серверу. Урок не подключается к спискам документов и не меняет их отбор.
Для урока с Редактировать нужен режим конфигурации, допускающий модальные вызовы. Не включайте его в рабочей конфигурации ради примера: выберите собственный учебный стенд с подходящим режимом.
Фиксированные даты относятся к сентябрю 2026 года. В уроке со смещениями рабочая дата только читается, не изменяется.
&НаКлиенте
Процедура Выполнить(Команда)
Период = Новый НастройкаПериода;
Период.ВариантНастройки = ВариантНастройкиПериода.Период;
Период.ЗначениеПериода = Дата(2026, 9, 15, 12, 30, 0);
Период.ВариантПериода = ВариантПериода.Месяц;
Сообщить(Период.ВариантНастройки = ВариантНастройкиПериода.Период);
Сообщить(Период.ВариантПериода = ВариантПериода.Месяц);
Сообщить(Период.ЗначениеПериода = Дата(2026, 9, 15, 12, 30, 0));
Сообщить(Период.ПолучитьДатуНачала() = Дата(2026, 9, 1));
Сообщить(Период.ПолучитьДатуОкончания() = Дата(2026, 9, 30, 23, 59, 59));
Период.ВариантПериода = ВариантПериода.ДеньСНачалаГода;
Сообщить(Период.ПолучитьДатуНачала() = Дата(2026, 1, 1));
Сообщить(Период.ПолучитьДатуОкончания() = Дата(2026, 9, 15, 23, 59, 59));
КонецПроцедурыРазбор по шагам
ЗначениеПериода задаёт опорную дату, а ВариантПериода — способ получения границ. Месяц не равен 30 суток от 15 сентября.
ПолучитьДатуНачала/Окончания вычисляют календарные границы сентября с нулевым временем начала и последней секундой окончания.
ДеньСНачалаГода заканчивается выбранным днём, а не концом сентября и не сегодняшним днём компьютера.
Свойство ВариантНастройки выбирает режим Период; оно не означает автоматическое применение отбора к отчёту.
Как проверить результат
Семь сообщений ожидаются Истина; два последних соответствуют 01.01.2026 и 15.09.2026 23:59:59.
Измените опорную дату на 15 февраля: месячный конец в 2026 году будет 28 февраля.
Ожидаемый результат
На одной опорной дате показаны два разных календарных правила периода.
На что обратить внимание
Не смешивать ВариантПериода.Месяц с границей ВариантГраницыИнтервала.Месяц: это разные перечисления и режимы.
Полученная дата окончания включительная; в запросах согласуйте >=/<= либо отдельную исключительную верхнюю границу.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.