Reason (MQLONG)
This identifies the reason why the message was placed on the dead-letter
queue instead of on the original destination queue. It should be one of the
MQFB_* or MQRC_* values (for example, MQRC_Q_FULL). See
the description of the Feedback field in MQMD - Message descriptor for
details of the common MQFB_* values that can occur.
If the value is in the range MQFB_IMS_FIRST through MQFB_IMS_LAST, the
actual IMS(TM) error code can be determined by subtracting MQFB_IMS_ERROR from the
value of the Reason field.
Some MQFB_* values occur only in this field. They relate to repository
messages, trigger messages, or transmission-queue messages that have been
transferred to the dead-letter queue. These are:
- MQFB_APPL_CANNOT_BE_STARTED
- An application processing a trigger message cannot start the application
named in the ApplId field of the trigger message (see MQTM - Trigger message).
On z/OS, the CKTI CICS transaction
is an example of an application that processes trigger messages.
- MQFB_APPL_TYPE_ERROR
- An application processing a trigger message cannot start the application
because the ApplType field of the trigger message is not
valid (see MQTM - Trigger message).
On z/OS, the CKTI CICS transaction is an example of an application that processes
trigger messages.
- MQFB_BIND_OPEN_CLUSRCVR_DEL
- The message was on the SYSTEM.CLUSTER.TRANSMIT.QUEUE intended for a
cluster queue that was opened with the MQOO_BIND_ON_OPEN option, but the remote
cluster-receiver channel to be used to transmit the message to the destination
queue was deleted before the message could be sent. Because MQOO_BIND_ON_OPEN
was specified, only the channel selected when the queue was opened can be
used to transmit the message. As this channel is no longer available, the
message is placed on the dead-letter queue.
- MQFB_NOT_A_REPOSITORY_MSG
- The message is not a repository message.
- MQFB_STOPPED_BY_CHAD_EXIT
- The message was stopped by channel auto-definition exit.
- MQFB_STOPPED_BY_MSG_EXIT
- The message was stopped by channel message exit.
- MQFB_TM_ERROR
- The Format field in MQMD specifies MQFMT_TRIGGER,
but the message does not begin with a valid MQTM structure. For example, the StrucId mnemonic eye-catcher might not be valid, the Version might not be recognized, or the length of the trigger message
might be insufficient to contain the MQTM structure.
On z/OS, the CKTI CICS transaction is an example of an application
that processes trigger messages and can generate this feedback code.
- MQFB_XMIT_Q_MSG_ERROR
- A message channel agent has found that a message on the transmission
queue is not in the correct format. The message channel agent puts the message
on the dead-letter queue using this feedback code.
The initial value of this field is MQRC_NONE.