This appendix contains the AMQSAMP4 sample OS/400(R) CL program.
/********************************************************************/ /* */ /* Program name: AMQSAMP4 */ /* */ /* Description: Sample CL program defining MQM queues */ /* to use with the sample programs */ /* Can be run, with changes as needed, after */ /* starting the MQM */ /* */ /* Statement: Licensed Materials - Property of IBM */ /* */ /* 5724-B41 */ /* (C) Copyright IBM Corporation 1993, 2002. */ /* */ /********************************************************************/ /* */ /* Function: */ /* */ /* */ /* AMQSAMP4 is a sample CL program to create or reset the */ /* MQI resources to use with the sample programs. */ /* */ /* This program, or a similar one, can be run when the MQM */ /* is started - it creates the objects if missing, or resets */ /* their attributes to the prescribed values. */ /* */ /* */ /* */ /* */ /* Exceptions signaled: none */ /* Exceptions monitored: none */ /* */ /* AMQSAMP4 has no parameters. */ /* */ /********************************************************************/ PGM /********************************************************************/ /* EXAMPLES OF DIFFERENT QUEUE TYPES */ /* */ /* Create local, alias and remote queues */ /* */ /* Uses system defaults for most attributes */ /* */ /********************************************************************/ /* Create a local queue */ CRTMQMQ QNAME('SYSTEM.SAMPLE.LOCAL') + QTYPE(*LCL) REPLACE(*YES) + + TEXT('Sample local queue') /* description */+ SHARE(*YES) /* Shareable */+ DFTMSGPST(*YES) /* Persistent messages OK */ /* Create an alias queue */ CRTMQMQ QNAME('SYSTEM.SAMPLE.ALIAS') + QTYPE(*ALS) REPLACE(*YES) + + TEXT('Sample alias queue') + DFTMSGPST(*YES) /* Persistent messages OK */+ TGTQNAME('SYSTEM.SAMPLE.LOCAL') /* Create a remote queue - in this case, an indirect reference */ /* is made to the sample local queue on OTHER queue manager */ CRTMQMQ QNAME('SYSTEM.SAMPLE.REMOTE') + QTYPE(*RMT) REPLACE(*YES) + + TEXT('Sample remote queue')/* description */+ DFTMSGPST(*YES) /* Persistent messages OK */+ RMTQNAME('SYSTEM.SAMPLE.LOCAL') + RMTMQMNAME(OTHER) /* Queue is on OTHER */ /* Create a transmission queue for messages to queues at OTHER */ /* By default, use remote node name */ CRTMQMQ QNAME('OTHER') /* transmission queue name */+ QTYPE(*LCL) REPLACE(*YES) + TEXT('transmision queue to OTHER') + USAGE(*TMQ) /* transmission queue */ /********************************************************************/ /* SPECIFIC QUEUES AND PROCESS USED BY SAMPLE PROGRAMS */ /* */ /* Create local queues used by sample programs */ /* Create MQI process associated with sample initiation queue */ /* */ /********************************************************************/ /* General reply queue */ CRTMQMQ QNAME('SYSTEM.SAMPLE.REPLY') + QTYPE(*LCL) REPLACE(*YES) + + TEXT('General reply queue') + DFTMSGPST(*YES) /* Persistent messages OK */ /* Queue used by AMQSINQA */ CRTMQMQ QNAME('SYSTEM.SAMPLE.INQ') + QTYPE(*LCL) REPLACE(*YES) + + TEXT('queue for AMQSINQA') + SHARE(*YES) /* Shareable */+ DFTMSGPST(*YES)/* Persistent messages OK */+ + TRGENBL(*YES) /* Trigger control on */+ TRGTYPE(*FIRST)/* Trigger on first message*/+ PRCNAME('SYSTEM.SAMPLE.INQPROCESS') + INITQNAME('SYSTEM.SAMPLE.TRIGGER') /* Queue used by AMQSSETA */ CRTMQMQ QNAME('SYSTEM.SAMPLE.SET') + QTYPE(*LCL) REPLACE(*YES) + + TEXT('queue for AMQSSETA') + SHARE(*YES) /* Shareable */ + DFTMSGPST(*YES)/* Persistent messages OK */ + + TRGENBL(*YES) /* Trigger control on */ + TRGTYPE(*FIRST)/* Trigger on first message*/+ PRCNAME('SYSTEM.SAMPLE.SETPROCESS') + INITQNAME('SYSTEM.SAMPLE.TRIGGER') /* Queue used by AMQSECHA */ CRTMQMQ QNAME('SYSTEM.SAMPLE.ECHO') + QTYPE(*LCL) REPLACE(*YES) + + TEXT('queue for AMQSECHA') + SHARE(*YES) /* Shareable */ + DFTMSGPST(*YES)/* Persistent messages OK */ + + TRGENBL(*YES) /* Trigger control on */ + TRGTYPE(*FIRST)/* Trigger on first message*/+ PRCNAME('SYSTEM.SAMPLE.ECHOPROCESS') + INITQNAME('SYSTEM.SAMPLE.TRIGGER') /* Initiation Queue used by AMQSTRG4, sample trigger process */ CRTMQMQ QNAME('SYSTEM.SAMPLE.TRIGGER') + QTYPE(*LCL) REPLACE(*YES) + TEXT('trigger queue for sample programs') /* MQI Processes associated with triggered sample programs */ /* */ /***** Note - there are versions of the triggered samples ******/ /***** in different languages - set APPID for these ******/ /***** process to the variation you want to trigger ******/ /* */ CRTMQMPRC PRCNAME('SYSTEM.SAMPLE.INQPROCESS') + REPLACE(*YES) + + TEXT('trigger process for AMQSINQA') + ENVDATA('JOBPTY(3)') /* Submit parameter */ + /** Select the triggered program here **/ + APPID('AMQSINQA') /* C */ + /* APPID('AMQ0INQA') /* COBOL */ + /* APPID('AMQ3INQ4') /* RPG - ILE */ CRTMQMPRC PRCNAME('SYSTEM.SAMPLE.SETPROCESS') + REPLACE(*YES) + + TEXT('trigger process for AMQSSETA') + ENVDATA('JOBPTY(3)') /* Submit parameter */ + /** Select the triggered program here **/ + APPID('AMQSSETA') /* C */ + /* APPID('AMQ0SETA') /* COBOL */ + /* APPID('AMQ3SET4') /* RPG - ILE */ CRTMQMPRC PRCNAME('SYSTEM.SAMPLE.ECHOPROCESS') + REPLACE(*YES) + + TEXT('trigger process for AMQSECHA') + ENVDATA('JOBPTY(3)') /* Submit parameter */ + /** Select the triggered program here **/ + APPID('AMQSECHA') /* C */ + /* APPID('AMQ0ECHA') /* COBOL */ + /* APPID('AMQ3ECH4') /* RPG - ILE */ /********************************************************************/ /* Normal return. */ /********************************************************************/ RETURN ENDPGM /********************************************************************/ /* END OF AMQSAMP4 */ /********************************************************************/
Notices |
Downloads |
Library |
Support |
Feedback
![]() ![]() |
sj140102 |