Элемент Call Activity

Описание элемента

Call Activity - элемент процесса, позволяющий использовать в основном процессе глобальные, переиспользуемые процессы.
В Палитре этот элемент находится в папке "Tasks" и выглядит следующим образом:
CallActivity

Увеличить

Call Activity обозначается как прямоугольник со скругленными краями и широкой рамкой:
CallActivity

Увеличить

XML представление

Представление Call Activity в XML:
callActivity type=xml
<bpmn2:callActivity id="b3b7715f-440c-419b-8b6f-c5654b70207e"
    sbt:marker.type="Markable"
    sbt:sbtType="com.sbt.bpms.modeler.plugin.marker.markableCallActivity"
    name="New Call Activity"
    calledElement="../Process_905392440.bpmn#d8b772f1-4f2e-4367-95bf-a5bac369d64a">
</bpmn2:callActivity>

Настройка объекта Call Activity

Переход к настройке объекта осуществляется в меню свойств объекта.
Для получения свойств элемента необходимо выполнить одно из следующих действий:
  • Вызвать меню двойным кликом на элементе на диаграмме.
  • Вызвать контекстное меню правой кнопкой мыши и выбрать в нем пункт "Show Properties".
  • Выбрать элемент мышкой и открыть справа в окне вкладку "Properties".
  • Выбрать элемент на вкладке "Outline" и открыть для него вкладку "Properties".

Вкладка General

Описание вкладки см. в разделе Вкладка General статьи о свойствах элементов.

Вкладка Call Activity

CallActivity1

Увеличить

Вкладка служит для указания вызываемого процесса.
Чтобы указать подпроцесс, выполните следующее:
  1. Перейдите к панели свойств "Properties" текущего (основного) процесса.
    CallActivity

    Увеличить

  2. Перейдите на вкладку "Definitions" и откройте таблицу "ImportList".
    CallActivity

    Увеличить

  3. Добавьте нужный процесс (подпроцесс) в список импортируемых объектов, нажав кнопку и выбрав путь к bpmn-файлу. Рекомендуется добавлять файл из workspace (ImportSource - Workspace).
    CallActivity

    Увеличить

  4. Откройте свойства элемента на вкладке "Call Activity". В поле "Called Element" выберите добавленный процесс из списка и подтвердите выбор нажатием кнопки "OK".
    CallActivity

    Увеличить

После этого в модели станет доступен вспомогательный функционал - кнопка перехода к просмотру модели вызываемого процесса.
CallActivity

Увеличить

Вкладка Marker

Описание вкладки описано в разделе Настройка точек мониторинга.

Вкладка Execution Listeners

Описание вкладки описано в разделе Настройка Execution Listeners.

Вкладка Input/Output

Input/Output

Увеличить

Вкладка "Input/Output" служит для настройки передачи переменных из контекста основного процесса в контекст вызываемого процесса и настройки приема в обратном направлении переменных с результатом выполнения процесса.
Для передачи атрибутов из контекста основного процесса в контекст подпроцесса необходимо нажать на пиктограмму "плюс" в блоке "In List" и заполнить соответствующие поля.
Input/Output

Увеличить

ПолеОписание
1
IDУникальный идентификатор (только для чтение)
2
TargetАтрибут контекста вызываемого процесса (подпроцесса). Переменная контекста вызываемого подпроцесса, в которую будет помещено полученное значение
3
ValueЗначение (зависит от Value Type):
- для Value Type = Source - название переменной контекста основного процесса;
- для Value Type = Expression - выражение
4
Value TypeТип передаваемого значения:
- Source - используется для передачи переменной контекста основного процесса в контекст вызываемого подпроцесса;
- Expression - используется, если необходимо выполнить выражение
Для передачи атрибутов в обратном порядке (из вызываемого подпроцесса в основной) необходимо нажать на пиктограмму "плюс" в блоке "Out List" и в открывшемся окне заполнить поля:
Input/Output

Увеличить

ПолеОписание
1
IDУникальный идентификатор (только для чтение)
2
TargetАтрибут контекста вызываемого процесса (подпроцесса). Переменная контекста вызываемого подпроцесса, в которую будет помещено полученное значение
3
ValueЗначение (зависит от Value Type):
- для Value Type = Source - название переменной контекста основного процесса;
- для Value Type = Expression - выражение
4
Value TypeТип передаваемого значения:
- Source - используется для передачи переменной контекста основного процесса в контекст вызываемого подпроцесса;
- Expression - используется, если необходимо выполнить выражение

Best practices для Call Activity

В ходе построения схем часто встречаются ситуации использования повторяющихся элементов/последовательностей элементов с небольшим различием в значениях параметров.
С целью оптимизации такие элементы можно вынести в отдельный процесс и использовать их, изменяя только необходимые параметры.
  • Пример. В процессе в зависимости от условия происходит смена статуса Клиент отклонил или Клиент принял:
    CallActivity

    Увеличить

    При этом для смены статуса используются два различных процесса - с отличием в значении одного передаваемого элемента:
    CallActivity

    Увеличить

    CallActivity

    Увеличить

    Вместо этого можно использовать один процесс и в зависимости от ситуации передавать необходимое значение через "In List":
    CallActivity

    Увеличить

    При этом переиспользуемый процесс будет выглядеть следующим образом:
    CallActivity

    Увеличить

    Преимущества реализации:
    • Сокращение времени построения схем.
    • Удобство модификации при необходимости изменения структуры процесса.
Предыдущий раздел
Элементы модели и их свойства
Следующий раздел
Элементы Event
Была ли страница полезной?