If The System Is Unavailable Or Unknown; Invoking The Dynamic Routing Program At End Of Routed Transactions; Invoking The Dynamic Routing Program On Abend - IBM SC34-6814-04 Customization Manual

Cics transaction server for z/os
Table of Contents

Advertisement

If the system is unavailable or unknown

The dynamic routing program is invoked again if the remote system name that you
specify on the route selection call is not known or is unavailable. When this
happens, you have a choice of actions:
v You can tell CICS not to continue trying to route the transaction, by issuing a
v You can tell CICS to terminate the transaction without issuing a message or
v If the reason for the error is that no sessions are immediately available to the
v You can change the sysid, and issue a return code of '0' in DYRRETC to try to
A count of the times the routing program has been invoked for routing purposes for
this transaction is passed in field DYRCOUNT. Use this count to help you decide
when to stop trying to route the transaction.

Invoking the dynamic routing program at end of routed transactions

If you want your dynamic routing program to be invoked again when the routed
transaction has completed, you must set the DYROPTER field in the
communications area to 'Y' before returning control to CICS. You might want to do
this, for example, if you are keeping a count of the number of transactions currently
executing on a particular CICS region. However, during this reinvocation, the
dynamic routing program should update only its own resources. This is because, at
this stage, the final command to the terminal from the application program in the
AOR may be pending, and the dynamic routing program is about to terminate.

Invoking the dynamic routing program on abend

If you have set DYROPTER to 'Y', and the routed transaction abends, the dynamic
routing program is invoked again to notify it of the abend. You could use this
invocation to initiate a user-defined program in response to the transaction abend.
If the routed transaction abends, the DFHAPRT program in the TOR:
1. Passes back a response to the CICS transaction manager indicating that a
2. If the dynamic routing program requested to be reinvoked at termination of the
3. Returns to CICS transaction manager.
594
Customization Guide
return code of '8' in DYRRETC. If the reason for the error is that the system is
unavailable, CICS issues message 'DFHAC2014' or 'DFHAC2029' to the terminal
user. If the reason for the error is that the system is unknown, DFHAPRT abends
the transaction.
abend by placing a return code of '4' in DYRRETC. However, note the above
warning about setting return code '4'.
remote system, you can reset field DYRQUEUE to 'Y' (it must previously have
been set to 'N'—the request is not to be queued—for this error to occur), issue a
return code of '0' in DYRRETC, and try to route the transaction again.
If you try to route the transaction again without resetting DYRQUEUE to 'Y' (and
without changing the sysid), and the system is still unavailable, DFHDYP is
reinvoked. If you then choose to set return code '8', CICS terminates the
transaction with message 'DFHAC2030'.
route the transaction again. Note that if you change the sysid, you may also need
to supply a different remote transaction ID. You need to do this if, for example,
the transaction has a different remote transaction name on each system.
transaction abend has occurred
transaction (by setting DYROPTER to 'Y' when invoked for routing), reinvokes
the dynamic routing program

Advertisement

Table of Contents
loading

Table of Contents