Skip to Content

Receiver Nodes in the Receiver Determination Mapping related to the Nodes in the Message Mapping

Hi experts,

I have a scenario where external message coming into SAP system should not create idocs for a specific movement type i.e. the message if it comes with specific movement type.. the message should be having no receiver and the message should be ignored, which I have done using extended receiver determination. This is working fine for Message coming from external system containing single IDOC information.

When the message coming from the external system contain multiple idoc data, I have split the external message into number of individual messages which is same as the total number of idoc data contained in it. I want to determine Receivers individually for each incoming idoc data. I have the target Receiver nodes created like this :

--> I have 9 idoc data out of which for 6 idocs receiver should be determined and for other 3 idocs the receiver should not be determined(Movement type condition) and it should be ignored.

I have 6 Receivers node created

Receiver Determination Mapping:

and the display queue of Receivers nodes is as follows:

I able to successfully suppress the Receiver at second, fifth and eight nodes for which receiver should not be determined and message should be ignored .I have used ignore option in Receivers tab.

Also I have split the external message in to individual message (same as no of idoc file) in the actual message mapping for transformation.

Actual Message Mapping :

I able to individually test both Operation mappings successfully with xml source file. But when I test it using Send Test Message I am getting the following error:

Note: I have removed the tags Messages and Message1 in send test message xml.

Any help, highly appreciated. Also kindly let me understand the relation between Receiver node in Extended Receiver Determination Mapping and MBGMCR node in the actual message transformation mapping. I have used Multi mapping for both the mappings.

Note: I want each MBGMCR node in the actual message mapping to be associated with either a receiver or a suppress in Receiver node in the Receiver determination mapping.

Thanks in Advance!

1isy9.png (11.8 kB)
jbnss.png (44.5 kB)
ntavf.png (10.1 kB)
t7udd.png (47.5 kB)
Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

1 Answer

  • Best Answer
    Sep 24, 2018 at 02:59 AM

    Hi Govardanam,

    First of all, you put great effort to put all the details for the scenario, which will help to get the right answers. Thanks for providing all the relevant details.

    The Receiver determination - You only need to determine receiver when relevant data is present. So in your example, if source message contains at least one relevant message. So you only need to determine the receiver system once.

    After the receiver is determined, you need to split the message in message mapping (multi-mapping) and discard the records which do not need to post in the system.

    regards,

    Harish

    Add comment
    10|10000 characters needed characters exceeded

    • Hi Govardanam,

      If you want to build the Receiver determination solution with individual IDOC approach, then you need to split the message first. I would suggest following the two-step flow

      First flow - Split the incoming data into individual messages. This flow calls the second flow after splitting the data.

      Second flow - In this, you can implement the extended RD and perform the operation. You do not need Multi mapping either in RD mapping or operation mapping.

      The purpose of RD mapping is to determine received if any valid data is present. It is not intended to suppress or filter the message.

      Thanks

      Harish