Coding asynchronous messages

When receiving asynchronous messages (sent with ATTACH and SCHEDULER function management headers) from IMS, CICS® invokes a CICS-supplied mirror transaction to obtain these incoming messages from the session.

The mirror transaction is CICS's name for the SCHEDULER process. This mirror transaction examines the incoming data stream and schedules (using START) the transaction that is to be initiated as a result of the incoming DPN or the first four characters of the data. The receiving CICS transaction is assumed to be one of the following:
  • ISC edit (ISCE), the default DPN set by IMS
  • The transaction whose identifier was placed in the DPN field of the ATTACH FM header by IMS's wrapping of the incoming RDPN (the RTRANSID specified on the CICS START)
  • A transaction whose identifier has been supplied by an MFS MOD

CICS uses the PRN in the incoming message as the TERMID parameter of the START command so that the transaction is initiated and owns the CICS terminal (if applicable) to which this message should be written.

A SYNCPOINT command is now issued to return the appropriate response to IMS and to complete the scheduling of the asynchronous transaction. Following the sync point, a RETURN command is issued to terminate the transaction and free the session. The response returned to IMS causes the output asynchronous message to be dequeued from the IMS output queue.