When you add an Or-Split gateway, Studio adds the corresponding Join gateway. After adding the Or-Split gateway you need to define the different threads by adding flow objects and transitions between the Or-Split and the Join gateway.
You can configure the Or-Split-Join circuit to use multiple copies of the process instance, or to use the same process instance for all the defined threads. To do this you need to edit the Or-Split properties and modify the Generate Copies property.
Typically you select the Generate Copies properties when the different threads do not modify the instance information. If any of the threads modify the instance information you need to define how to merge this information by adding PBL code to the Join gateway. If you do not define how to merge the instance data then the modifications are lost.
If you need to share information between the different threads of the Or-Split-Join circuit then you should not select Generate Copies. In this way all the threads use and modify the original instance.
You should add Or-Split-Join circuits in automatic role lanes. You can add Or-Split-Join circuits in user-defined roles but this does not add any information to the process. The engine runs the Or-Split and Join gateways without the user's intervention.
You must connect the Or-Split gateway to the process flow using an inbound transition. You must add one outbound unconditional transition to the Or-Split gateway. You may add it one or more outbound conditional transitions.
The Join gateway in an Or-Split-Join circuit allows multiple inbound transitions. You must connect the Join gateway to the process flow using one or more outbound transitions.
An error appears in the Problems View if the inbound or outbound transitions that connect the Or-Split-Join circuit to the process flow are missing.
The flow objects within an Or-Split-Join circuit can have transitions to other flow object within the Or-Split-Join circuit. You cannot define transitions to flow objects outside the Or-Split-Join circuit, with the exception of Grab activities. However the outbound transition of the Grab activity should connect it to an activity in the Or-Split-Join circuit or to the End of the process.