Subprocesses are used to break complex tasks into a hierarchy of easier-to-handle units. They are most appropriate for seamlessly linking the work of different departments with different processes for the purpose of trading information and coordinating collaborative tasks.
A subprocess is represented by a Subprocess Node in the parent process definition. When a Subprocess Node is reached, control is passed to the subprocess. The parent process waits for the subprocess to complete and the results to come back.
To model a subprocess:
Create the parent process definition and model the process flow.
Create the subprocess definition and model the process flow.
Add a Subprocess Node to the parent process definition.
Connect the parent to the subprocess definition.
For instructions, refer to section 9.1.1 Connecting Parent and Subprocess Definitions.
When the process definitions are connected, you can easily navigate from the parent to the subprocess definition. For instructions, refer to section 9.1.2 Navigating to Subprocess Definitions.
In both parent and subprocess definitions, specify the User Defined Attributes (UDAs) that will be passed back and forth.
Note
You can use different names for the same UDA in the process definitions involved. However, the data type must be identical. Otherwise, you cannot map the UDAs.
Define data mappings for the UDAs that need to be passed back and forth.
For instructions, refer to section 9.1.3 Defining Data Mappings for Subprocesses.
Note
Be careful when designing process definitions that have recursive subprocesses. Check all process definitions involved and ensure that there are no infinite recursions.