Putting a message using MQPUT

This example demonstrates how to use the MQPUT call using context. This extract is not taken from the sample applications supplied with WebSphere(R) MQ.


%INCLUDE SYSLIB(CMQP);
%INCLUDE SYSLIB(CMQEPP);
:
/*********************************************************/
/* WORKING STORAGE DECLARATIONS                          */
/*********************************************************/
DCL COMPCODE                  BINARY FIXED (31);
DCL REASON                    BINARY FIXED (31);
DCL HCONN                     BINARY FIXED (31);
DCL HOBJ                      BINARY FIXED (31);
DCL OPTIONS                   BINARY FIXED (31);
DCL BUFFLEN                   BINARY FIXED (31);
DCL BUFFER                    CHAR(80);

  ·
  ·
  ·
DCL PL1_TEST_MESSAGE CHAR(80) INIT('***** THIS IS A TEST MESSAGE *****');
  ·
  ·
  ·
**********************************************************/ /* LOCAL COPY OF MESSAGE DESCRIPTOR */ /* AND PUT MESSAGE OPTIONS */ /*********************************************************/ DCL 1 LMQMD LIKE MQMD; DCL 1 LMQPMO LIKE MQPMO;
  ·
  ·
  ·
/*********************************************************/ /* SET UP MESSAGE DESCRIPTOR */ /*********************************************************/ LMQMD.MSGTYPE = MQMT_DATAGRAM; LMQMD.PRIORITY = 1; LMQMD.PERSISTENCE = MQPER_PERSISTENT; LMQMD.REPLYTOQ = ' '; LMQMD.REPLYTOQMGR = ' '; LMQMD.MSGID = MQMI_NONE; LMQMD.CORRELID = MQCI_NONE; /*********************************************************/ /* SET UP PUT MESSAGE OPTIONS */ /*********************************************************/ LMQPMO.OPTIONS = MQPMO_NO_SYNCPOINT; /*********************************************************/ /* SET UP LENGTH OF MESSAGE BUFFER AND THE MESSAGE */ /*********************************************************/ BUFFLEN = LENGTH(BUFFER); BUFFER = PL1_TEST_MESSAGE; /*********************************************************/ /* */ /* HCONN WAS SET BY PREVIOUS MQCONN REQUEST. */ /* HOBJ WAS SET BY PREVIOUS MQOPEN REQUEST. */ /* */ /*********************************************************/ CALL MQPUT (HCONN, HOBJ, LMQMD, LMQPMO, BUFFLEN, BUFFER, COMPCODE, REASON);
/*********************************************************/
/* TEST THE COMPLETION CODE OF THE PUT 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;