+

Search Tips | Advanced Search

Trigger monitors on IBM i

On IBM® i, instead of the runmqtrm control command, use the IBM MQ for IBM i CL command STRMQMTRM.

Use the STRMQMTRM command as follows:
STRMQMTRM INITQNAME(InitQ) MQMNAME(QMgrName)

Details are as for runmqtrm.

The following sample programs are also provided, which we can use as models to write your own trigger monitors:

Both the trigger monitor and the trigger server pass an MQTMC2 structure to the programs that they start. For a description of this structure, see MQTMC2. Both of these samples are delivered in both source and executable forms.

Because these trigger monitors can invoke only native IBM i programs, they cannot trigger Java programs directly, because Java classes are located in the IFS. However, Java programs can be triggered indirectly by triggering a CL program that then invokes the Java program and passes across the TMC2 structure. The minimum size of the TMC2 structure is 732 bytes.

Here is the source of a sample CLP:
  PGM PARM(&TMC2)
    DCL &TMC2 *CHAR LEN(800)
      ADDENVVAR ENVVAR(TM) VALUE(&TMC2)
      QSH  CMD('java_pgmname $TM')
      RMVENVVAR ENVVAR(TM)
  ENDPGM

The following trigger monitor program is provided for the IBM MQ MQI client: RUNMQTMC

Call the RUNMQTMC as follows:
CALL PGM(QMQM/RUNMQTMC) PARM('-m' QMgrName '-q' InitQ)