Follow the sequence of activations of a BTS process, SALES1234567890.
The activities that make up the process run on two CICS® regions.
For clarity, the example does not show the activations of any other
processes that might also be running in these regions.
In this example, an application running on region SYS1 defines
a new process, SALES1234567890, and requests it to run. The root activity
of the new process begins running on SYS1. It defines and runs an
activity B, which executes synchronously. When control returns to
the root activity, it defines activities C and D and schedules them
to run asynchronously. After the root activity has returned, activity
C starts on SYS1 and activity D starts on SYS2.
Activity C schedules child activities E and F to run asynchronously
and returns. E and F run on different systems. When each of its child
activities completes, C is reactivated and checks the completion status
of the child. Lastly, C completes normally, which causes the root
activity to be reactivated.
Activity D defines a child activity G and schedules it to run asynchronously.
Later, another transaction issues ACQUIRE ACTIVITYID and CANCEL ACQACTIVITY
commands against activity G. G completes in a FORCED state. D is reactivated
and discovers what has happened to G with a CHECK ACTIVITY command.
In response to G's failure, D defines a new activity H and requests
it to run asynchronously. D then returns and H runs on the other region.
When H completes normally, D is reactivated and completes normally.
This causes the root activity to be reactivated. The root activity
issues a CHECK ACTIVITY command to see how D completed, and then completes
normally, ending the process.
Note: For conciseness, some commands
that could result in audit records being written - for example, PUT
CONTAINER ACQPROCESS and SUSPEND - are omitted from the example.