Template
|
Robot
|
Change Issue Process
|
Sync on Request Association
|
Change Issue Process
|
Listen for Request Disassociation
|
Change Issue Process
|
Sync on Request Complete
|
1a) This conditional router checks if the change issue is already associated to a change request. If so, the workflow continues to the conditional at 3a; otherwise, it proceeds to the sync robot at 1b.
|
|
1b) The Sync on Request Association robot waits until the event ISSUE_FORMALIZED is emitted for the primaryBusinessObject (the change issue), signaling the change issue has been attached to a change request. The workflow then continues to the conditional at 2a and the conditional at 3a simultaneously.
|
|
2a) This conditional router checks if the change issue has been immediately disassociated with the change request. If so, the workflow cycles back to 1a; otherwise, it continues to the sync robot at 2b.
|
3a) This conditional router checks the state of the associated change request. If it is in state Completed, the workflow continues to 3b (the end of the process). If it is in state Cancelled, the workflow loops back to a point near the beginning of the process. Otherwise, the workflow continues to the sync robot at 3b.
|
2b) The Listen for Request Disassociation sync robot listens for the event ISSUE_UNFORMALIZED on the primaryBusinessObject, signaling the change issue has been disassociated from its change request. This causes the sync robot at 3b (‡) to terminate, and the workflow to loop back to the conditional at 1a.
|
3b) The Sync on Request Complete robot waits until the state of the associated change request changes. If the state is Completed, the workflow continues to 3b (the end of the process). If it is in state Cancelled, the workflow loops back to a point near the beginning of the process. Otherwise, the sync robot continues to wait for one of those two states.
|