cancel
Showing results for 
Search instead for 
Did you mean: 

Message Buffering in MII:

0 Kudos

Buffered Message can be seen in the Message Monitor until it gets executed, but is there any option like Log report so that we can find out previously buffered message time, message name etc?

Situation appear like this-- One message was buffered(say PO confirmation), but later on either it executed or or failed, and now from business point of view client wants to check how many PO message were buffered(for a particular period of time) and out of those how many are processed.

Just wanted to check is there any log it maintain to keep all the buffered message summary? If yes please let me know.

Please let me know the SAP Note if any regarding that.

Answer will be highly appriciable.

--Prahlad Chowdhury

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hello Prahlad,

try to use the action blocks in the Message Services category, especially the "Query Messages" action block. You can build a BLS transaction with inputparameters "StartDate", "EndDate", "MessageName" and so on - map the parameters into the Query Messages action block and it will return a result that looks like this:


<?xml version="1.0" encoding="UTF-8"?>
<JCOMessageList>
    <JCOMessage>
        <MessageId>302</MessageId>
        <JcoServerName>T30CLNT260</JcoServerName>
        <MessageName>LOIPLO01</MessageName>
        <Category/>
        <MessageType>2</MessageType>
        <Status>4</Status>
        <DocNumber>_0000000000476687</DocNumber>
    </JCOMessage>
    <JCOMessage>
        <MessageId>303</MessageId>
        <JcoServerName>T30CLNT260</JcoServerName>
        <MessageName>LOIPLO01</MessageName>
        <Category/>
        <MessageType>2</MessageType>
        <Status>4</Status>
        <DocNumber>_0000000000476689</DocNumber>
    </JCOMessage>
</JCOMessageList>

If you want to extract the number of erroneous messages, create a transaction output parameter "Errors" and map the following expression to it (which counts the number of messages with status 4):


QueryMessages.BufferListDoc{count(/JCOMessageList/JCOMessage[Status=4])}

for a count of messages without a processing rule use


QueryMessages.BufferListDoc{count(/JCOMessageList/JCOMessage[Status=3])}

Good luck!

Best Regards,

Matthias

0 Kudos

Thanks Matthias!

Great Help.

--Prahlad