Элементы модели и их свойства
Тип | Английское название | Русское название | Описание | Графическое изображение |
---|---|---|---|---|
Inclusive Gateway | Включающий шлюз | Включающие шлюзы используются для разделения потока операций на несколько альтернативных. Выполнение части процесса, расположенной за шлюзом, продолжается, когда завершается любой из альтернативных маршрутов | ![]() Увеличить | |
Event-based Gateway | Шлюз, основанный на событиях | Шлюзы, основанные на событиях, представляют собой точку ветвления, в которой направления альтернативных маршрутов зависят от срабатывания расположенных в маршрутах Событий. Направления не зависят значений выражений в момент разделения потоков на шлюзе, использующих данные процесса, как это происходит при использовании Исключающего и Включающего Шлюзов. Определенное событие, например, получение сообщения, определяет то, какой из маршрутов будет выбран в данном случае | ![]() Увеличить | |
Exclusive Gateway | Эксклюзивный шлюз | Исключающие шлюзы используются для разделения потока операций на несколько альтернативных маршрутов, т.е. для одного экземпляра процесса может быть выбран лишь один из предложенных маршрутов. Условие можно представить себе в виде вопроса, который появляется в какой-то точке процесса и предполагает несколько вариантов ответов. Каждый из предлагаемых ответов ассоциирован с условным выражением, которое, в свою очередь, взаимодействует с направленным от Шлюза Исходящим потоком операций | ![]() Увеличить | |
Parallel Gateway | Параллельный шлюз | Параллельные шлюзы используются для синхронизации (объединения) и создания параллельных маршрутов, т.е. все параллельные маршруты выполняются одновременно. Выполнение части процесса, расположенной за шлюзом, продолжается, когда завершаются все параллельные маршруты | ![]() Увеличить | |
Call Activity | Вызываемое действие | Элемент Call Activity позволяет использовать в основном процессе глобальные, переиспользуемые процессы | ![]() Увеличить | |
Receive Task | Задача получения сообщений | Получение сообщений представляет собой Автоматическую Задачу, приостанавливающую выполнение ветки процесса до получения сообщения определенного типа от внешней АС или другого экземпляра процесса. После получения сообщения выполнение ветки процесса продолжается, а переданные в сообщении данные помещаются в контекст процесса и доступны для обработки в последующих задачах | ![]() Увеличить | |
Script Task | Задача-Сценарий | Задача-сценарий выполняется механизмом исполнения бизнес-процесса. Разработчики модели процесса создают сценарий (скрипт), который распознается механизмом исполнения. В нужный момент, когда Задача должна быть выполнена, запускается сценарий | ![]() Увеличить | |
UserTask | Пользовательская задача | Пользовательская задача - элемент процесса, который предполагает, что задача будет выполнена человеком с использованием ПО | ![]() Увеличить | |
Manual Task | Ручная задача | Ручное выполнение представляет собой Задачу, выполнение которой подразумевает действия человека и исключает использование каких-либо автоматизированных механизмов исполнения или приложений. В рамках среды разработки является "пустышкой", т.е. движок сразу переходит к выполнению следующего шага | ![]() Увеличить | |
Start Event | Стартовое событие | Стартовое событие указывает на то, в какой точке берет начало тот или иной бизнес-процесс | ![]() Увеличить | |
Boundary Event | Прерывающие и эскалирующие граничные события | ![]() Увеличить | ||
Intermediate Catch Event | Промежуточное событие | Промежуточное событие происходит на отрезке, ограниченном стартовым и конечным событиями | ![]() Увеличить | |
End Event | Конечное событие | ![]() Увеличить | ||
Signal | Сигнал | "Сигнал" – событие, срабатывающее при получении сигнала определенного типа или инициирующее отправку такого сигнала. Сигнал похож на сообщение, но разница заключается в том, что для сообщения указывается конкретный получатель, а сигнал распространяется по принципу broadcast | ![]() Увеличить | |
Message | Сообщение | Событие типа "Сообщение" срабатывает,когда было получено какое-либо сообщение | ![]() Увеличить | |
Timer | Таймер | "Таймер" - событие, срабатывающее по истечении определенного периода времени. Время срабатывания может быть указано в абсолютной форме (конкретное время или дата — 10:00) или в относительной – в виде повторяющихся интервалов или длительности | ![]() Увеличить | |
Error | Ошибка | "Ошибка" - событие сообщает о том, что в процессе выполнения задачи возникла ошибка | ![]() Увеличить | |
Structure | Lane | Дорожка | Lane представляет собой подразделение внутри пула и простирается на всю длину данного пула как горизонтально, так и вертикально. Дорожки используются для организации и категоризации действий, расположенных внутри данного пула. В рамках среды разработки допустимы вложенные дорожки | ![]() Увеличить |
Structure | Sub-process | Подпроцесс | Вложенный (или встроенный) подпроцесс представляет собой комплексное действие, имеющее тот же набор данных, что и родительский процесс. Отличие встроенного подпроцесса от вызываемого действия (Call Activity) состоит в том, что встроенный подпроцесс использует данные основного контекста и является его частью, в то время как call activity – отдельный экземпляр. Встроенный подпроцесс может быть переиспользован в рамках основного процесса, call activity – глобально | ![]() Увеличить |
__ | json-rpc task | Задача | - | - |
Вкладка 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" рекомендованы к использованию для вызова повторяющихся, рутинных действий, обработки атрибутов контекста процесса и контекста пользовательских задач, присвоения значений констант.
Вызываемая функциональность может быть представлена:
- выражением на языке "Java Query Language";
- вызовом Java-класса с вложенной функциональностью.
Для добавления "Execution Listener" необходимо нажать на кнопку с пиктограммой "плюс" и в открывшемся окне заполнить поля:

Увеличить
Свойства 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 выполняется, когда заканчивается исполнение элемента |
Использование готовых выражений
Среда разработки имеет список преднастроенных наиболее часто используемых выражений.
-
Для использования преднастроенного выражения нажмите "Select". Откроется окно со списком доступных выражений.
Увеличить
Возможен поиск выражения с помощью поля "Search Pattern". -
Выберите нужное выражение и введите недостающие параметры.
Увеличить
-
Нажмите "Ok". В строке "Value" отобразится итоговое выражение.
Увеличить
-
Нажмите "Ok" для сохранения Execution Listener.
Настройка точек мониторинга
Внимание! Данный функционал в настоящее время скрыт.
Настройка точек мониторинга осуществляется в свойствах элементов на вкладке "Marker".

Увеличить
Точки мониторинга доступны для следующих элементов:
- все Задачи (Tasks);
- все Шлюзы (Gateways);
- все События (Events), Call Activity, Подпроцесс (Sub Process).
Для добавления точки мониторинга выполните следующее:
-
Нажмите пиктограмму "плюс". Откроется окно свойств точки мониторинга.
Увеличить
-
В открывшемся окне укажите свойства создаваемой точки мониторинга, а также передаваемого бизнес-атрибута:
Увеличить
Свойства точки мониторинга - Mark Details
Параметр | Значение | Комментарий |
---|---|---|
Mark Id | Уникальный идентификатор точки мониторинга | Генерируется автоматически. Может быть установлен вручную, в среде разработки |
Mark Name | Наименование точки мониторинга | Может быть установлен вручную в среде разработки |
Documentation | Описание точки мониторинга | Может быть установлен вручную в среде разработки |
Condition | Триггер создания экземпляра точки мониторинга | Устанавливается вручную в среде разработки. Почти у всех элементов список событий следующий: - start - момент начала выполнения задачи; - end - момент окончания выполнения задачи. Исключение - для Пользовательской задачи могут быть установлены следующие три типа событий: - create - момент создания экземпляра задачи средой исполнения; - assigment - момент назначения экземпляра задачи на пользователя средой исполнения или пользователем; - complete - момент завершения экземпляра задачи пользователем |
Свойства бизнес-атрибута - Business Object Details
Параметр | Значение | Комментарий |
---|---|---|
Name | Наименование бизнес-атрибута | Устанавливается вручную в среде разработки |
Process Variable | Переменная контекста процесса, в которой содержатся необходимые данные | Устанавливается вручную в среде разработки |
Для сохранения точек мониторинга необходимо нажать "Ок".
Элемент, имеющий точку мониторинга, отмечается на диаграмме красным флажком, например:

Увеличить
Системные параметры экземпляра процесса
Системные параметры экземпляра процесса могут быть запрошены на любом шаге экземпляра вызовом соответствующей команды.
- Для задания переменной контекста - на вкладке "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() |