logo

Ограничение диапазона выбора даты и времени для переменной типа "Дата/Время"

Пусть в процессе имеется контекстная переменная Дата типа Дата/Время, и согласно логике бизнес-процесса необходимо ограничить диапазон выбора даты и времени. Ниже приведен пример сценария, в котором устанавливаются такие настройки для переменной Дата, при применении которых пользователь может выбрать дату только из диапазона в 5 дней, начиная от текущего момента. Сценарий для настройки ограничения диапазона выбора времени может быть создан аналогичным образом. Ограничение по времени устанавливается в соответствии с настройками часовых поясов. Подробнее о настройке часовых поясов см. в справке по системе.

Следует отметить, что в том случае, если нижняя граница времени (MinTimeValue) превышает верхнюю границу (MaxTimeValue), время будет ограничено только нижней границей (MinTimeValue).

Для того чтобы данные настройки вступили в силу, необходимо указать этот сценарий как сценарий при загрузке формы задачи. Сделать это можно в окне настроек задачи на вкладке Контекст. Подробнее о сценариях при загрузке формы Вы можете прочитать в справке по системе.

Пространства имен:

using EleWise.ELMA.Model.Types.Settings;

Текст сценария:

//получим настройки для свойства (контекстной переменной Data) типа "Дата/время"
var settingz = (DateTimeSettings)context.GetSettingsFor(c => c.Data);
//укажем минимальное значение диапазона для выбора
settingz.MinDateValue = DateTime.Now;
//укажем максимальное значение диапазона для выбора
settingz.MaxDateValue = DateTime.Now.AddDays(5);
//сохраним настройки
settingz.Save(); 

В результате на форме задачи при выборе значения доступными будут только значения из ограниченного с помощью сценария диапазона.

Рис. 1. Ограничение диапазона выбора даты