Description
The VariableDecisionHandler allows the user to pre-define the process path after an XOR gateway based on process variables.
The VariableDecisionHandler was previously called FormDecisionHandler. However, it is still accessible via the class: com.dooris.bpm.actionhandler.FormDecissionHandler
.
Class
com.dooris.bpm.actionhandler.VariableDecisionHandler
Parameter of the XOR gateway
Parameter | Default value | Description |
---|---|---|
| N/A | Name of the process variable stored in the form, based on whose value a process path is chosen. |
| N/A | This parameter defines which process path will be selected if the process variable is not defined or the content of the variables does not match any given transition of the gateway. |
Parameter of the outgoing sequence flows
For each condition, there will be one Output parameter with a Name for the parameter and an ID:
Name | ID | Description |
---|---|---|
| Insert here the value of the Output variable, if the condition will apply for | |
| Insert here the value of the Output variable, if the condition will apply for |
Parameter | Default value | Description |
---|---|---|
condition expression | The condition expression can be set arbitrarily but should fit the decision. For example:
(e.g. proposal status? Condition expression 1: Approved. Condition expression 2: Declined). | |
ID | The ID is the value of the process variable set in the form (value=“ID”). |
Example
We want to decide between the two different paths in the workflow based on a user selection from the form.
In our example, we want to send two different emails depending on whether the approval was given or declined in the form on the previous task.
Form
In this example, VariableDecisionHandler is added at the XOR node. Form is created for this workflow with a radio button which has a name decision
as a variable name. Radio button setting is in the below screenshot. decision
variable is used for VariableDecisionHandler which defines the routes after XOR gateway.
Parameter | Example |
---|---|
|
|
Output | Example |
---|---|
|
|
|
|
The form created for this example: