Действие SetOrgUnitAttributeValueBasedOnState
Действие SetOrgUnitAttributeValueBasedOnState сравнивает значение атрибута, имя которого указано в attributeName, с параметрами конфигурационного списка, определёнными в stateToOrgUnitConfig. При выявлении совпадения, список соответствующего параметра записывается в targetAttributeName.
Параметры действия
Общие для всех действий параметры (в новой вкладке)
Имя параметра | Обязательный | Описание параметра | Значения параметра |
---|---|---|---|
attributeName | да | Определяет имя атрибута, который содержит состояние, используемое для определения перехода по конфигурации. | Имя атрибута Состояние |
stateToOrgUnitConfig | да | Конфигурация выполняемого действия. | Список имён. С каждым именем соотносится список атрибутов. |
targetAttributeName | да | Определяет имя целевого атрибута. В который будут записаны выбранные значения из stateToOrgUnitConfig | Список выбранных имён атрибутов. |
В качестве значений универсального параметра targetTypes в данном действии следует указывать список имён типов объектов с префиксом task_. |
Пример реализации действия
Приведённый ниже пример используется в работе фильтра Актуальные. Действие SetOrgUnitAttributeValueBasedOnState сопоставляет значение, полученное из атрибута Состояние, в конфигурационном списке находит соответствующий ему список значений типа Организационная единица и записывает его в targetAttributeName, за которым следит фильтр.
{
"activity": "SetOrgUnitAttributeValueBasedOnState",
"params": {
"sourceTypes": ["document"],
"targetTypes": ["task_simple", "task_approval", "task_toReviewDocument", "task_toReadDocument"],
"target": "Relations",
"relationType": "TaskAttachments",
"attributeName": "state",
"targetAttributeName": "actualFor",
"stateToOrgUnitConfig": {
"none": [],
"assigned": [ "initiator", "executor", "responsible" ],
"inProgress": [ "initiator", "executor" ],
"onValidation": [ "initiator" ],
"workflowRunning": [ "initiator" ],
"workflowCompleted": [],
"approved": [],
"done": [],
"completed": [],
"revoked": []
}
}
}