MQAI selectors

Items in bags are identified by a selector that acts as an identifier for the item. There are two types of selector, user selector and system selector.


User selectors

User selectors have values that are zero or positive. For the administration of MQSeries objects, valid user selectors are already defined by the following constants:

  • MQCA_* and MQIA_* (object attributes)
  • MQCACF_* and MQIACF_* (items relating specifically to PCF)
  • MQCACH_* and MQIACH_* (channel attributes)

For user messages, the meaning of a user selector is defined by the application.

The following additional user selectors are introduced by the MQAI:

    MQIACF_INQUIRY
    Identifies an IBM MQ object attribute to be returned by an Inquire command.

    MQHA_BAG_HANDLE
    Identifies a bag handle residing within another bag.

    MQHA_FIRST
    Lower limit for handle selectors.

    MQHA_LAST
    Upper limit for handle selectors.

    MQHA_LAST_USED
    Upper limit for last handle selector allocated.

    MQCA_USER_LIST
    Default user selector. Supported on Visual Basic only. This selector supports character type and represents the default value used if the Selector parameter is omitted on the mqAdd*, mqSet*, or mqInquire* calls.

    MQIA_USER_LIST
    Default user selector. Supported on Visual Basic only. This selector supports integer type and represents the default value used if the Selector parameter is omitted on the mqAdd*, mqSet*, or mqInquire* calls.


System selectors

System selectors have negative values. The following system selectors are included in the bag when it is created:

    MQIASY_BAG_OPTIONS
    Bag-creation options. A summation of the options used to create the bag. This selector cannot be changed by the user.

    MQIASY_CODED_CHAR_SET_ID
    Character-set identifier for the character data items in the bag. The initial value is the queue manager's character set.

    The value in the bag is used on entry to the mqExecute call and set on exit from the mqExecute call. This also applies when character strings are added to or modified in the bag.

    MQIASY_COMMAND
    PCF command identifier. Valid values are the MQCMD_* constants. For user messages, the value MQCMD_NONE should be used. The initial value is MQCMD_NONE.

    The value in the bag is used on entry to the mqPutBag and mqBagToBuffer calls, and set on exit from the mqExecute, mqGetBag and mqBufferToBag calls.

    MQIASY_COMP_CODE
    Completion code. Valid values are the MQCC_* constants. The initial value is MQCC_OK.

    The value in the bag is used on entry to the mqExecute, mqPutBag, and mqBagToBuffer calls, and set on exit from the mqExecute, mqGetBag, and mqBufferToBag calls.

    MQIASY_CONTROL
    PCF control options. Valid values are the MQCFC_* constants. The initial value is MQCFC_LAST.

    The value in the bag is used on entry to the mqExecute, mqPutBag, and mqBagToBuffer calls, and set on exit from the mqExecute, mqGetBag, and mqBufferToBag calls.

    MQIASY_MSG_SEQ_NUMBER
    PCF message sequence number. Valid values are 1 or greater. The initial value is 1.

    The value in the bag is used on entry to the mqExecute, mqPutBag, and mqBagToBuffer calls, and set on exit from the mqExecute, mqGetBag, and mqBufferToBag calls.

    MQIASY_REASON
    Reason code. Valid values are the MQRC_* constants. The initial value is MQRC_NONE.

    The value in the bag is used on entry to the mqExecute, mqPutBag, and mqBagToBuffer calls, and set on exit from the mqExecute, mqGetBag, and mqBufferToBag calls.

    MQIASY_TYPE
    PCF command type. Valid values are the MQCFT_* constants. For user messages, the value MQCFT_USER should be used. The initial value is MQCFT_USER for bags created as user bags and MQCFT_COMMAND for bags created as administration or command bags.

    The value in the bag is used on entry to the mqExecute, mqPutBag, and mqBagToBuffer calls, and set on exit from the mqExecute, mqGetBag, and mqBufferToBag calls.

    MQIASY_VERSION
    PCF version. Valid values are the MQCFH_VERSION_* constants. The initial value is MQCFH_VERSION_1.

    If the value in the bag is set to a value other than MQCFH_VERSION_1, the value is used on entry to the mqExecute, mqPutBag, and mqBagToBuffer calls. If the value in the bag in MQCFH_VERSION_1, the PCF version is the lowest value required for the parameter structures that are present in the message.

    The value in the bag is set on exit from the mqExecute, mqGetBag, and mqBufferToBag calls.

Parent topic: IBM MQ Administration Interface reference