How the definitions are shown
The definitions of the Programmable Command Formats (PCFs) including their commands, responses, parameters, constants, and error codes are shown in a consistent format.
For each PCF command or response, there is a description of what the command or response does, giving the command identifier in parentheses. See Constants for all values of the command identifier. Each command description starts with a table that identifies the platforms on which the command is valid. For additional, more detailed, usage notes for each command, see the corresponding command description in the Definitions of the Programmable Command Formats.
IBM MQ products, other than IBM MQ for z/OS, can use the IBM MQ Administration Interface (MQAI), which provides a simplified way for applications written in the C and Visual Basic programming language to build and send PCF commands. For information about the MQAI see the second section of this topic.
Commands
The required parameters and the optional parameters are listed.
On Multiplatforms, the parameters must occur in this order:- All required parameters, in the order stated, followed by
- Optional parameters as required, in any order, unless noted in the PCF definition.
On z/OS, the parameters can be in any order.
Responses
The response data attribute is always returned whether it is requested or not. This parameter is required to identify, uniquely, the object when there is a possibility of multiple reply messages being returned.
The other attributes shown are returned if requested as optional parameters on the command. The response data attributes are not returned in a defined order.
Parameters and response data
Each parameter name is followed by its structure name in parentheses (details are given in Structures for commands and responses ). The parameter identifier is given at the beginning of the description.
Constants
For the values of constants used by PCF commands and responses see Constants.
Informational messages
On z/OS, a number of command responses return a structure, MQIACF_COMMAND_INFO, with values that provide information about the command.MQIACF_COMMAND_INFO value | Meaning |
---|---|
MQCMDI_CMDSCOPE_ACCEPTED | A command that specified CommandScope was entered. It has been passed to the one or more requested queue managers for processing |
MQCMDI_CMDSCOPE_GENERATED | A command that specified CommandScope was generated in response to the command originally entered |
MQCMDI_CMDSCOPE_COMPLETED | Processing for the command that specified CommandScope - either entered or generated by another command - has completed successfully on all requested queue managers |
MQCMDI_QSG_DISP_COMPLETED | Processing for the command that refers to an object with the indicated disposition has completed successfully |
MQCMDI_COMMAND_ACCEPTED | Initial processing for the command has completed successfully. The command requires further action by the channel initiator, for which a request has been queued. Messages reporting the success or otherwise of the action are be sent to the command issuer later |
MQCMDI_CLUSTER_REQUEST_QUEUED | Initial processing for the command has completed successfully. The command requires further action by the cluster repository manager, for which a request has been queued |
MQCMDI_CHANNEL_INIT_STARTED | A Start Channel Initiator command has been issued and the channel initiator address space has been started successfully |
MQCMDI_RECOVER_STARTED | The queue manager has successfully started a task to process the Recover CF Structure command for the named structure |
MQCMDI_BACKUP_STARTED | The queue manager has successfully started a task to process the Backup CF Structure command for the named structure |
MQCMDI_RECOVER_COMPLETED | The named CF structure has been recovered successfully. The structure is available for use again |
MQCMDI_SEC_TIMER_ZERO | The Change Security command was entered with the SecurityInterval attribute set to 0. This means that no user timeouts occur |
MQCMDI_REFRESH_CONFIGURATION | A Change Queue Manager command has been issued that enables configuration events. Event messages need to be generated to ensure that the configuration information is complete and up to date |
MQCMDI_IMS_BRIDGE_SUSPENDED | The MQ-IMS bridge facility is suspended. |
MQCMDI_DB2_SUSPENDED | The connection to Db2 is suspended |
MQCMDI_DB2_OBSOLETE_MSGS | Obsolete Db2 messages exist in the queue sharing group |
Error codes
In z/OS, PCF commands can return MQRC reason codes instead of MQRCCF codes
MQRCCF codes are used in UNIX, Linux or Windows. At the end of most command format definitions, there is a list of error codes that might be returned by that command.
Error codes applicable to all commands
In addition to those error codes listed under each command format, any command might return the following error codes in the response format header (descriptions of the MQRC_* error codes are given in the Reason codes and IBM MQ for z/OS messages, completion, and reason codes documentation):
- Reason (MQLONG)
- The value can be any of the following values:
- MQRC_NONE
- (0, X'000') No reason to report.
- MQRC_MSG_TOO_BIG_FOR_Q
- (2030, X'7EE') Message length greater than maximum for queue.
- MQRC_CONNECTION_BROKEN
- (2009, X'7D9') Connection to queue manager lost.
- MQRC_NOT_AUTHORIZED
- (2035, X'7F3') Not authorized for access.
- MQRC_SELECTOR_ERROR
- (2067, X'813') Attribute selector not valid.
- MQRC_STORAGE_NOT_AVAILABLE
- (2071, X'817') Insufficient storage available.
- MQRC_UNKNOWN_OBJECT_NAME
- (2085, X'825') Unknown object name.
- MQRCCF_ATTR_VALUE_ERROR
- Attribute value not valid.
- MQRCCF_CFBF_FILTER_VAL_LEN_ERROR
- Filter value length not valid.
- MQRCCF_CFBF_LENGTH_ERROR
- Structure length not valid.
- MQRCCF_CFBF_OPERATOR_ERROR
- Operator error.
- MQRCCF_CFBF_PARM_ID_ERROR
- Parameter identifier not valid.
- MQRCCF_CFBS_DUPLICATE_PARM
- Duplicate parameter.
- MQRCCF_CFBS_LENGTH_ERROR
- Structure length not valid.
- MQRCCF_CFBS_PARM_ID_ERROR
- Parameter identifier not valid.
- MQRCCF_CFBS_STRING_LENGTH_ERROR
- String length not valid.
- MQRCCF_CFGR_LENGTH_ERROR
- Structure length not valid.
- MQRCCF_CFGR_PARM_COUNT_ERROR
- Parameter count not valid.
- MQRCCF_CFGR_PARM_ID_ERROR
- Parameter identifier not valid.
- MQRCCF_CFH_COMMAND_ERROR
- Command identifier not valid.
- MQRCCF_CFH_CONTROL_ERROR
- Control option not valid.
- MQRCCF_CFH_LENGTH_ERROR
- Structure length not valid.
- MQRCCF_CFH_MSG_SEQ_NUMBER_ERR
- Message sequence number not valid.
- MQRCCF_CFH_PARM_COUNT_ERROR
- Parameter count not valid.
- MQRCCF_CFH_TYPE_ERROR
- Type not valid.
- MQRCCF_CFH_VERSION_ERROR
- Structure version number is not valid.
- MQRCCF_CFIF_LENGTH_ERROR
- Structure length not valid.
- MQRCCF_CFIF_OPERATOR_ERROR
- Operator error.
- MQRCCF_CFIF_PARM_ID_ERROR
- Parameter identifier not valid.
- MQRCCF_CFIL_COUNT_ERROR
- Count of parameter values not valid.
- MQRCCF_CFIL_DUPLICATE_VALUE
- Duplicate parameter.
- MQRCCF_CFIL_LENGTH_ERROR
- Structure length not valid.
- MQRCCF_CFIL_PARM_ID_ERROR
- Parameter identifier not valid.
- MQRCCF_CFIN_DUPLICATE_PARM
- Duplicate parameter.
- MQRCCF_CFIN_LENGTH_ERROR
- Structure length not valid.
- MQRCCF_CFIN_PARM_ID_ERROR
- Parameter identifier not valid.
- MQRCCF_CFSF_FILTER_VAL_LEN_ERROR
- Filter value length not valid.
- MQRCCF_CFSF_LENGTH_ERROR
- Structure length not valid.
- MQRCCF_CFSF_OPERATOR_ERROR
- Operator error.
- MQRCCF_CFSF_PARM_ID_ERROR
- Parameter identifier not valid.
- MQRCCF_CFSL_COUNT_ERROR
- Count of parameter values not valid.
- MQRCCF_CFSL_DUPLICATE_PARM
- Duplicate parameter.
- MQRCCF_CFSL_LENGTH_ERROR
- Structure length not valid.
- MQRCCF_CFSL_PARM_ID_ERROR
- Parameter identifier not valid.
- MQRCCF_CFSL_STRING_LENGTH_ERROR
- String length value not valid.
- MQRCCF_CFSL_TOTAL_LENGTH_ERROR
- Total string length error.
- MQRCCF_CFST_CONFLICTING_PARM
- Conflicting parameters.
- MQRCCF_CFST_DUPLICATE_PARM
- Duplicate parameter.
- MQRCCF_CFST_LENGTH_ERROR
- Structure length not valid.
- MQRCCF_CFST_PARM_ID_ERROR
- Parameter identifier not valid.
- MQRCCF_CFST_STRING_LENGTH_ERROR
- String length value not valid.
- MQRCCF_COMMAND_FAILED
- Command failed.
- MQRCCF_ENCODING_ERROR
- Encoding error.
- MQRCCF_MD_FORMAT_ERROR
- Format not valid.
- MQRCCF_MSG_SEQ_NUMBER_ERROR
- Message sequence number not valid.
- MQRCCF_MSG_TRUNCATED
- Message truncated.
- MQRCCF_MSG_LENGTH_ERROR
- Message length not valid.
- MQRCCF_OBJECT_NAME_ERROR
- Object name not valid.
- MQRCCF_OBJECT_OPEN
- Object is open.
- MQRCCF_PARM_COUNT_TOO_BIG
- Parameter count too large.
- MQRCCF_PARM_COUNT_TOO_SMALL
- Parameter count too small.
- MQRCCF_PARM_SEQUENCE_ERROR
- Parameter sequence not valid.
- MQRCCF_PARM_SYNTAX_ERROR
- Syntax error found in parameter.
- MQRCCF_STRUCTURE_TYPE_ERROR
- Structure type not valid.
- MQRCCF_UNKNOWN_OBJECT_NAME
- Unknown object name.
Parent topic: Definitions of the Programmable Command Formats