Назначение задачи на группу исполнителей, выбранную на форме. Пример настройки


Введение

При проектировании бизнес-процессов можно назначить исполнителями пользовательской задачи аккаунты и (или) роли:

Однако на этапе проектирования бизнес-процесса нет возможности назначить исполнителем задачи конкретную группу без использования формул или языка N3.

Кроме того, в некоторых случаях необходимо дать возможность бизнес-пользователю выбрать группу, на которую будут назначены задачи, не предоставляя ему доступ к ролевой модели приложения.

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

Прикладная задача

Настройка выбора группы исполнителей с помощью селектора на форме

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

Так как в Comindware Business Application Platform не предусмотрен атрибут типа «Группа», по значению которого можно было бы назначить исполнителей пользовательской задачи, мы настроим приложение следующим образом:

  • Создадим вспомогательный шаблон «Справочник групп» и скопируем в него названия имеющихся групп.
  • Создадим атрибут «Группа исполнителей» типа «Запись», ссылающийся на Справочник групп.
  • Создадим вычисляемый атрибут «Исполнители задачи» и укажем его в качестве исполнителей в свойствах задачи.
  • Когда пользователь выберет на форме Группу исполнителей из Справочника групп, значение атрибута «Исполнители задачи» будет заполнено ID аккаунтов исполнителей, входящих в группу с таким же названием, как у выбранной Группы исполнителей.
  1. Создайте группы на странице «Администрирование» — «Администрирование аккаунтов» — «Группы» и добавьте в них аккаунты.
  2. Создайте шаблон записи «Справочник групп».
  3. Создайте атрибут «Название группы» типа «Текст» и установите у него флажок «Использовать как заголовок записей».
  4. Создайте несколько записей и в поле «Название группы» введите названия групп, указанные на странице «Группы», с точностью до прописных и строчных букв.
  5. В шаблоне записи «Заявка» создайте следующие атрибуты:
    Название Тип данных Свойства
    Группа исполнителей Запись Связанный шаблон: Справочник групп
    Исполнители задачи Аккаунт

    Хранить несколько значений: флажок установлен

    Вычислять автоматически: флажок установлен

    Вычисляемое выражение: N3

  6. В поле «Вычисляемое выражение» атрибута «Исполнители задачи» вставьте следующее выражение на N3:
    # Импортируем функции для работы с записями, аккаунтами и базой данных
    @prefix
    object: <http://comindware.com/ontology/object#>.
    @prefix account: <http://comindware.com/ontology/account#>.
    @prefix cmw: <http://comindware.com/logics#>.
    {
    # Находим атрибут Nazvaniegruppy (Название группы) в шаблоне Spravochnikgrupp (Справочник групп)
    # и помещаем его в переменную nazvaniegruppyAttribute

    ("Spravochnikgrupp" "Nazvaniegruppy") object:findProperty ?nazvaniegruppyAttribute.

    # Находим атрибут Zayavka (Заявка) в шаблоне Gruppaispolniteley (Группа исполнителей)
    # и помещаем его в переменную gruppaispolniteleyAttribute
    ("Zayavka" "Gruppaispolniteley") object:findProperty ?gruppaispolniteleyAttribute.

    # Помещаем значение атрибута Gruppaispolniteley, то есть группу,
    # выбранную в текущей заявке item,
    # в переменную gruppaispolniteleyValue,

    ?item ?gruppaispolniteleyAttribute ?gruppaispolniteleyValue.

    # Находим название выбранной группы шаблоне Spravochnikgrupp,
    # то есть значение атрибута Nazvaniegruppy,
    # и помещаем его в переменную nazvaniegruppy

    ?gruppaispolniteleyValue ?nazvaniegruppyAttribute ?nazvaniegruppy.

    # Находим группу по названию из переменной nazvaniegruppy
    # и помещаем группу в переменную gruppaispolniteley

    ?gruppaispolniteley account:groupName ?nazvaniegruppy.

    # Находим все аккаунты в группе из переменной gruppaispolniteley
    # и помещаем их в переменную value,
    # то есть заполняем значение атрибута «Исполнители задачи»

    ?gruppaispolniteley account:groupUsers ?value.
    }
  7. Создайте процесс «Оформление заявок» и добавьте на диаграмму пользовательскую задачу «Обработать заявку».
  8. На стартовую форму процесса добавьте атрибуты «Группа исполнителей» и «Исполнители задачи» шаблона записи «Заявка».
  9. В свойствах пользовательской задачи «Обработать заявку» выберите в поле «Исполнители» атрибут «Исполнители задачи».
  10. Опубликуйте диаграмму процесса «Оформление заявок».

    Диаграмма процесса «Оформление заявок»

    Диаграмма процесса «Оформление заявок»

Тестирование

  1. Создайте экземпляр процесса «Оформление заявок».
  2. На стартовой форме выберите группу из раскрывающегося списка  «Группа исполнителей».
  3. В поле «Исполнители задачи» отобразятся аккаунты, которые входят в выбранную группу.
  4. Нажмите кнопку «Создать».
  5. Задача «Обработать заявку» отобразится только у аккаунтов, которые входят в выбранную группу. У других аккаунтов задача отображаться не будет.

Связанные статьи

Группы. Создание, настройка, выбор участников, синхронизация с AD, удаление

Пользовательская задача 

Атрибут типа «Аккаунт» 

Атрибут типа «Роль» 

Страница «Администрирование». Использование 



Номер Статьи: 2619
Размещено: Thu, Jul 4, 2024
Последнее обновление: Thu, Aug 1, 2024

Online URL: https://kb.comindware.ru/article/naznachenie-zadachi-na-gruppu-ispolnitelej-vybrannuyu-na-forme-primer-nastrojki-2619.html