Тип: Дата. Время конца расписания. Регламентные задания могут быть запущены только в том случае, если текущее время меньше или равно времени конца. Если время конца не задано, срок запуска неограничен. В случае, когда ВремяНачала расписания больше ВремяКонца, выполняется переход через сутки, т.е. расписание будет выполняться только тогда, когда текущее время больше ВремяНачала, но меньше ВремяКонца следующего дня. Пример: ВремяНачала ВремяКонца Комментарий 8:00 – Работает с 8:00 до 24:00 – 8:00 Работает с 24:00 до 8:00 13:00 14:00 Работает с 13:00 до 14:00 14:00 13:00 Работает с 14:00 до 13:00 следующего дня, то есть работает всегда, кроме интервала с 13:00 до 14:00
Полное описание, параметры и ограничения
РасписаниеРегламентногоЗадания.ВремяКонца (JobSchedule.EndTime)
РасписаниеРегламентногоЗадания (JobSchedule)
ВремяКонца (EndTime)
Доступен, начиная с версии 8.1.
Использование:
Чтение и запись.
Описание:
Тип: Дата.
Время конца расписания. Регламентные задания могут быть запущены только в том случае, если текущее время меньше или равно времени конца. Если время конца не задано, срок запуска неограничен.
В случае, когда ВремяНачала расписания больше ВремяКонца, выполняется переход через сутки, т.е. расписание будет выполняться только тогда, когда текущее время больше ВремяНачала, но меньше ВремяКонца следующего дня.
Пример:
ВремяНачала ВремяКонца Комментарий
8:00 – Работает с 8:00 до 24:00
– 8:00 Работает с 24:00 до 8:00
13:00 14:00 Работает с 13:00 до 14:00
14:00 13:00 Работает с 14:00 до 13:00 следующего дня, то есть работает всегда, кроме интервала с 13:00 до 14:00
Доступность:
Сервер, толстый клиент, внешнее соединение.
Использование в версии:
Доступен, начиная с версии 8.1.
Методическая информация
Практические примеры
Проверить расписание понедельник–среда–пятница с 09:00 до 17:00
В памяти задаём сентябрьское окно и проверяем несколько явно заданных допустимых и запрещённых моментов.
Где и как запускать
Полный модуль собственной управляемой формы: расчёт на сервере, вывод на клиенте.
Подготовка
Собственная пустая конфигурация УчебнаяКонфигурацияСинтаксиса 8.5.1.1343. Создайте внешнюю обработку с управляемой формой, командой Выполнить и её кнопкой; вставьте полный модуль урока в форму.
ТребуетсяВыполнение доступен серверу, толстому клиенту и внешнему соединению. Поэтому здесь тонкий клиент получает результат отдельной серверной функции.
Расписание создаётся только в памяти. Регламентное задание не создаётся, не записывается и не запускается; действующие расписания базы не читаются и не меняются.
Все даты проверки заданы явно. Вызов без даты зависит от текущего времени и для этих воспроизводимых проверок не используется.
&НаКлиенте
Процедура Выполнить(Команда)
Сообщить(ПроверитьУчебноеРасписание());
КонецПроцедуры
&НаСервереБезКонтекста
Функция ПроверитьУчебноеРасписание()
Отчет = Новый Массив;
Расписание = Новый РасписаниеРегламентногоЗадания;
Расписание.ДатаНачала = Дата(2026, 9, 1);
Расписание.ДатаКонца = Дата(2026, 9, 30);
Расписание.ВремяНачала = Дата(1, 1, 1, 9, 0, 0);
Расписание.ВремяКонца = Дата(1, 1, 1, 17, 0, 0);
Расписание.Месяцы = Новый Массив;
Месяцы = Расписание.Месяцы;
Месяцы.Добавить(9);
Расписание.Месяцы = Месяцы;
Дни = Новый Массив;
Дни.Добавить(1);
Дни.Добавить(3);
Дни.Добавить(5);
Расписание.ДниНедели = Дни;
Отчет.Добавить(Строка(Расписание.ДатаНачала = Дата(2026, 9, 1)));
Отчет.Добавить(Строка(Расписание.ДатаКонца = Дата(2026, 9, 30)));
Отчет.Добавить(Строка(Расписание.ТребуетсяВыполнение(Дата(2026, 9, 14, 9, 0, 0))));
Отчет.Добавить(Строка(Расписание.ТребуетсяВыполнение(Дата(2026, 9, 16, 12, 0, 0))));
Отчет.Добавить(Строка(Расписание.ТребуетсяВыполнение(Дата(2026, 9, 18, 17, 0, 0))));
Отчет.Добавить(Строка(НЕ Расписание.ТребуетсяВыполнение(Дата(2026, 9, 15, 12, 0, 0))));
Отчет.Добавить(Строка(НЕ Расписание.ТребуетсяВыполнение(Дата(2026, 9, 14, 8, 59, 59))));
Отчет.Добавить(Строка(НЕ Расписание.ТребуетсяВыполнение(Дата(2026, 9, 18, 17, 0, 1))));
Отчет.Добавить(Строка(НЕ Расписание.ТребуетсяВыполнение(Дата(2026, 8, 31, 12, 0, 0))));
Возврат СтрСоединить(Отчет, Символы.ПС);
КонецФункцииРазбор по шагам
Номера дней недели: понедельник=1, среда=3, пятница=5. Месяц сентябрь=9; массивы присваиваются обратно свойствам.
ДатаНачала/ДатаКонца ограничивают календарные дни, ВремяНачала/ВремяКонца — время внутри допустимого дня. Время задаём датой с календарной частью 01.01.0001.
Границы времени включены: ровно 09:00 и 17:00 допустимы. 08:59:59 и 17:00:01 недопустимы.
Дата последнего запуска не передана: проверка истории повторов не производится. Это проверка принадлежности расписанию, не резервирование запуска.
Как проверить результат
Девять строк отчёта ожидаются Истина. Для отрицательных случаев используется НЕ.
15 сентября 2026 — вторник, 14 — понедельник, 16 — среда, 18 — пятница.
В базе не появляется новое регламентное или фоновое задание.
Ожидаемый результат
Показаны отдельные календарные и суточные ограничения расписания с тестами точных границ.
На что обратить внимание
Булево Истина не запускает обработку и не гарантирует, что сервер исполнит задание в эту секунду.
Не пользоваться текущей датой для обещанных воспроизводимых результатов.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.
Задать два окна дня и правильно вернуть массив детальных расписаний
Создаём утреннее и дневное окно; отдельная проверка показывает, почему добавление в полученную копию массива не меняет основное расписание.
Где и как запускать
Полный модуль собственной управляемой формы, расчёт на сервере.
Подготовка
Собственная пустая конфигурация УчебнаяКонфигурацияСинтаксиса 8.5.1.1343. Создайте внешнюю обработку с управляемой формой, командой Выполнить и её кнопкой; вставьте полный модуль урока в форму.
ТребуетсяВыполнение доступен серверу, толстому клиенту и внешнему соединению. Поэтому здесь тонкий клиент получает результат отдельной серверной функции.
Расписание создаётся только в памяти. Регламентное задание не создаётся, не записывается и не запускается; действующие расписания базы не читаются и не меняются.
Все даты проверки заданы явно. Вызов без даты зависит от текущего времени и для этих воспроизводимых проверок не используется.
&НаКлиенте
Процедура Выполнить(Команда)
Сообщить(ПроверитьУчебноеРасписание());
КонецПроцедуры
&НаСервереБезКонтекста
Функция ПроверитьУчебноеРасписание()
Отчет = Новый Массив;
Расписание = Новый РасписаниеРегламентногоЗадания;
Расписание.ДатаНачала = Дата(2026, 9, 1);
Расписание.ДатаКонца = Дата(2026, 9, 30);
Утро = Новый РасписаниеРегламентногоЗадания;
Утро.ВремяНачала = Дата(1, 1, 1, 9, 0, 0);
Утро.ВремяКонца = Дата(1, 1, 1, 10, 0, 0);
День = Новый РасписаниеРегламентногоЗадания;
День.ВремяНачала = Дата(1, 1, 1, 14, 0, 0);
День.ВремяКонца = Дата(1, 1, 1, 15, 0, 0);
Детали = Расписание.ДетальныеРасписанияДня;
Детали.Добавить(Утро);
Отчет.Добавить(Строка(Расписание.ДетальныеРасписанияДня.Количество() = 0));
Расписание.ДетальныеРасписанияДня = Детали;
Отчет.Добавить(Строка(Расписание.ДетальныеРасписанияДня.Количество() = 1));
Детали = Расписание.ДетальныеРасписанияДня;
Детали.Добавить(День);
Расписание.ДетальныеРасписанияДня = Детали;
Отчет.Добавить(Строка(Расписание.ДетальныеРасписанияДня.Количество() = 2));
Отчет.Добавить(Строка(Расписание.ТребуетсяВыполнение(Дата(2026, 9, 15, 9, 30, 0))));
Отчет.Добавить(Строка(НЕ Расписание.ТребуетсяВыполнение(Дата(2026, 9, 15, 12, 0, 0))));
Отчет.Добавить(Строка(Расписание.ТребуетсяВыполнение(Дата(2026, 9, 15, 14, 30, 0))));
Отчет.Добавить(Строка(НЕ Расписание.ТребуетсяВыполнение(Дата(2026, 9, 15, 15, 0, 1))));
Возврат СтрСоединить(Отчет, Символы.ПС);
КонецФункцииРазбор по шагам
Основное расписание ограничивает календарные даты. Суточные ограничения задаём только у объектов Утро/День.
ДетальныеРасписанияДня возвращает копию массива. После Детали.Добавить(Утро) свойство ещё содержит ноль элементов; присвоение возвращает изменённый массив.
Для второго добавления опять получаем копию и обязательно присваиваем её обратно.
Детальное расписание может содержать только ВремяНачала, ВремяКонца, ВремяЗавершения, ИнтервалЗавершения, ПериодПовтораВТечениеДня, ПаузаПовтора. Не добавляем туда календарные ограничения.
Основное расписание при наличии деталей не должно содержать перечисленные суточные свойства. Пример соблюдает это разделение.
Как проверить результат
Семь строк ожидаются Истина. В 09:30 и 14:30 расписание подходит, в полдень и после 15:00 — нет.
Уберите обратное присвоение после первого добавления: проверка количества 1 перестанет проходить. Верните строку перед продолжением опыта.
Ожидаемый результат
Показаны два независимых окна дня и реальная семантика возвращаемой копии массива.
На что обратить внимание
Расписание.ДетальныеРасписанияДня.Добавить(...) без обратного присвоения не сохраняет изменение.
Не задавать ВремяНачала основного расписания одновременно с детальными окнами.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.