Элементы модели и их свойства

Список используемых элементов

ТипАнглийское названиеРусское названиеОписаниеГрафическое изображение
Inclusive GatewayВключающий шлюзВключающие шлюзы используются для разделения потока операций на несколько альтернативных. Выполнение части процесса, расположенной за шлюзом, продолжается, когда завершается любой из альтернативных маршрутов
Inclusive_Gateway

Увеличить

Event-based GatewayШлюз, основанный на событияхШлюзы, основанные на событиях, представляют собой точку ветвления, в которой направления альтернативных маршрутов зависят от срабатывания расположенных в маршрутах Событий. Направления не зависят значений выражений в момент разделения потоков на шлюзе, использующих данные процесса, как это происходит при использовании Исключающего и Включающего Шлюзов. Определенное событие, например, получение сообщения, определяет то, какой из маршрутов будет выбран в данном случае
Event_based_Gateway

Увеличить

Exclusive GatewayЭксклюзивный шлюзИсключающие шлюзы используются для разделения потока операций на несколько альтернативных маршрутов, т.е. для одного экземпляра процесса может быть выбран лишь один из предложенных маршрутов. Условие можно представить себе в виде вопроса, который появляется в какой-то точке процесса и предполагает несколько вариантов ответов. Каждый из предлагаемых ответов ассоциирован с условным выражением, которое, в свою очередь, взаимодействует с направленным от Шлюза Исходящим потоком операций
Exclusive_Gateway

Увеличить

Parallel GatewayПараллельный шлюзПараллельные шлюзы используются для синхронизации (объединения) и создания параллельных маршрутов, т.е. все параллельные маршруты выполняются одновременно. Выполнение части процесса, расположенной за шлюзом, продолжается, когда завершаются все параллельные маршруты
Parallel_Gateway

Увеличить

Call ActivityВызываемое действиеЭлемент Call Activity позволяет использовать в основном процессе глобальные, переиспользуемые процессы
CallActivity

Увеличить

Receive TaskЗадача получения сообщенийПолучение сообщений представляет собой Автоматическую Задачу, приостанавливающую выполнение ветки процесса до получения сообщения определенного типа от внешней АС или другого экземпляра процесса. После получения сообщения выполнение ветки процесса продолжается, а переданные в сообщении данные помещаются в контекст процесса и доступны для обработки в последующих задачах
Receive_Task

Увеличить

Script TaskЗадача-СценарийЗадача-сценарий выполняется механизмом исполнения бизнес-процесса. Разработчики модели процесса создают сценарий (скрипт), который распознается механизмом исполнения. В нужный момент, когда Задача должна быть выполнена, запускается сценарий
Script_Task

Увеличить

UserTaskПользовательская задачаПользовательская задача - элемент процесса, который предполагает, что задача будет выполнена человеком с использованием ПО
UserTask

Увеличить

Manual TaskРучная задачаРучное выполнение представляет собой Задачу, выполнение которой подразумевает действия человека и исключает использование каких-либо автоматизированных механизмов исполнения или приложений. В рамках среды разработки является "пустышкой", т.е. движок сразу переходит к выполнению следующего шага
ManualTask

Увеличить

Start EventСтартовое событиеСтартовое событие указывает на то, в какой точке берет начало тот или иной бизнес-процесс
Start_Event

Увеличить

Boundary EventПрерывающие и эскалирующие граничные события
Boundary_Event

Увеличить

Intermediate Catch EventПромежуточное событиеПромежуточное событие происходит на отрезке, ограниченном стартовым и конечным событиями
IntermediateCatchEvent

Увеличить

End EventКонечное событие
End_Event

Увеличить

SignalСигнал"Сигнал" – событие, срабатывающее при получении сигнала определенного типа или инициирующее отправку такого сигнала. Сигнал похож на сообщение, но разница заключается в том, что для сообщения указывается конкретный получатель, а сигнал распространяется по принципу broadcast
Signal

Увеличить

MessageСообщениеСобытие типа "Сообщение" срабатывает,когда было получено какое-либо сообщение
Message

Увеличить

TimerТаймер"Таймер" - событие, срабатывающее по истечении определенного периода времени. Время срабатывания может быть указано в абсолютной форме (конкретное время или дата — 10:00) или в относительной – в виде повторяющихся интервалов или длительности
Timer

Увеличить

ErrorОшибка"Ошибка" - событие сообщает о том, что в процессе выполнения задачи возникла ошибка
Error

Увеличить

Structure
LaneДорожкаLane представляет собой подразделение внутри пула и простирается на всю длину данного пула как горизонтально, так и вертикально. Дорожки используются для организации и категоризации действий, расположенных внутри данного пула. В рамках среды разработки допустимы вложенные дорожки
Lane

Увеличить

Structure
Sub-processПодпроцессВложенный (или встроенный) подпроцесс представляет собой комплексное действие, имеющее тот же набор данных, что и родительский процесс. Отличие встроенного подпроцесса от вызываемого действия (Call Activity) состоит в том, что встроенный подпроцесс использует данные основного контекста и является его частью, в то время как call activity – отдельный экземпляр. Встроенный подпроцесс может быть переиспользован в рамках основного процесса, call activity – глобально
CallActivity

Увеличить

__
json-rpc taskЗадача--

Общие свойства элементов модели

Вкладка General

General

Увеличить

Настройки вкладки "General":
БлокОписание
1
Верхняя часть окнаКраткое описание элемента (поле не редактируемое)
2
Attributes
- Id - уникальный идентификатор элемента. Идентификатор генерируется автоматически, поле доступно только для чтения;
- Name - наименование элемента на диаграмме. Наименование элемента будет отображаться в Карточке задачи на Портале задач
3
DocumentationБлок предназначен для ввода пользователем подробного текстового описания используемого элемента
4
AppearanceВ данном блоке пользователь может настроить внешний вид элемента на диаграмме. Доступны следующие настройки:
- Fill Color - цвет заливки;
- Line Color - цвет границ;
- Label Color - цвет подписи;
- Label Font - шрифт подписи. Для редактирования необходимо нажать "Change";
- Restore Defaults - кнопка сброса в настройки по умолчанию.
Выделение цветом удобно для отображения прогресса проработки компонентов после этапа проектирования модели.
Блок опциональный и применяется не для всех элементов

Настройка Execution Listeners

Настройка "Execution Listeners" осуществляется в свойствах элементов на вкладке "Execution Listeners".
Execution_Listeners

Увеличить

"Execution Listeners" рекомендованы к использованию для вызова повторяющихся, рутинных действий, обработки атрибутов контекста процесса и контекста пользовательских задач, присвоения значений констант.
Вызываемая функциональность может быть представлена:
  • выражением на языке "Java Query Language";
  • вызовом Java-класса с вложенной функциональностью.
Для добавления "Execution Listener" необходимо нажать на кнопку с пиктограммой "плюс" и в открывшемся окне заполнить поля:
Execution_Listeners

Увеличить

Свойства Execution Listeners - Execution Listeners List

ПараметрЗначениеКомментарий
Value Type
Тип слушателяДоступно одно значение: Expression. Значение Class более недоступно
Value
ЗначениеНеактуально: для слушателей типа Class необходимо указать путь до класса в формате "com.sbt.bpms.Наименование проекта.serviceTasks.Наименование класса". Например, "com.sbt.bpms.flexprice.serviceTasks.NotifyInvolvedService".
Для слушателей типа Expression необходимо указать выражение, которое требуется выполнить
Select Ready Expression
Использование готовых выраженийСм. раздел Использование готовых выражений ниже
Event
СобытиеExecution Listeners отслеживает события:
- start - Execution Listener выполняется, когда начинается исполнение элемента;
- end - Execution Listener выполняется, когда заканчивается исполнение элемента

Использование готовых выражений

Среда разработки имеет список преднастроенных наиболее часто используемых выражений.
  1. Для использования преднастроенного выражения нажмите "Select". Откроется окно со списком доступных выражений.
    Execution_Listeners

    Увеличить

    Возможен поиск выражения с помощью поля "Search Pattern".
  2. Выберите нужное выражение и введите недостающие параметры.
    Execution_Listeners

    Увеличить

  3. Нажмите "Ok". В строке "Value" отобразится итоговое выражение.
    Execution_Listeners

    Увеличить

  4. Нажмите "Ok" для сохранения Execution Listener.

Настройка точек мониторинга

Внимание! Данный функционал в настоящее время скрыт.
Настройка точек мониторинга осуществляется в свойствах элементов на вкладке "Marker".
Marker

Увеличить

Точки мониторинга доступны для следующих элементов:
  • все Задачи (Tasks);
  • все Шлюзы (Gateways);
  • все События (Events), Call Activity, Подпроцесс (Sub Process).
Для добавления точки мониторинга выполните следующее:
  1. Нажмите пиктограмму "плюс". Откроется окно свойств точки мониторинга.
    Marker

    Увеличить

  2. В открывшемся окне укажите свойства создаваемой точки мониторинга, а также передаваемого бизнес-атрибута:
    Marker

    Увеличить

Свойства точки мониторинга - Mark Details

ПараметрЗначениеКомментарий
Mark Id
Уникальный идентификатор точки мониторингаГенерируется автоматически. Может быть установлен вручную, в среде разработки
Mark Name
Наименование точки мониторингаМожет быть установлен вручную в среде разработки
Documentation
Описание точки мониторингаМожет быть установлен вручную в среде разработки
Condition
Триггер создания экземпляра точки мониторингаУстанавливается вручную в среде разработки.
Почти у всех элементов список событий следующий:
- start - момент начала выполнения задачи;
- end - момент окончания выполнения задачи.
Исключение - для Пользовательской задачи могут быть установлены следующие три типа событий:
- create - момент создания экземпляра задачи средой исполнения;
- assigment - момент назначения экземпляра задачи на пользователя средой исполнения или пользователем;
- complete - момент завершения экземпляра задачи пользователем

Свойства бизнес-атрибута - Business Object Details

ПараметрЗначениеКомментарий
Name
Наименование бизнес-атрибутаУстанавливается вручную в среде разработки
Process Variable
Переменная контекста процесса, в которой содержатся необходимые данныеУстанавливается вручную в среде разработки
Для сохранения точек мониторинга необходимо нажать "Ок".
Элемент, имеющий точку мониторинга, отмечается на диаграмме красным флажком, например:
Marker

Увеличить

Системные параметры экземпляра процесса

Системные параметры экземпляра процесса могут быть запрошены на любом шаге экземпляра вызовом соответствующей команды.
  • Для задания переменной контекста - на вкладке "Execution Listeners".
  • Для использования в скрипте - на вкладке "Properties" (см. описание для каждого конкретного элемента).
Список параметроввыражение для их получения
Глобальный идентификатор процессов
execution.getGlobalProcessInstanceId()
Список внешних идентификаторов
execution.getExternalIds()
Идентификатор экземпляра процесса
execution.getProcessInstanceId()
Идентификатор самого верхнего в иерархии родителя
execution.getRootProcessInstanceId()
Имя события (для соответствующих шагов)
execution.getEventName()
Идентификатор процесса
execution.getProcessDefinitionKey()
Идентификатор родительского потока исполнения
execution.getSuperExecutionId()
Идентификатор текущего потока исполнения
execution.getId()
Информация об исполняющемся шаге процесса (FlowElement)
execution.getCurrentFlowElement()
Список слушателей на текущем шаге
execution.getCurrentActivitiListener()
Родительский поток исполнения
execution.getParent();
Все переменные экземпляра процесса
execution.getVariables()
Все переменные потока исполнения
execution.getVariablesLocal()
Переменная процесса с указанным именем
execution.getVariable("имя переменной")
Переменная потока исполнения с указанным именем
execution.getVariableLocal("имя переменной")
Список имен переменных процесса
execution.getVariableNames()
Список имен переменных потока исполнения
execution.getVariableNamesLocal()
Время старта потока исполнения
execution.getStartTime()
Предыдущий раздел
Добавление элементов на диаграмму
Следующий раздел
Элемент Call Activity
Была ли страница полезной?