Подія «Повідомлення»
1. Загальний опис
Подія «Повідомлення» (Message Event) — це подія у бізнес-процесі, яка використовується для передачі інформації від одного бізнес-процесу до іншого бізнес-процесу або підпроцесу. Згенероване вихідне повідомлення (подія-відправник) активує елемент, що приймає повідомлення (подія-одержувач), який з ним пов’язаний.
Елементи події, що надсилають та приймають повідомлення, повинні бути взаємопов’язаними та мати відповідні налаштування обміну інформацією.
- При моделюванні застосовуються такі типи подій повідомлення:
-
-
Кінцева подія повідомлення (Message End Event) — подія, що моделюється при завершенні бізнес-процесу чи підпроцесу, і яка налаштовується для відправки масиву даних, певних атрибутів або тестового повідомлення.
-
Стартова подія повідомлення (Message Start Event) — подія, що моделюється при ініціюванні старту нового бізнес- процесу чи підпроцесу, і яка налаштовується для отримання масиву даних, певних атрибутів або тестового повідомлення від елемента End Message Event або Message Intermediate Throw Event.
-
Проміжна подія відправки повідомлення (Message Intermediate Throw Event) — подія, що моделюється при проходженні бізнес-процесу чи підпроцесу, і яка налаштовується для відправки масиву даних, певних атрибутів або тестового повідомлення.
-
Проміжна подія отримання повідомлення (Message Intermediate Catch Event) — подія, що моделюється при проходженні бізнес-процесу чи підпроцесу, і яка налаштовується для отримання масиву даних, певних атрибутів або тестового повідомлення від елемента End Message Event або Message Intermediate Throw Event.
-
2. Моделювання та налаштування кінцевої події повідомлення
Для моделювання та налаштування кінцевої події повідомлення, необхідно виконати наступні налаштування:
|
-
В рамках бізнес-процесу, що надсилатиме інформацію (Send Message), додайте подію завершення процесу.
-
Виділіть подію завершення процесу та визначте її тип. Для цього натисніть іконку ключа та оберіть в налаштуваннях значення Message End Event.
-
На вкладці General налаштуйте делегат для надсилання даних повідомлення:
-
У полі
Id
вкажіть робочий ідентифікатор елемента, або залиште значення за замовчуванням. -
У полі
Name
вкажіть робочу назву елемента. -
У полі
Implementation
оберіть зі списку значенняDelegate Expression
. -
У полі
Delegate Expression
вкажіть значення делегата —${startProcessByMessageDelegate}
.На відміну від інших типових розширень-делегатів для моделювання бізнес-процесів, що мають розроблені шаблони, делегат startProcessByMessageDelegate
, який використовується при моделюванні подій «Повідомлення», налаштовується в ручному режимі. -
Розгорніть блок Details, натиснувши клавішу
+
(позначка плюса). -
У полі
Global Message Name
вкажіть назву елемента, що прийматиме повідомлення (наприклад,startProcessReceiveMessageAfterSystemTask
).Вказана назва має бути ідентичною для 2-х взаємопов’язаних елементів — елемента, що надсилає дані повідомлення, та елемента, що ці дані приймає.
Один елемент, що надсилає повідомлення, може бути взаємопов’язаний тільки з одним елементом, що приймає повідомленням.
-
У полі
Global Message referenced
оберіть зі списку значення посилання до елемента, що приймає дані, вказаного у поліGlobal Message Name
.Якщо при моделюванні бізнес-процесів в рамках одного .bpmn-файлу використовуються декілька взаємопов’язаних елементів подій повідомлення, то у полі
Global Message referenced
, у випадному списку відображатимуться всі раніше встановлені значення елементів, що отримують повідомлення. Будьте уважними при налаштуванні цього параметра та обирайте саме той елемент кореляції, який потрібен.При зміні значення у полі
Global Message referenced
, автоматично заповнюється ідентичне значення для поляGlobal Message Name
.
-
-
Перейдіть на вкладку Input\Output та налаштуйте масив даних, атрибути або текстове повідомлення, що передаватимуться до бізнес-процесу (підпроцесу), що прийматиме дані:
-
Навпроти секції Input Parameters натисніть клавішу
+
(позначка плюса), після чого буде автоматично додано вхідний параметр, який необхідно налаштувати відповідно до даних, що передаватимуться до іншого бізнес-процесу (підпроцесу). -
У полі
Local Variable Name
вкажіть назву локальної змінної або залиште значення за замовчуванням. -
У полі
Variable Assignment Type
оберіть тип змінної та налаштуйте її наступним чином:Існує 4 доступних способи призначення змінної:
-
рядок або вираз (
String or Expression
); -
скрипт (
Script
); -
масив або список (
List
); -
набір пар ключ-значення (
Map
).
-
-
При виборі типу
String or Expression
, вкажіть у поліVariable Assignment Value
вираз змінної, що передаватиметься за допомогою JUEL-функції.За детальною інформацією щодо підтримуваних Платформою JUEL-функцій, зверніться до сторінки JUEL-функції у бізнес-процесах.
-
При виборі типу
Script
, вкажіть дані скрипту у поляхScript Format
,Script Type
таScript
. -
При виборі типу
List
, натисніть+
(Add Value
) та у поліValue
вкажіть значення змінної (текст або за допомогою JUEL-функції). -
При виборі типу
Map
, натисніть кнопку+
(Add Entry
) , у поліKey
вкажіть назву змінної, а в поліValue
вкажіть значення змінної (текст або за допомогою JUEL-функцій).
-
За необхідності, навпроти секції Input Parameters натисніть кнопку
+
та сконфігуруйте значення наступної змінної.
-
Скористайтеся референтним прикладом бізнес-процесу для отримання деталей: Process_checkIntermediateThrowEvent.bpmn. |
3. Моделювання та налаштування стартової події повідомлення
Для моделювання та налаштування стартової події повідомлення, необхідно виконати наступні налаштування:
|
-
В рамках бізнес-процесу, що прийматиме інформацію (Receive Message), додайте стартову подію.
-
Виділіть початкову подію та визначте її тип. Для цього натисніть іконку ключа та оберіть в налаштуваннях значення Message Start Event.
-
На вкладці General налаштуйте елемент для отримання даних повідомлення:
-
У полі
Id
вкажіть робочий ідентифікатор елемента або залиште значення за замовчуванням. -
У полі
Name
вкажіть робочу назву елемента. -
Навпроти секції Details натисніть клавішу
+
(позначка плюса). -
У полі
Global Message Name
вкажіть назву елемента, що прийматиме дані, і значення якого було вказано для події повідомлення, що надсилатиме дані (End Message Event або Message Intermediate Throw Event). Наприклад,startProcessReceiveMessageAfterSystemTask
.Вказана назва має бути ідентичною для 2-х взаємопов’язаних елементів — елемента, що надсилає дані повідомлення, та елемента, що ці дані приймає.
Один елемент, що надсилає повідомлення, може бути взаємопов’язаний тільки з одним елементом, що приймає повідомленням.
-
У полі
Global Message referenced
оберіть зі списку значення посилання елемента, що приймає дані, вказаного у поліGlobal Message Name
.Якщо при моделюванні бізнес-процесів в рамках одного .bpmn-файлу використовуються декілька взаємопов’язаних елементів подій повідомлення, то у полі
Global Message referenced
, у випадному списку відображатимуться всі раніше встановлені значення елементів, що отримують повідомлення. Будьте уважними при налаштуванні цього параметра та обирайте саме той елемент кореляції, який потрібен.При зміні значення у полі
Global Message referenced
, автоматично заповнюється ідентичне значення для поляGlobal Message Name
.
-
4. Моделювання та налаштування проміжної події відправки повідомлення
Для моделювання та налаштування проміжної події відправки повідомлення, необхідно виконати наступні налаштування:
|
-
В рамках бізнес-процесу, що надсилатиме інформацію (Send Message), додайте проміжну подію (Intermediate/Boundary Event).
-
Змоделюйте взаємодію між двома процесами.
-
Виділіть проміжну подію та визначте її тип. Для цього натисніть іконку ключа та оберіть в налаштуваннях значення Message Intermediate Throw Event.
-
На вкладці General налаштуйте делегат для надсилання даних повідомлення:
-
У полі
Id
вкажіть робочий ідентифікатор елемента, або залиште значення за замовчуванням. -
У полі
Name
вкажіть робочу назву елемента. -
У полі
Implementation
оберіть зі списку значенняDelegate Expression
. -
У полі
Delegate Expression
вкажіть значення делегата —${startProcessByMessageDelegate}
.На відміну від інших типових розширень-делегатів для моделювання бізнес-процесів, що мають розроблені шаблони, делегат startProcessByMessageDelegate
, який використовується при моделюванні подій «Повідомлення», налаштовується в ручному режимі. -
Розгорніть блок Details, натиснувши клавішу
+
(позначка плюса). -
У полі
Global Message Name
вкажіть назву елемента, що прийматиме повідомлення (наприклад,startProcessReceiveMessageExec
).Вказана назва має бути ідентичною для 2-х взаємопов’язаних елементів — елемента, що надсилає дані повідомлення, та елемента, що ці дані приймає.
Один елемент, що надсилає повідомлення, може бути взаємопов’язаний тільки з одним елементом, що приймає повідомленням.
-
У полі
Global Message referenced
оберіть зі списку значення посилання до елемента, що приймає дані, вказаного у поліGlobal Message Name
.Якщо при моделюванні бізнес-процесів в рамках одного .bpmn-файлу використовуються декілька взаємопов’язаних елементів подій повідомлення, то у полі
Global Message referenced
, у випадному списку відображатимуться всі раніше встановлені значення елементів, що отримують повідомлення. Будьте уважними при налаштуванні цього параметра та обирайте саме той елемент кореляції, який потрібен.При зміні значення у полі
Global Message referenced
, автоматично заповнюється ідентичне значення для поляGlobal Message Name
.
-
-
Перейдіть на вкладку Input\Output та налаштуйте масив даних, атрибути або текстове повідомлення, що передаються іншому бізнес-процесу (підпроцесу).
Налаштування input/output-параметрів делегата детально описані у розділі Моделювання та налаштування кінцевої події повідомлення. |
Скористайтеся референтним прикладом бізнес-процесу для отримання деталей: Process_checkIntermediateThrowEvent.bpmn. |
5. Моделювання та налаштування проміжної події отримання повідомлення
Для моделювання та налаштування проміжної події отримання повідомлення, необхідно виконати наступні налаштування:
|
-
В рамках бізнес-процесу, що прийматиме інформацію (тут — Receive Message), додайте проміжну подію.
-
Виділіть проміжну подію та визначте її тип. Для цього натисніть іконку ключа та оберіть в налаштуваннях значення Message Intermediate Catch Event.
-
На вкладці General налаштуйте елемент для отримання даних повідомлення:
-
У полі
Id
вкажіть робочий ідентифікатор елемента або залиште значення за замовчуванням. -
У полі
Name
вкажіть робочу назву елемента. -
Навпроти секції Details натисніть клавішу
+
(позначка плюса). -
У полі
Global Message Name
вкажіть назву елемента, що прийматиме дані, і значення якого було вказано для події повідомлення, що надсилатиме дані (End Message Event або Message Intermediate Throw Event). Наприклад,sendIntermediateMessage
.Вказана назва має бути ідентичною для 2-х взаємопов’язаних елементів — елемента, що надсилає дані повідомлення, та елемента, що ці дані приймає.
Один елемент, що надсилає повідомлення, може бути взаємопов’язаний тільки з одним елементом, що приймає повідомленням.
-
У полі
Global Message referenced
оберіть зі списку значення посилання елемента, що приймає дані, вказаного у поліGlobal Message Name
.Якщо при моделюванні бізнес-процесів в рамках одного .bpmn-файлу використовуються декілька взаємопов’язаних елементів подій повідомлення, то у полі
Global Message referenced
, у випадному списку відображатимуться всі раніше встановлені значення елементів, що отримують повідомлення. Будьте уважними при налаштуванні цього параметра та обирайте саме той елемент кореляції, який потрібен.При зміні значення у полі
Global Message referenced
, автоматично заповнюється ідентичне значення для поляGlobal Message Name
.
-