Adding asynchronous processing to a flow
You can use the Split Join shape to call two or more subprocesses that later rejoin the parent flow. By dividing your independent business requirements into multiple processes, you can model different types of dependencies in your flow.
For example, you can validate tax information and perform a title search as part of a mortgage application flow. Different users can work on the assignments in each subproccess, and the parent flow continues when one or both of the subprocesses return.
-
Add the
Split Join
shape to your flow:
- Open a flow by searching for it or by using the Application Explorer. For more information, see Finding rules by class.
- On the Diagram tab, click the Flow shapes icon and select .
- Connect the Split Join shape by dragging connector end points to connection points on different shapes in the flow.
- Double-click the Split Join shape to open the property panel.
-
In the
Join
list, select one of the
available
options
to define how the parent flow waits to continue
processing
.
You can choose from:
- All
- Waits for all subprocesses to return.
- Any
- Waits for one subprocess to return. All other subprocesses that were called from the Split Join shape stop processing when the parent flow resumes.
- Some
- Waits for a when condition to return a true value, or a specific number of flows to return a status value that you provide.
-
If the parent flow waits for only some subprocesses to return, define the criteria that
must be met before processing continues:
-
To wait for when a condition to return a true value:
- In the Exit iteration list, select On when.
- In the When field, press the Down Arrow key and select the name of a when condition.
-
To wait for a specific number of subprocesses to return:
- In the Exit iteration list, select On count.
- In the Resulting with flow status field, enter a status value that the parent flow compares with the return value of each subprocess.
- In the Number of paths field, enter the minimum number of subprocesses that must finish processing and return a value that equals the status in the Resulting with flow status field.
-
To wait for when a condition to return a true value:
- Click + Add a flow.
- Expand the Specify a flow rule for this subprocess section.
- In the Name field, enter a clear description of the subprocess.
-
In the
Flow rule
field, press the
Down
Arrow
key and select the name of a flow to run.
If the flow supports input parameters, additional fields are displayed for you to define name-value pairs.
-
On the
Subprocess
tab, configure the context of the
subprocess.
- To work on the current case, from the Define flow list, select On current page.
- To work on a specific case, from the Define flow list, select On specific work item. Complete the Work property, Class , and Page name fields.
- To work on an embedded page, from the Define flow list, select On embedded page. Complete the Page property and Class field names.
- Close the property panel by c lick inh Submit .
- Click Save.
For each subprocess that runs when the parent flow reaches the Split Join shape:
When all subprocesses are configurd:
Previous topic Adding a results-based path to a flow Next topic Responding to business exceptions in a flow