.. _time_configuration_define_a_schedule: ================================================================================================ Определить расписание ================================================================================================ Настройте расписание с помощью других расписаний и записей в расписаниях. **Требования** Требуется роль: ADMIN **Задача** - Расписания сохраняются в объекте **Расписание** [schedule]. - Записи расписания указывают периоды времени, которые включены в расписание. Записи расписания сохраняются в объекте **Запись расписания** [schedule_entries]. **Процедура** 1. В меню приложений перейдите к **Расписания** -> **Расписание** 2. Нажмите **Создать**, введите уникальное **Имя**, **Часовой пояс** и **Описание**. 3. Сохраните не закрывая форму. 4. Настройте одну или несколько записей расписания. 5. Добавьте по необходимости связь расписания с дочерними расписаниями. **Поля формы расписания** ======================================== ======================================== Свойство Описание ======================================== ======================================== Имя Уникальное имя для расписания. Часовой пояс Часовой пояс для расписания. Влияет на работу внутренних процессов зависящих от часового пояса. Описание Описание для расписания. ======================================== ======================================== **Поля формы запись расписания** ======================================== ======================================== Свойство Описание ======================================== ======================================== Имя Уникальное имя для записи расписания. Дата и время начала Начальная точка записи расписания. В зависимости от выбранного **Повторения**, будет учитываться только дата или дата и время. Например для повторения **Ежедневно**, будет учитываться и дата и время. Дата и время окончания Конечная точка записи расписания. В некоторых случаях может не учитываться. Например если заполнено значение **Весь день**. Обычно используется для описания времени, а не даты. Так например для повторения **Ежедневно**, дата не учитывается. Для ограничения длительности используйте поле **Повторять до**. Весь день Если запись расписания относится к полным 24-часовым суткам, установите флажок на **Весь день**. Повторения Тип повторения. В зависимости от выбранного типа повторений появятся другие поля в которые дополнительно описываются интервалы повторений. Интервал повторения Частота повторения — еженедельно, ежемесячно или ежегодно. Это поле отображается только в том случае, если поле «Повторения» имеет значение «Ежедневно», «Еженедельно», «Ежемесячно» или «Ежегодно». Повторять до Ограничение на длительность работы расписания. Дни недели Дни недели, в которые повторяется еженедельное расписание. Это поле отображается только в том случае, если в поле «Повторения» указано значение **Еженедельно**. Тип ежемесячного повторения Поле отображается, если в поле «Повторения» указано значение **Ежемесячно**. Поля позволяет настроить такие типы повторений, как: **День месяца**, **День недели и номер недели**, **Последний день месяца** и **День недели и последняя неделя месяца**. Тип ежегодного повторения Поле отображается, если в поле «Повторения» указано значение **Ежегодно**. Поля позволяет настроить такие типы повторений, как: **День в году** и **Расширенный**. Номер недели Поле отображается, если в поле «Повторения» указано значение **Ежегодно**. Позволяет задать номер недели в выбранном месяце. Работает совместно с полями **День недели** и **Месяц**. День недели Поле отображается, если в поле «Повторения» указано значение **Ежегодно**. Позволяет задать день недели (понедельник или вторник и т.д.). Работает совместно с полями **Номер недели** и **Месяц**. Месяц Поле отображается, если в поле «Повторения» указано значение **Ежегодно**. Позволяет задать месяц. Работает совместно с полями **Номер недели** и **День недели**. ======================================== ======================================== .. _time_configuration_define_a_schedule_algorithm: **Последовательность обработки расписаний** При конфигурации расписаний учитывайте следующую последовательность обработки записей и связей расписаний: 1. Чтение связанных расписаний для определения попадает ли в исключение из расписания запрашиваемая дата. 2. Чтение каждой записи расписания начинается с определения исключения. Так например, если запрашиваемая дата и время больше даты в **Повторять до** или если задано повторение **Ежедневное**, а время начала и конца не пересекаются с запрашиваемой датой, то возвращается исключение, как не попадающее в расписание. 3. После проверки всех исключений, проверяется на включение в запись расписания. Для каждого **Повторения** применяется свой расчет, где так же учитываются **Интервалы повторений**. 4. Если запрашиваемая дата не попала в исключения и во включения, то она считается не включенной в расписание. Так например, для расписания **Working Days in Russia In 2024**, запрашиваемая дата рабочего дня, но не рабочего времени (до 8:00 и после 17:00), не попадает в исключения и включения.