Running an exit program to be started by the CICS SPI

If your task-related exit program has the SPI option of the EXEC CICS ENABLE PROGRAM command specified (or your program has the SPI bit-mask in the schedule flag word), your program is started when you use the EXEC CICS INQUIRE EXITPROGRAM command to query whether the exit program is connected to its resource manager, and its entryname qualifier.

For information about the INQUIRE EXITPROGRAM command, see INQUIRE EXITPROGRAM.

Procedure

  1. When started for SPI calls, your exit program indicates whether it is connected to its external resource manager, by returning the appropriate value in the first field addressed by the caller parameter list.
    • The following values are returned:
      UERTCONN
      (X'80') The exit is connected to its resource manager.
      UERTNCONN
      (X'40') The exit is not connected to its resource manager.
    • Returns the resource manager qualifier; that is, the entryname qualifier, as returned by the UEPRMQUA parameter of an API call, and used on an EXEC CICS RESYNC command, in the second field addressed by the caller parameter list.

    Typically, both pieces of information are kept in the global work area of the exit program. The caller parameter list for SPI calls is described in CICS SPI parameters.

  2. The RMI SPI call permits a task-related user exit to be called by long-running monitor tasks, even if it has been disabled and reenabled since it was last called by the task. All other types of RMI call fail in this situation.
    When started for an SPI call, your exit program must not rely on the contents of the task local work area. If the exit has been disabled and reenabled, a new version might have been loaded, which might have a different mapping of the task local work area. The long-running task, however, is running with the original task local work area allocated to it on its first call.