Home

 

ResponseRecOffset (MQLONG)

This is the offset in bytes of the first MQRR response record from the start of the MQOD structure. The offset can be positive or negative. ResponseRecOffset is used only when a distribution list is being opened. The field is ignored if RecsPresent is zero.

When a distribution list is being opened, we can provide an array of one or more MQRR response records in order to identify the queues that failed to open (CompCode field in MQRR), and the reason for each failure (Reason field in MQRR). The data is returned in the array of response records in the same order as the queue names occur in the array of object records. The queue manager sets the response records only when the outcome of the call is mixed (that is, some queues were opened successfully while others failed, or all failed but for different reasons); reason code MQRC_MULTIPLE_REASONS from the call indicates this case. If the same reason code applies to all queues, that reason is returned in the Reason parameter of the MQOPEN or MQPUT1 call, and the response records are not set. Response records are optional, but if they are supplied there must be RecsPresent of them.

The response records can be provided in the same way as the object records, either by specifying an offset in ResponseRecOffset, or by specifying an address in ResponseRecPtr; see the description of ObjectRecOffset above for details of how to do this. However, no more than one of ResponseRecOffset and ResponseRecPtr can be used; the call fails with reason code MQRC_RESPONSE_RECORDS_ERROR if both are nonzero.

For the MQPUT1 call, these response records are used to return information about errors that occur when the message is sent to the queues in the distribution list, as well as errors that occur when the queues are opened. The completion code and reason code from the put operation for a queue replace those from the open operation for that queue only if the completion code from the latter was MQCC_OK or MQCC_WARNING.

This is an input field. The initial value of this field is 0. This field is ignored if Vis less than MQOD_VERSION_2.



 

Home