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 transaction name.
Changing the bridge request TRANSID
The TRANSID of the target user transaction is passed to the dynamic routing
program in DYRTRAN. You can change this by overwriting the DYRTRAN field in
the communications area.
Changing the Link3270 bridge request transaction priority
You can change the dispatching priority of the user transaction by specifying the
priority in DYRPRTY and putting “Y” in DYRRTPRI. This priority will override the
priority specified in the TRANSACTION resource definition in the AOR.
Rejecting a Link3270 bridge 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.
The routing program can reject the request by returning a value of 4 or 8 in field
DYRRETC.
The BRIH returned to the client contains a return code value indicating that the
routing program has rejected the request. The BRIH compcode gives further
information about the last attempt to route the request by the routing program. If the
routing program placed a return code value of 8 into field DYRRETC a message is
issued with the details of the last attempt to route the request.
Returning a value in DYRRETC has no effect when the routing program is invoked
at request termination or when a notify call is being made.
Handling route selection errors of Link3270 bridge requests
If an error occurs in route selection—for example, if the SYSID returned by the
dynamic routing program is unavailable or unknown, or the link fails on the specified
target region—the dynamic routing program is invoked again. When this happens,
you have a choice of actions:
v You can tell CICS not to continue trying to route the request, by issuing a
non-zero return code in DYRRETC.
v You can change the sysid, and issue a return code of ‘0’ in DYRRETC to try to
route the request again. Note that if you change the sysid, you may also need to
supply a different transaction ID.
A count of the times the routing program has been invoked for routing purposes for
this request is passed in field DYRCOUNT. Use this count to help you decide when
to stop trying to route the transaction.
Using the XPCERES exit to check the availability of resources on the
target region
You can use an XPCERES global user exit program to check that all resources
required by the 3270 user transaction are available on the target region.
Chapter 17. Writing a dynamic routing program 605