Extended responses
Commands issued on z/OS® generate extended responses.
- Message response, with type MQCFT_XR_MSG
- Item response, with type MQCFT_XR_ITEM
- Summary response, with type MQCFT_XR_SUMMARY
Each command can generate one, or more, sets of responses. Each set of responses comprises one or more messages, numbered sequentially from 1 in the MsgSeqNumber
field of the PCF header. The Control
field of the last (or only) response in each set has the value MQCFC_LAST. For all other responses in the set, this value is MQCFC_NOT_LAST.
Any response can include one, or more, optional MQCFBS structures in which the Parameter
field is set to MQBACF_RESPONSE_SET, the value being a response set identifier. Identifiers are unique and identify the set of responses which contain the response. For every set of responses, there is an MQCFBS structure that identifies it.
- An MQCFBS structure with the
Parameter
field set to MQBACF_RESPONSE_ID. The value in this field is the identifier of the set of responses to which the response belongs. The identifier in the first set is arbitrary. In subsequent sets, the identifier is one previously notified in an MQBACF_RESPONSE_SET structure. - An MQCFST structure with the
Parameter
field set to MQCACF_RESPONSE_Q_MGR_NAME, the value being the name of the queue manager from which the set of responses come.
Many responses have additional parameter structures, and these structures are described in the following sections.
You cannot determine in advance how many responses there are in a set other than by getting responses until one with MQCFC_LAST is found. Neither can you determine in advance how many sets of responses there are as any set might include MQBACF_RESPONSE_SET structures to indicate that additional sets are generated.
Extended responses to Inquire commands
Inquire commands normally generate an item response (type MQCFT_XR_ITEM) for each item found that matches the specified search criteria. The item response has a CompCode
field in the header with a value of MQCC_OK, and a Reason
field with a value of MQRC_NONE. It also includes other parameter structures describing the item and its requested attributes, as described in Definitions of the Programmable Command Formats.
If an item is in error, the CompCode
field in the header has a value of MQCC_FAILED and the Reason
field identifies the particular error. Additional parameter structures are included to identify the item.
Certain Inquire commands might return general (not name-specific) message responses in addition to the item responses. These responses are informational, or error, responses of the type MQCFT_XR_MSG.
If the Inquire command succeeds, there might, optionally, be a summary response (type MQCFT_XR_SUMMARY), with a CompCode
value of MQCC_OK, and a Reason
field value of MQRC_NONE.
If the Inquire command fails, item responses might be returned, and there might optionally be a summary response (type MQCFT_XR_SUMMARY), with a CompCode
value of MQCC_FAILED, and a Reason
field value of MQRCCF_COMMAND_FAILED.
Extended responses to commands other than Inquire
Successful commands generate message responses in which the CompCode
field in the header has a value of MQCC_OK, and the Reason
field has a value of MQRC_NONE. There is always at least one message; it might be informational (MQCFT_XR_MSG) or a summary (MQCFT_XR_SUMMARY). There might optionally be additional informational (type MQCFT_XR_MSG) messages. Each informational message might include a number of additional parameter structures with information about the command; see the individual command descriptions for the structures that can occur.
Commands that fail generate error message responses (type MQCFT_XR_MSG), in which the CompCode
field in the header has a value of MQCC_FAILED and the Reason
field identifies the particular error. Each message might include a number of additional parameter structures with information about the error: see the individual error descriptions for the structures that can occur. Informational message responses might be generated. There might, optionally, be a summary response (MQCFT_XR_SUMMARY), with a CompCode
value of MQCC_FAILED, and a Reason
field value of MQRCCF_COMMAND_FAILED.
Extended responses to commands using CommandScope
If a command uses the CommandScope
parameter, or causes a command using the CommandScope
parameter to be generated, there is an initial response set from the queue manager where the command was received. Then a separate set, or sets, of responses is generated for each queue manager to which the command is directed (as if multiple individual commands were issued). Finally, there is a response set from the receiving queue manager which includes an overall summary response (type MQCFT_XR_SUMMARY). The MQCACF_RESPONSE_Q_MGR_NAME parameter structure identifies the queue manager that generates each set.
- MQIACF_COMMAND_INFO (MQCFIN). Possible values in this structure are MQCMDI_CMDSCOPE_ACCEPTED or MQCMDI_CMDSCOPE_GENERATED.
- MQIACF_CMDSCOPE_Q_MGR_COUNT (MQCFIN). This structure indicates the number of queue managers to which the command is sent.