This example demonstrates how to use the MQGET call to remove a message from a queue. This extract is not taken from the sample applications supplied with WebSphere(R) MQ.
·
·
·
* * CONNECT TO QUEUE MANAGER * CONN DS 0H
·
·
·
* * OPEN A QUEUE FOR GET * OPEN DS 0H
·
·
·
* * R4,R5,R6,R7 = WORK REGISTER. * GET DS 0H LA R4,MQMD SET UP ADDRESSES AND LA R5,MQMD_LENGTH LENGTH FOR USE BY MVCL LA R6,WMD INSTRUCTION, AS MQMD IS LA R7,WMD_LENGTH OVER 256 BYES LONG. MVCL R6,R4 INITIALIZE WORKING VERSION * OF MESSAGE DESCRIPTOR * MVC WGMO_AREA,MQGMO_AREA INITIALIZE WORKING MQGMO * LA R5,BUFFER_LEN RETRIEVE THE BUFFER LENGTH ST R5,BUFFLEN AND SAVE IT FOR MQM USE * * * ISSUE MQI GET REQUEST USING REENTRANT FORM OF CALL MACRO * * HCONN WAS SET BY PREVIOUS MQCONN REQUEST * HOBJ WAS SET BY PREVIOUS MQOPEN REQUEST * CALL MQGET, X (HCONN, X HOBJ, X WMD, X WGMO, X BUFFLEN, X BUFFER, X DATALEN, X COMPCODE, X REASON), X VL,MF=(E,CALLLST) * LA R5,MQCC_OK C R5,COMPCODE BNE BADCALL *
·
·
·
BADCALL DS 0H
·
·
·
* * CONSTANTS * CMQMDA DSECT=NO,LIST=YES CMQGMOA DSECT=NO,LIST=YES CMQA * * WORKING STORAGE DSECT * WORKSTG DSECT * COMPCODE DS F REASON DS F BUFFLEN DS F DATALEN DS F OPTIONS DS F HCONN DS F HOBJ DS F * BUFFER DS CL80 BUFFER_LEN EQU *-BUFFER * WMD CMQMDA DSECT=NO,LIST=NO WGMO CMQGMOA DSECT=NO,LIST=NO * CALLLST CALL ,(0,0,0,0,0,0,0,0,0,0,0),VL,MF=L *
·
·
·
END
Notices |
Downloads |
Library |
Support |
Feedback
![]() ![]() |
csq035n |