Trigger monitor for CICS
The amqltmc0 trigger monitor is provided for CICS®. It works in the same way as the standard trigger monitor, runmqtrm, but you run it in a different way and it triggers CICS transactions.
This topic applies only to Windows, UNIX, and Linux x86-64 systems.
It is supplied as a CICS program; define it with a 4-character transaction name. Enter the 4-character name to start the trigger monitor. It uses the default queue manager (as named in the qm.ini file or, on IBM MQ for Windows, the registry), and the SYSTEM.CICS.INITIATION.QUEUE.
If you want to use a different queue manager or queue, build the trigger monitor MQTMC2 structure: this requires you to write a program using the EXEC CICS START call, because the structure is too long to add as a parameter. Then, pass the MQTMC2 structure as data to the START request for the trigger monitor.
When we use the MQTMC2 structure, you need to supply only the StrucId, Version, QName, and QMgrName parameters to the trigger monitor as it does not reference any other fields.
Messages are read from the initiation queue and used to start CICS transactions, using EXEC CICS START, assuming the APPL_TYPE in the trigger message is MQAT_CICS. The reading of messages from the initiation queue is performed under CICS syncpoint control.
Messages are generated when the monitor starts and stops, and when an error occurs. These messages are sent to the CSMT transient data queue.
Here are the available versions of the trigger monitor:
Version | Use |
---|---|
amqltmc0 | TXSeries® for AIX , HP-UX, Linux x86-64 systems, and Oracle Solaris Version 5.1 |
amqltmc4 | TXSeries for Windows, Version 5.1 |
amqltmcc | Client bound version of the CICS trigger monitor |
- Use the MQGET call to wait for a message to arrive on the initiation queue.
- Examine the fields of the MQTM structure of the trigger message to find the name of the application to start, and the environment in which it runs.
- Issue an environment-specific start command. For example, in z/OS® batch, submit a job to the internal reader.
- Convert the MQTM structure to the MQTMC2 structure if required.
- Pass either the MQTMC2 or MQTM structure to the started application. This can contain user data.
- Associate with our application queue the application that is to serve that queue. You do this by naming the process definition object (if created) in the ProcessName attribute of the queue.
Use DEFINE QLOCAL or ALTER QLOCAL. On IBM i, we can also use CRTMQMQ or CHGMQMQ.
For more information about the trigger monitor interface, see MQTMC2.