Назначение задачи на группу, выбранную на форме
Назначение пользователей на задачу в Comindware Business Application Platform может осуществляться по-разному: выбранным значением, атрибутом с типом данных «Пользователь», и т.д. Исполнителя можно назначать как на схеме процесса, так и выбором на форме предыдущих задач. Также можно реализовать выбор целой группы пользователей, которые будут видеть назначенную задачу и смогут взять её в работу (только первый, взявший в работу).
Сценарий: предположим, что у нас есть процесс работы диспетчерской службы. На одного диспетчера приходят входящие заявки, и он решает, какая группа должна дальше обрабатывать заявку. Для такого кейса нам нужно, чтобы диспетчер на форме мог выбирать из ссылочного поля группу, на которую будет назначаться задача.
Описание:
- Имеется основной шаблон записи «Заявки», связанный с текущим процессом.
- Созданы нужные группы в глобальных настройках.
Настройка:
1. Создайте новый шаблон записи «Группы» с текстовыми атрибутами «Имя» и «Системное имя». Атрибут «Имя» сделайте отображаемым.
2. Создайте записи в шаблоне записи «Группы», где в имени укажите то, которое хотите, чтобы отображалось. Системное же имя скопировать с названия групп в глобальных настройках.
3. В шаблоне записи «Заявки» создайте атрибут с типом данных «Ссылка» на шаблон записи «Группы». Этот атрибут вынесите на форму диспетчера для выбора группы для назначения на неё определенных задач в процессе.
4. В шаблоне записи «Заявки» создайте вычисляемый атрибут с типом данных «Пользователь» — «Исполнители». Вставьте следующее выражение выражение вида N3 :
@prefix object: <http://comindware.com/ontology/object#>. @prefix account: <http://comindware.com/ontology/account#>. @prefix cmw: <http://comindware.com/logics#>. { ("Groups" "SystemName") object:findProperty ?systemNameProperty. ("F_Zayavka" "Gruppa") object:findProperty ?gruppaProperty.
?item ?gruppaProperty ?gruppa. ?gruppa ?systemNameProperty ?systemName. ?gruppa1 account:groupName ?systemName. ?gruppa1 account:groupUsers ?value. } |
где:
Groups — системное имя шаблона записи «Группы»;
SystemName — системное имя атрибута «Системное имя» в шаблоне записи «Группы»;
F_Zayavka — системное имя шаблона записи «Заявки»;
Gruppa — системное имя атрибута с типом данных «Ссылка» на шаблон записи «Группы».
5. Вставьте этот атрибут в поле «Исполнители» в настройках нужных задач в процессе.