distributed routing program is invoked for notification only—it cannot
route the request. Unless the SYSID option of the START command
specifies a remote region explicitly, the START request is
function-shipped to the target region named in the REMOTESYSTEM
option; if REMOTESYSTEM is not specified, the START executes locally.
“Daisy-chaining” is not supported. That is, once a non-terminal-related START
request has been dynamically routed to a target region it cannot be dynamically
routed from the target to a third region, even though the transaction is defined as
ROUTABLE(YES) and DYNAMIC(YES). The transaction may, however, be statically
routed from the target region to a third region.
For definitive information about which non-terminal-related START requests are
eligible for dynamic routing, see Non-terminal-related START commands, in the
CICS Intercommunication Guide.
When the distributed routing program is invoked
For non-terminal-related START requests that are eligible for enhanced routing,
CICS invokes the distributed routing program at the following points:
On the routing region:
1. Either of the following:
v For routing the request.
v For notification of a statically-routed request. This occurs when a
transaction defined as ROUTABLE(YES) is eligible for enhanced routing
but not for dynamic routing because one or both of the following applies:
– The transaction definition specifies DYNAMIC(NO).
– The SYSID option of the START command names a remote region
explicitly.
The routing program is not able to route the request. It could, however,
do other things.
2. If an error occurs in route selection—for example, if the target region
returned by the routing program on the route selection call is unavailable.
This gives the routing program the opportunity to specify an alternate target.
This process iterates until the routing program selects a target that is
available or sets a non-zero return code.
3. After CICS has tried (successfully or unsuccessfully) to route the request to
the target region.
This invocation signals that (unless the routing region and the target region
are one and the same) the routing region’s responsibility for this transaction
has been discharged. The routing program might, for example, use this
invocation to release any resources that it has acquired on behalf of the
transaction.
On the target region:
These invocations occur only if the target region is CICS TS OS/390, Version
1.3 or later and the routing program on the routing region has specified that it
should be reinvoked on the target region:
1. When the transaction associated with the request starts on the target
region.
2. If the transaction ends successfully.
3. If the transaction abends.
638 Customization Guide