MQ

MQ

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
  • 1.  Report field MQMD

    Posted Wed October 04, 2023 04:41 PM

    Hello,

    I am trying to analyze if a client is asking for COA and COD reports, using the amqsbcgc i get the following MQMD with report:

    I found this manual for analyzing the field, https://www.ibm.com/docs/en/ibm-mq/9.2?topic=flags-analyzing-report-field, but all my attempts seems wrong.

    thanks



    ------------------------------
    Matheus Francisco
    ------------------------------


  • 2.  RE: Report field MQMD
    Best Answer

    Posted Wed October 04, 2023 04:53 PM

    A report value of 16779520 is hexadecimal 0x01000900. This is made up of the following flags:

    • 0x01000000 MQRO_EXCEPTION
    • 0x00000800 MQRO_COD
    • 0x00000100 MQRO_COA

    Hope that helps.

    Cheers,
    Morag



    ------------------------------
    Morag Hughson
    MQ Technical Education Specialist
    MQGem Software Limited
    Website: https://www.mqgem.com
    ------------------------------



  • 3.  RE: Report field MQMD

    Posted Wed October 04, 2023 05:15 PM

    Thank you very much for answering.

    I have a client that says it is not receiving COA and COD messages.I am thinking in stopping my sender channel and browse messages in the transmission queue for "proof". Do you think there is a better way to check?

    again thank you for answering you helped a lot.



    ------------------------------
    Matheus Francisco
    ------------------------------



  • 4.  RE: Report field MQMD

    Posted Thu October 05, 2023 12:46 AM

    Certainly that would provide concrete proof of the messages "on their way" to the replyToQ, but it might be worth checking the AMQERR01.LOG for errors about the report messages first. COA messages are put using the security credentials of the channel, which tend to be more highly authorised or even running as a privileged account. COD messages on the other hand are put using the security credentials from the original message which are often unable to put to queues on the target system. In that case you would see a message something like the following on the target system.

    AMQ7310W: Report message could not be put on a reply-to queue.
    
    EXPLANATION:
    The attempt to put a report message on queue Q1 on queue manager MQG1 failed
    with reason code 2035. The message will be put on the dead-letter queue.
    ACTION:
    Ensure that the reply-to queue is available and operational. 

    So I would be inclined to check for such error messages first before stopping things that might have a broader effect on the system.

    Check the error log at both ends, but especially the system where the COA and COD reports are being created, i.e. the target system.

    And of course, as the above error message suggests, it will also be worth looking in your DLQ (assuming you have one configured).

    Cheers,
    Morag



    ------------------------------
    Morag Hughson
    MQ Technical Education Specialist
    MQGem Software Limited
    Website: https://www.mqgem.com
    ------------------------------



  • 5.  RE: Report field MQMD

    Posted Thu October 05, 2023 04:15 PM
    Edited by Matheus Francisco Thu October 05, 2023 04:16 PM

    Thanks for pointing that out, i had the problem you described with another client earlier this year. My application is not in production so stopping channels does not impact the service.



    ------------------------------
    Matheus Francisco
    ------------------------------



  • 6.  RE: Report field MQMD

    Posted Thu October 05, 2023 11:06 AM

    I would recommend the Application Activity Trace for tracking your COA and COD messages. If you need help in decoding fields like Report values, aids in reading the activity trace, etc., the MH06 supportpac provides tools to do this. At some point this supportpac will go away, but it is still out there and was validated through IBM MQ 9.2.

    Here is an example of using MH06 to find the constant values for a Report decimal value. 

    >java -jar mqtrcfrmt.jar -f ?
    mqtrcfrmt version 1.0.10
    Valid constantField values are the following:
    Action, CallBackType, CallType, CCSID, ValueCCSID, RequestedCCSID, ReturnedCCSID, CodedCharSetId, CompCode, CopyOptions, Encoding, RequestedEncoding, ReturnedEncoding, ValueEncoding, Expiry, Feedback, Flags, GroupStatus, MatchOptions, MsgFlags, MsgType, MQCBDO.Options, MQCMHO.Options, MQCNO.Options, MQCO.Options, MQCTLO.Options, MQDMHO.Options, MQGMO.Options, MQIMPO.Options, MQOO.Options, OpenOptions, MQPD.Options, MQPMO.Options, MQSD.Options, SubOptions, MQSMPO.Options, ObjectType, OriginalLength, PD.Context, Persistence, Priority, PubPriority, PutApplType, PutMsgRecFields, ReconnectDelay, Report, ResolvedType, Segmentation, SegmentStatus, Signal1, StatType, State, SubExpiry, Support, Type, WaitInterval

    >java -jar mqtrcfrmt.jar -f Report -v 16779520
    mqtrcfrmt version 1.0.10
    Field Report for value 16779520 resolves to:
       Report MQRO_EXCEPTION
       Report MQRO_COA
       Report MQRO_COD



    ------------------------------
    Tim Zielke
    ------------------------------



  • 7.  RE: Report field MQMD

    Posted Thu October 05, 2023 04:19 PM

    Thank you for taking the time to answer

    i will try the application to see if it will help us in this problem and in the future. 



    ------------------------------
    Matheus Francisco
    ------------------------------