Selecting a specific target region

SM_ROUTE requests that a specific target region is selected for routing. Use SM_ROUTE when you have application- or data-dependent requirements for explicit routing. For example, you might want to route a transaction associated with a specific user ID to a specific target region.

After an SM_ROUTE call, the result of the operation is stored in the response and reason fields of the EYURWCOM communication area.

A sample SM_ROUTE call is show here:
   CALL WAPIENPT(DA_TOKEN,SM_ROUTE)
DA_TOKEN identifies the dynamic routing API token supplied via the EYURWCOM communication area. This token is used by EYU9WAPI and must not be altered.

Actions during route selection

The actions during route selection are:
  • If there is only one connection between a requesting region and the target region, you can supply either the SYSID or the APPLID of the target region (CICSPlex® SM will determine the appropriate, corresponding ID). Place the APPLID in the WCOM_SEL_AOR field of the EYURWCOM communication area. Place the SYSID in the WCOM_SEL_SYSID field.

    If there are multiple connections between a requesting region and the target region, supply both the SYSID and the APPLID, as described previously, to ensure that the correct target region is selected. Note that when both the SYSID and APPLID are supplied, they are not validated.

    The target region need not be defined to CICSPlex SM. The affinity status is not checked. Thus, no affinity is established as a result of this call and, if an affinity was in effect, it is ignored.

  • Issuing SM_ROUTE during Route Notify processing causes an exception response to be returned.

Actions during routing attempt complete

None, but you can tidy up and release any resources at this stage.

Actions during route selection error

The EYU9WRAM program may issue a message and terminate. You may then issue SM_ROUTE again specifying a different target region, or issue SM_SCOPE and SM_BALANCE.

Actions during transaction termination

  • EYU9WRAM should terminate any resources it may have acquired.
  • Calling any API function causes an exception response to be returned.

Actions during transaction abend

  • Calling any API function causes an exception response to be returned.

Actions during transaction initiation

At transaction initiation:
  • EYU9WRAM should terminate any resources it may have acquired.
  • Calling any API function causes an exception response to be returned.