Licenses |
| ||||||||||||
Since |
|
Table of Contents | ||||
---|---|---|---|---|
|
Introduction
A gateway in BPMN is a branch of the workflow. Depending on a condition, the flow of the process can branch into different directions.
...
Where to define gateways conditions
In this example, depending on whether the supervisor has approved or declined the vacation request, the workflow should execute the “Send declined email” or the “Send approved email” task. For this, we need to define rules on the gateway edges:
To define the rule for the decline gateway, select the declined edge of the gateway and fill-in this condition:
${vacationApproved == false}
:This makes sure that this branch is executed in case the supervisor set
vacationApproved
to false in the task form.Repeat these steps for the task “Send approved email” and set the condition to
${vacationApproved == true}
.Click
SAVE
to save the current state of the BPMN workflow.
How to design gateways
The gateway design is defined by a specific expression language named JUEL. Below you will find the most important operators are:
...
For more details see https://docs.oracle.com/javaee/5/tutorial/doc/bnahq.html
Examples of gateway conditions
Condition for dropdown
Condition refers to a field named “decision”
Field provides a dropdown list for user (Approve, Decline, Delegate)
Gateway should represent the “Approve” selection
Condition looks like this:
Condition for checkbox
Condition refers to a field named “checked”
Field provides a checkbox
Gateway should represent the situation that the checkbox is ticked
Condition looks like this:
${ checked } works also. Similar ${ !checked } can be use in place of ${ checked == false }
Condition for value
Condition refers to a field named “Kosten”
Field provides the option to type in numbers
Gateway should represent the situation that the value is > 100 but < 1000
Condition looks like this:
Multiple conditions
Condition refers to the fields “decision” and “checked”
Field “decision” provides a dropdown list for user (Approve, Decline, Delegate)
Field “checked” provides a checkbox
Gateway should represent the situation that:
“Approved” is selected from dropdown
Tick is set for “checked”
Condition looks like this:
...