Граничные прерывающие события BPMN. Моделирование и выполнение

Настройка выполняемых процессов

Для чего нужны элементы BPMN "Граничные прерывающие события".
Если немного углубиться в теорию нотации BPMN, то такие элементы следует использовать для обозначения выхода управления из подпроцесса за пределы подпроцесса с завершением подпроцесса. Иными словами, этот элемент обозначает, что внутри подпроцесса что-то произошло, что вызвало его завершение, но выполнение самого БП должно продолжаться по альтернативной ветке. Поток выполнения из элемента граничного прерывающего события и есть этот альтернативный поток.
Приватный вопрос Вы можете задать напрямую нам. Для публичного обсуждения используйте форум или комментарии внизу.

Задать вопрос
Для начинающих пользователей такое объяснение может показаться немного запутанным, поэтому дальше продолжим на наглядных примерах. Для примера возьмем процесс "Звонок клиенту". В этом процессе, при наступлении определенной даты (стартовое событие BPMN "Таймер"), ставится задача менеджеру о необходимости звонка клиенту для напоминания о продлении услуги. Если клиент отказывается, то процесс продления услуги завершается (завершающее событие BPMN). Если клиент согласен, то ему вставляется счет. В данном случае условием срабатывания граничного прерывающего события является отказ клиента (завершение бизнес-процесса по альтернативной ветке).
1_prikkartinka_5c66ec91-8b28-47e1-9aa7-e116ae90089f.png
Создание элементов на диаграмме.
Для прикрепления граничного прерывающего события к задаче на диаграмме, необходимо нажать правой кнопкой мыши на задаче и в контекстном меню выбрать соответствующий элемент.

2_prikkartinka_e1196e3c-5090-4b6d-9421-5d51756c10a8.png

После выбора команды контекстного меню, будет отображен запрос на ввод наименования элемента. Это наименование будет отображено в Дереве процессов и на диаграмме.

3_prikkartinka_ef7a37e6-1928-4ce8-9fcf-04c127ea5bc5.png

После ввода наименования и нажатия кнопки "ОК", элемент события будет создан на элементе задачи. Также, созданный элемент будет создан в Дереве процессов. После создания элемента граничного события, его можно изменять в размерах при необходимости и изменять положение относительно задачи. Тип события меняется также через контекстное меню.

4_prikkartinka_eec36f5a-61a3-4747-ba84-4c56dc8b2fae.png

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

5_prikkartinka_d7a28580-78ae-4004-85fb-e8d11e6f30cb.png

Использование в выполняемых процессах.
Рассмотрим настройку элементов BPMN "Граничное прерывающее событие" в диаграммах, предназначенных для выполнения. По условиям использования этого элемента, поток выполнения на него переходит при окончании выполнения основной задачи, к которой прицеплено событие. Для настройки такого поведения системы необходимо указать в задаче "Напомнить клиенту о продлении услуги", что по ее завершении управление может пойти как на элемент "Выставить счет", так и на элемент "Клиент отказался".

Настраиваем.
1) В настройках (кликаем на задаче и жмем F2) задачи "Напомнить клиенту о продлении услуги" на закладке "Выполнение процесса" указываем "Выполняется пользователем" и "Запускать по таблице маршрутизации".

2) На закладке "Параметры выхода" определяем параметры, по которым программа должна определить результат выполнения задачи. Эти параметры будут доступны пользователю в случае использования встроенной формы задачи. Если задача будет выполняться с использованием внешней формы, то эти параметры будут заполняться кодом. Мы рассмотрим оба варианта, а пока просто определимся с параметрами. Исходя из примера, предлагаем взять один параметр "Клиент продлевается" с типом булево.

3) На закладке "Маршрутизация исходящих элементов" определяем следующие элементы, на которых система создаст задачи после выполнения этой задачи. Для того, что бы система могла создать задачи на элементах колонки "Запускаемый БП", эти элементы должны быть также настроены для выполнения на закладке "Выполнение процесса". Если следующие элементы оставить без настройки, то система завершит выполнение задачи с предупреждением "Не удалось определить следующие выполняемые элементы".

После настройки БП, открываем обработку "Монитор бизнес-процессов" и запускаем выполнение. После старта БП, система автоматически выполнила задачи с признаком "Выполняется автоматически" и остановилась на задаче "Напомнить клиенту о продлении услуги", т.к. эта задача должна выполниться пользователем. Из монитора мы можем открыть карту маршрута и открывать задачи из карты кликом по обведенной задаче. Мы открываем задачи в 1С из карты маршрута бизнес-процесса только как администраторы, для пользователя эти задачи будут появляться в его панели задач.

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

Если пользователь оставит такие значения и нажмет "Выполнена", то задача выполнится и БП пойдет дальше к задаче "Выставить счет". Т.к. задача "Выставить счет" тоже выполняется пользователем, то БП на ней остановится.

10_prikkartinka_76bfe11d-f301-41ef-98ca-2e81e61cdd41.png

Если пользователь в форме задачи укажет значение "Нет" для параметра "КлиентПродлевается", то система после завершения задачи "Напомнить клиенту о продлении услуги", пустит выполнение БП по ветке "Клиент отказался". Т.к. все задачи этой ветки выполняются автоматически, то БП выполнит все задачи и завершит выполнение БП. Если при выполнении завершающего события, в этом экземпляре БП будут другие открытые задачи, то все открытые задачи автоматически закроются.

11_prikkartinka_d454b14d-dcef-48ea-a4e7-46d34e50833c.png

Выполнение с использованием внешней формы задачи.
Иногда бывает, что для пользователя, выполняющего задачу, необходимо настроить собственную форму задачи. В таком случае управлять заполнением параметров необходимо кодом в самой внешней форме. Создадим внешнюю обработку для формы задачи "Напомнить клиенту о продлении услуги". В этой форме будут две кнопки "Клиент отказался" и "Выставить счет". При нажатии на кнопку "Клиент отказался" процесс должен завершиться, при нажатии на "Выставить счет" должна появиться задача "Выставить счет". Как подключать внешние обработки описано Ссылка на добавление обработок.

При клике на задаче должна появиться наша форма внешней обработки с двумя кнопками. При нажатии на кнопку "Клиент отказался" должен выполниться код, который получит объект задачи, заполнит в нем параметр и завершит выполнение задачи. При нажатии на кнопку "Выставить счет" должен выполниться такой же код, только со значением "Истина" параметра "КлиентПродлевается".

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


написать комментарий
*Имя *e-mail
*разрешена загрузка файлов типа:
**максимальный размер загружаемого файла: 150 kb.


прикрепить файл
 
Защита от автоматического заполнения
CAPTCHA
обновить изображение
Введите слово с картинки*: