Creating and controlling process flows
Types of gateways
Gateway | Description | Example |
---|---|---|
Parallel | A Parallel gateway element models concurrency in a process. It is used to visualize the concurrent execution of activities. It forks into multiple execution paths or joins multiple incoming paths of execution. Important: Make sure you always use a parallel gateway in a pair. All the execution paths that begin from a parallel gateway must end with a parallel gateway. This ensures that the parallelly processing paths wait for each other at the parallel gateway before executing the next action. | |
Exclusive | An Exclusive gateway element models a decision in the process and the conditions on exit paths. When the process execution arrives at an Exclusive gateway element, the system evaluates the conditions that you define in the outgoing Sequence Flow element of all flows. The system evaluates the conditions in the order in which they are defined. It selects a flow to execute depending on whether a condition evaluates to true or a condition is not defined. |
Limitation of the Exclusive gateway
You can use the Exclusive gateway element to create loops in processes only if the loop runs for fewer than 15 iterations.
If you want to use the Exclusive gateway element to create loops that run for more than 15 iterations, modify the existing loop by performing the following steps:
- Define a local process variable to maintain the iteration count.
- In the loop created by using the Exclusive gateway element, increment the local process variable (iteration counter) for every iteration.
If the iteration counter is greater than 15, the Compute Value element (Reset Count) resets the iteration counter to 0. - Use the Receive Task element that has a timer attached to it.
After the specified time has elapsed, the process routes to the original Exclusive gateway element. Here, the iteration counter restarts from 0, and therefore, the loop continues for the next 15 iterations.
The following image shows an example of the workaround if using the Exclusive gateway:
To connect elements in a process
- In the Process designer, select the element on the canvas that you want to connect to another element.
The sequence flow element is displayed. - Drag the sequence flow element (arrow) and connect it to the other corresponding element.
In the Properties pane, enter the properties for the sequence flow element.
The following table provides more information about sequence flow element properties:Property
Description
Type
Type of the Sequence Flow element.
You cannot select a particular type. The type is decided at the run time depending on where the sequence flow is used and if a condition is defined on the sequence flow. The types of sequence flow are as follows:- Default—Denotes an outgoing path of an exclusive gateway where the sequence flow has no defined condition.
- Conditional—Denotes an outgoing path of an exclusive gateway where the sequence flow has a defined condition.
- Normal—Denotes a path that connects all other flow nodes.
Label
Name of the element by which the element is shown in the process diagram.
Label Position
Position of the label on the element.
- Save the process.
For information about how to run a process, see Viewing-and-managing-process-execution .
To control process flows by adding Gateways
- Log in to BMC Helix Innovation Studio and navigate to the Workspace tab.
- Select the application in which your process exists.
- In the application, click the Processes tab.
- Click the process name where you want to add the Gateways element.
The system opens the Process designer and displays the process diagram on the canvas. - Drag the Gateways element to the canvas and place the element where you want to represent concurrent tasks (Parallel gateway) or specify a condition (Exclusive gateway).
- In the Properties pane, enter the values of the element properties and specify the flow of execution that you want to create for your business logic.
- Save the process.
If the source automation system provides a Template ID or Template Name as part of the inputs to create the change record, the corresponding template is searched and applied to the change record.