Справочник "Периодичности" (КУС)

Материал из КинтВики
Версия от 11:31, 30 октября 2017; Иван Крючков (обсуждение | вклад) (Примеры шаблонов:)
Перейти к: навигация, поиск

Справочник предназначен для задания периодичностей различного характера.

Используется для настройки и выбора периодичности оказания услуг (назначения процедур).

Поддерживается два типа (категории) периодичностей:

  • По указанным дням недели — «Понедельник и Четверг», «Суббота и Воскресенье» и т. д.
  • По заданному шаблону — «Каждый день», «Через день», «Через два дня на третий» и т. п.


Настройка «По дням недели»

Позволяет определять наличие или отсутствие событий в конкретные дни недели.

Дни недели отмечаются в списке выбора дней.

Если не отмечен ни один день недели, то для такой периодичности система предложит ввести дни недели в месте ее использования.


Настройка «По шаблону»

Периодичность событий задается в виде текстового шаблона. Для ее использования в контексте вызова должен быть задан стартовый отсчет (например, начальная дата).

В скобках шаблона чередуются диапазоны, в которые происходит или не происходит событие.

Знак шаблона перед скобкой определяет начальный диапазон. Если положителен — событие есть, если отрицателен — отсутствует.

Тип скобок определяет, является ли периодичность конечной (ограниченной) или бесконечной (неограниченной).

Квадратные скобки [ ] — ограниченная, круглые () — неограниченная.

Примеры шаблонов:

  • 1 — выполнить один раз (используется для выполнения генеральной уборки после выселения гостя)
  • (1) — каждый раз (всегда): 1111…
  • (1,1) — бесконечное чередование событий через одно: 1010…
  • -(1,1) — один раз через раз со второго (всегда): 010101…
  • -(3,1) — один раз через 3 дня с четвертого (всегда): 00010001…
  • (1,2) — чередование событий через два: 100100…
  • -(1,2) — чередование двух событий через одно, начиная с пропуска: 011011…
  • [1,2,1] — ограниченный шаблон. Всего два отсчета: 1001
  • 2,1,2 или [2,1,2] — два раза, пропуск, еще два раза и все: 11011

Составные шаблоны:

  • [2,2],(1) — два раза, два пропуска, потом каждый раз (всегда): 11001111…
  • [2,1],[2,2], (1,1) — два раза, пропуск, два раза, два пропуска, через раз (всегда): 1101100101010…
  • [0,4],(1,6) — четыре пропуска, потом на каждый 7 раз: 0000100000010000001…
  • [2,0],(1,1) — два раза, потом через раз: 11101010…
  • -[2,2],(1,1) — два пропуска, два раза, через раз со второго: 0011101010…
  • 2*[1,2] = [1,2],[1,2] = [1,2,1,2] — один раз, два пропуска, один раз, два пропуска и все: 100100
  • 2*[1,2],(1) — один раз, два пропуска, один раз, два пропуска, потом каждый раз: 1001001111…