Setting the attributes of a queue
This example demonstrates how to use the MQSET call to change the attributes of a queue.
This extract is not taken from the sample applications supplied with IBM® 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 SELECTORCOUNT BINARY FIXED (31);
DCL INTATTRCOUNT BINARY FIXED (31);
DCL 1 SELECTOR_TABLE,
3 SELECTORS(5) BINARY FIXED (31);
DCL 1 INTATTR_TABLE,
3 INTATTRS(5) BINARY FIXED (31);
DCL CHARATTRLENGTH BINARY FIXED (31);
DCL CHARATTRS CHAR(100);
⋮
/*********************************************************/
/* SET VARIABLES FOR SET CALL */
/* SET GET AND PUT INHIBITED */
/*********************************************************/
SELECTORS(01) = MQIA_INHIBIT_GET;
SELECTORS(02) = MQIA_INHIBIT_PUT;
INTATTRS(01) = MQQA_GET_INHIBITED;
INTATTRS(02) = MQQA_PUT_INHIBITED;
SELECTORCOUNT = 2;
INTATTRCOUNT = 2;
CHARATTRLENGTH = 0;
/*********************************************************/
/* */
/* HCONN WAS SET BY PREVIOUS MQCONN REQUEST. */
/* HOBJ WAS SET BY PREVIOUS MQOPEN REQUEST. */
/* */
/*********************************************************/
CALL MQSET (HCONN,
HOBJ,
SELECTORCOUNT,
SELECTORS,
INTATTRCOUNT,
INTATTRS,
CHARATTRLENGTH,
CHARATTRS,
COMPCODE,
REASON);
/*********************************************************/
/* TEST THE COMPLETION CODE OF THE SET 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;