Put a message using MQPUT1
This example demonstrates how to use the MQPUT1 call.
This extract is not taken from the sample applications supplied with IBM MQ .%INCLUDE SYSLIB(CMQEPP); %INCLUDE SYSLIB(CMQP); ⋮ /*********************************************************/ /* WORKING STORAGE DECLARATIONS */ /*********************************************************/ DCL COMPCODE BINARY FIXED (31); DCL REASON BINARY FIXED (31); DCL HCONN BINARY FIXED (31); DCL OPTIONS BINARY FIXED (31); DCL BUFFLEN BINARY FIXED (31); DCL BUFFER CHAR(80); ⋮ DCL REPLY_TO_QUEUE CHAR(48) INIT('PL1.REPLY.QUEUE'); DCL QUEUE_NAME CHAR(48) INIT('PL1.LOCAL.QUEUE'); DCL PL1_TEST_MESSAGE CHAR(80) INIT('***** THIS IS ANOTHER TEST MESSAGE *****'); ⋮ /*********************************************************/ /* LOCAL COPY OF OBJECT DESCRIPTOR, MESSAGE DESCRIPTOR */ /* AND PUT MESSAGE OPTIONS */ /*********************************************************/ DCL 1 LMQOD LIKE MQOD; DCL 1 LMQMD LIKE MQMD; DCL 1 LMQPMO LIKE MQPMO; ⋮ /*********************************************************/ /* SET UP OBJECT DESCRIPTOR AS REQUIRED. */ /*********************************************************/ LMQOD.OBJECTTYPE = MQOT_Q; LMQOD.OBJECTNAME = QUEUE_NAME; /*********************************************************/ /* SET UP MESSAGE DESCRIPTOR AS REQUIRED. */ /*********************************************************/ LMQMD.MSGTYPE = MQMT_REQUEST; LMQMD.PRIORITY = 5; LMQMD.PERSISTENCE = MQPER_PERSISTENT; LMQMD.REPLYTOQ = REPLY_TO_QUEUE; LMQMD.REPLYTOQMGR = ' '; LMQMD.MSGID = MQMI_NONE; LMQMD.CORRELID = MQCI_NONE;
/*********************************************************/ /* SET UP PUT MESSAGE OPTIONS AS REQUIRED */ /*********************************************************/ LMQPMO.OPTIONS = MQPMO_NO_SYNCPOINT; /*********************************************************/ /* SET UP LENGTH OF MESSAGE BUFFER AND THE MESSAGE */ /*********************************************************/ BUFFLEN = LENGTH(BUFFER); BUFFER = PL1_TEST_MESSAGE; CALL MQPUT1 (HCONN, LMQOD, LMQMD, LMQPMO, BUFFLEN, BUFFER, COMPCODE, REASON); /*********************************************************/ /* TEST THE COMPLETION CODE OF THE PUT1 CALL. */ /* IF THE CALL HAS FAILED ISSUE AN ERROR MESSAGE SHOWING */ /* THE COMPLETION CODE AND THE REASON CODE. */ /*********************************************************/ IF COMPCODE ¬= MQCC_OK THEN DO; ⋮ CALL ERROR_ROUTINE; END;Parent topic: PL/I examples