Inquiring about and setting object attributes

Attributes are the properties that define the characteristics of an IBM MQ object.

They affect the way that a queue manager processes an object. The attributes of each type of IBM MQ object are described in detail in Attributes of objects.

Some attributes are set when the object is defined, and can be changed only by using the IBM MQ commands; an example of such an attribute is the default priority for messages put on a queue. Other attributes are affected by the operation of the queue manager and can change over time; an example is the current depth of a queue.

We can inquire about the current values of most attributes using the MQINQ call. The MQI also provides an MQSET call with which we can change some queue attributes. We cannot use the MQI calls to change the attributes of any other type of object. Instead we must use one of the following resources:

Note: The names of the attributes of objects are shown in this documentation in the form that we use them with the MQINQ and MQSET calls. When we use IBM MQ commands to define, alter, or display the attributes, we must identify the attributes using the keywords shown in the descriptions of the commands in the topic links.

Both the MQINQ and the MQSET calls use arrays of selectors to identify those attributes that we want to inquire about or set. There is a selector for each attribute that we can work with. The selector name has a prefix, determined by the nature of the attribute:

Prefix Description
MQCA_ These selectors refer to attributes that contain character data (for example, the name of a queue).
MQIA_ These selectors refer to attributes that contain either numeric values (such as CurrentQueueDepth, the number of messages on a queue) or a constant value (such as SyncPoint, whether the queue manager supports syncpoints).

Before we use the MQINQ or MQSET calls the application must be connected to the queue manager, and we must use the MQOPEN call to open the object for setting or inquiring about attributes. These operations are described in Connect to and disconnecting from a queue manager and Opening and closing objects.

Use the following links to find out more about getting inquiring about and setting object attributes:

Parent topic: Writing a procedural application for queuing


Related concepts