IBM SC33-1683-02 Server User Manual


 
When it is invoked for routing
9
(not for notification of a statically-routed request),
your routing program can, by overwriting the DYRLPROG field, specify that an
alternative program is to be linked. You can specify a local or remote program,
depending on the region to which the request is to be routed.
Care!
Be aware that, if you change the value of DYRLPROG, and the alternative
program you choose is defined as DYNAMIC(YES), the dynamic routing
program will be reinvoked for route selection.
Changing the transaction ID
A transaction identifier is always associated with each dynamic program-link
request. CICS obtains the transaction ID using the following sequence:
1. From the TRANSID option on the LINK command
2. From the TRANSID option on the program definition
3. 'CSMI', the generic mirror transaction. This is the default if neither of the
TRANSID options are specified.
When it is invoked for routing (not for notification of a statically-routed request), your
routing program can change the remote transaction ID by overwriting the
DYRTRAN field in the communications area.
Note: If you use CICSPlex SM to route your program-link requests, the transaction
ID becomes highly significant, because CICSPlex SM’s routing logic is
transaction-based. CICSPlex SM routes each DPL request according to the
rules specified for its associated transaction.
The CICSPlex SM system programmer can use the EYU9WRAM
user-replaceable module to change the transaction ID associated with a DPL
request.
Telling CICS whether to route or terminate a DPL request
When the routing program is invoked for routing, it can choose whether the link
request should be routed or rejected. If you want the request to be routed, whether
you have changed any values or not, return a zero value to CICS in field
DYRRETC of the communications area. When you return control to CICS with
return code zero, CICS first compares the returned SYSID with its own local SYSID:
v If the SYSIDs are the same (or the returned SYSID is blank) CICS executes the
link request locally.
v If the two SYSIDs are not the same, CICS routes the request to the remote CICS
region, using the returned program and transaction names.
To make CICS reject the link request, return a non-zero value. The program that
issued the EXEC CICS LINK command receives a PGMIDERR condition, with a
RESP2 value of 25.
Returning a value in DYRRETC has no effect when the routing program is invoked
for notification or at termination of the request.
9. By “invoked for routing” we mean both “invoked for route selection” and “invoked because an error occurred in route selection”.
dynamic routing of DPL requests
560
CICS TS for OS/390: CICS Customization Guide
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|