Описание одного окна времени состоит из списка временных интервалов (максимум десять) и списка "праздничных" дней на один год.
Описание временного интервала включает время начала действия интервала (часы и минуты), время окончания действия интервала (часы и минуты) и признаки активности интервала в каждый из дней недели, а также в "праздник".
Список праздничных дней позволяет "переопределить" день недели для любого дня на 1 год вперед, либо объявить любой день праздничным. Если в списке праздничных дней день не переопределен ("обычный день"), то день недели соответствует календарному. Если же день переопределен, то календарь игнорируется, и прибор считает этот день таким, каким он задан в списке праздничных дней. Причем, переопределенное значение дня недели может принимать значения: 1 ("понедельник"), 2 ("вторник"), - 7 ("воскресенье"), 8 ("восьмой день графика"), - 14 ("четырнадцатый день графика"), "праздник". Значение "праздник" введено только для облегчения восприятия списка и, по сути, ничем не отличается от других значений (1 - 14), поэтому его можно назвать "пятнадцатый день графика".
Таким образом, список праздничных дней позволяет:
объявить любой день "праздником" (днем, в который активны временные интервалы, отличные от интервалов, заданных для других дней недели)"
осуществить перенос рабочих дней (например, день, который согласно календарю является субботой, переопределить на понедельник)"
программировать сложные "скользящие" графики доступа, период повторения которых отличается от 7 дней в большую или меньшую сторону"
программировать сложные графики доступа, которые вообще не имеют явно выраженного периода повторения.Из всего возможного многообразия можно выделить два типовых способа заполнения списка праздничных дней.
Если график доступа (график работы) сотрудников привязан к календарной неделе (например, с понедельника по пятницу это рабочие дни, а суббота и воскресенье - выходные), то большинство дней в списке не переопределяются ("обычный день" - день недели соответствует календарю). Только отдельные дни в списке либо помечаются как "праздник", либо переопределяются (в случае переноса рабочих дней), либо переопределяются на значения больше чем 7 (если в эти дни должны действовать специальные временные интервалы доступа).
Сложные и "скользящие" графики доступа (графики работы), не привязанные к календарной неделе. В этом случае для всех дней списка "день недели" задается явным образом (переопределяется) и в списке не остается "обычных" дней (для которых день недели определяется по календарю).