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.

Note: Each subprocess runs asynchronously but not in parallel. When a user works on an assignment in one subprocess, the case is locked, which prevents others users from working on assignments in other subprocesses.
  1. Add the Split Join shape to your flow.

    1. Open a flow by searching for it or by using the Application Explorer.
    2. On the Diagram tab, click the Flow shapes icon, and then click Advanced > Split Join.

    3. Drag the Split Join shape to a position on the flow diagram, based on the order of events in the flow.

    4. Connect the Split Join shape, by dragging connector end points to connection points on different shapes in the flow.

  2. Double-click the Split Join shape to open the property panel.

  3. In the Join list, select one of the following options to define how the parent flow waits to continue processing:

    • All - Waits for all subprocesses 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.

  4. 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:

    1. In the Exit iteration list, select On when .

    2. 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:

    1. In the Exit iteration list, select On count .

    2. In the Resulting with flow status field, enter a status value that the parent flow compares with the return value of each subprocess.

    3. 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.

  5. Configure each subprocess that runs when the parent flow reaches the Split Join shape.

    1. Click + Add a flow .

    2. Expand the Specify a flow rule for this subprocess section.

    3. In the Name field, enter a clear description of the subprocess.

    4. 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.

    5. On the Subprocess tab, configure the context of the subprocess.

      To work on the current case:

  6. Click Submit to close the property panel.

  7. Click Save .