Local queuing of START commands

If a remote system is unavailable, either because it is not active or because a connection cannot be established, an attempt to function ship a START request to the remote system usually results in the SYSIDERR condition being returned to the application.

Provided that the remote system is directly connected to this CICS system, and that you specify the NOCHECK option on the START command, you can arrange for the request to be queued locally, and forwarded when the required link is in service.

You cannot cancel a START request while it remains on the local queue. The request can be canceled only when the required link is back in service, the request has been sent to the target region, and before the request is run.

A SYSIDERR condition is also returned when there is a connection to the remote system, but there are no sessions available and you have chosen not to queue the request in the issuing region. You can specify local queuing in two ways:
  1. Specify LOCALQ(YES) on the local definition of the remote transaction. The LOCALQ option specifies that local queuing is used, where necessary, for all requests from the local system for a particular remote transaction.

    For information about the LOCALQ option, see TRANSACTION attributes.

  2. Use an XISLCLQ or XISQLCL global user exit program.

    XISLCLQ is invoked only for function-shipped EXEC CICS START NOCHECK commands, which are scheduled for a non-IPIC connection, when these conditions apply:

    • The remote system is unavailable, or
    • A connection exists to the remote system but there no sessions are available, and either the number of requests currently queued in the issuing region has reached the maximum specified on the QUEUELIMIT option of the CONNECTION definition or your XZIQUE or XISCONA global user exit program has specified that the request is not to be queued in the issuing region.
    XISQLCL is invoked for EXEC CICS START NOCHECK commands, which are scheduled for an IPIC connection, when these conditions apply:
    • The IPIC connection is not acquired.
    • A session is not available and CICS® does not queue the request for a new session.
    If the connection resource is discarded, any requests that you have added to the local queue are lost.

    Your user exit program can decide, on a request-by-request basis, whether to queue locally.

    For programming information about the XISCONA, XISLCLQ, and XISQLCL global user exits, see Intersystem communication program exits, XISCONA, XISLCLQ, and XISQLCL.