Типы условий¶
В системе есть возможность создать карточку типа условия с указанием типа карточки для редактора условия и скриптом, который реализует проверку данного условия.
Создать карточку можно из правого меню: Создать карточку → Настройки → Тип условия. После создания карточку можно найти на рабочем месте Администратор в представлении Справочники → Типы условий.
Эти типы условий могут быть использованы в следующих местах:
-
Правила доступа.
-
Настройки правил уведомлений пользователя.
-
Виртуальные файлы (см. Виртуальные файлы).
-
Действие Условие в конструкторе бизнес-процессов.
Карточка типа условия содержит следующие поля:
-
Имя - имя условия, которое будет отображаться пользователю при выборе типа условия.
-
Тип карточки настроек - тип карточки, настройки которой будут использованы для создания редактора условия с данным типом. Если не задано, то у условий данного типа не будет редактора (аналогично выбору типа “Без редактора”).
-
Кнопка Исправить условия данного типа - выполняет исправление условий данного типа во всех карточках.
-
Кнопка Исправить условия всех типов - выполняет исправление условий всех типов во всех карточках.
-
Места использования условия - определяет список допустимых мест, где данный тип условия может быть использован.
-
Описание - описание этого типа условия. Здесь указывается комментарий, поясняющий зачем оно нужно, где применяется, возможно, логика использования и настройки. В общем, любая информация, которая упростит вам и вашим коллегам работу с данным типом условия.
-
Текстовое представление условия - Данное поле обозначает текст условия с данным типом, который будет отображаться пользователю в описании правила. Поле поддерживает использование плейсхолдеров.
Например:
Тип документа: <_row>{t:CollectionSectionName.TypeName separate by (, )}; </_row>
- в качестве описания условия будет текст, содержащий список значений из поляTypeName
строк секцииCollectionSectionName
, разделенных через запятую. -
Условие - скрипт условия, которое будет выполнятся при проверке условия с данным типом. Должен вернуть значение типа
bool
.
Заполнение таблицы с условиями¶
Таблица с условиями выглядит следующим образом:
Условия, указанные в одной таблице, проверяются с логическим оператором “И”. Т.е. для выполнения проверяемого действия, к которому относится настраиваемая таблица, все условия должны быть выполнены. Проверка условий производится сверху вниз.
В каждом условии данной таблицы есть следующие настройки:
-
Тип условия - определяет тип условия. На основе данного поля в настройках условия формируются другие поля.
-
Инвертировать условие - определяет, нужно ли инвертировать результат проверки данного условия.
Например, если условие “По контрагенту” проверяет, что в карточке указан контрагент, который входит в список контрагентов из настроек условия, то при наличии флага Инвертировать условие оно будет проверять, что контрагент из карточки не будет входить в список контрагентов из настроек условия.
После завершения редактирования условия, на основе типа условия и его настроек формируется описание условия, которое отображается в таблице с условиями.
Исправление условий¶
В ситуации, если в существующий тип условия была добавлена новая секция или изменена существующая, чтобы во всех условиях, использующих данный тип условия, данная секция корректно появилась в настройках, можно воспользоваться кнопками исправления условий.
В карточке типа условия для этого есть 2 кнопки:
-
Исправить условия данного типа - производит запуск исправления условий соответствующего типа. Система пройдется по всем объектам, содержащим условия данного типа (правила доступа, шаблоны бизнес-процессов, виртуальные файлы и т.д.) и выполнит исправление условий данного типа, сохраняя изменения в базе в случае их наличия.
-
Исправить условия всех типов - производит запуск исправления всех условий. Система пройдется по всем объектам, содержащим условия (правила доступа, шаблоны бизнес-процессов, виртуальные файлы и т.д.) и выполнит исправление всех условий, сохраняя изменения в базе в случае их наличия
Note
Т.к. количество карточек, содержащих условия, может быть велико, рекомендуется проводить данные операции только при действительной необходимости исправления условий и в нерабочее время.
Note
Для исправления условий, помимо использования кнопок Исправить условия данного типа и Исправить условия всех типов, можно использовать команду tadmin RepairConditionTypes
(см. Команды для прочих административных функций).