IBM SC34-6814-04 Server User Manual


 
v After the routed transaction has completed, if the routing program has requested
to be reinvoked at termination.
v If the routed transaction abends, if the routing program has requested to be
reinvoked at termination.
Figure 57 shows the points at which the dynamic routing program is invoked.
Information passed to the dynamic routing program
The CICS relay program, DFHAPRT, passes information to the dynamic routing
program by means of a communications area. The communications area contains
fields that are mapped by the DSECT DFHDYPDS, and is described in detail in
“Parameters passed to the dynamic routing program” on page 607. For transaction
routing, some of the data passed to the dynamic routing program in the
communications area are:
v The SYSID of the remote CICS region specified when the transaction was
installed
v The netname of the remote CICS region
v The name of the remote transaction
v The dispatch priority (MRO only) of the remote transaction
v Whether or not the request is to be queued if no sessions are immediately
available to the remote CICS region
v The address of the remote transaction’s communications area
v The address of a copy of the transaction’s terminal input/output area (TIOA)
v A task-local user data area.
The communications area DSECT contains comments to describe the information
passed.
The dynamic routing program can accept these values, or change them, or tell
CICS not to continue routing the transaction. The values used depend on the
function being performed; that is, some values may be ignored.
The information passed to the dynamic routing program indicates whether the
transaction is being routed dynamically or statically. If the transaction is being
routed dynamically, the dynamic routing program can change the SYSID or
netname to determine where the transaction is to run.
Route selection
Notification
Route selection error
Transaction/link request termination
Transaction abend
Figure 57. When the dynamic routing program is invoked
Chapter 17. Writing a dynamic routing program 591