cancel
Showing results for 
Search instead for 
Did you mean: 

Mapping Record structure to IDOC (mapping fundamentals)

Former Member
0 Kudos

Hello,

how and WHAT should i map? Because all the time the test in Integration Builder works fine, but at runtime i got an exception during mapping (i dont know why).


Left Side (Message Type)           Right Side (IDOC)
CMA_MSGTYP1      1..1              OILBLM.SAVE...   1..1
  RECORD         1..1                IDOC           1..1
    CONTROL      1..1                  EDI_DC40     1..1
    SEGMENT      0..unbounded          E1BPP...     0..999

SEGMENT contains all values for the corresponding IDOC segment E1BPP..

The attributes BEGIN for IDOC and SEGMENT for EDI_DC40 are set to "1" with the constant function.

Do i really need to map EDI_DC40?

Do i need to map CMA_MSGTYP1, RECORD and CONTROL?

Thanks!

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

You do not need to map EDI_DC40, this is filled out in the IDOC adapter. You right click on the element and select disable.

Then you should only map to the fields in E1BPP and below.

Former Member
0 Kudos

Thanks,

if i only(!) map SEGMENT to E1BPP and disable EDI_DC40, SEGMENT and BEGINN (attributes) the payload in SXMB_MONI looks like:

<?xml version="1.0" encoding="UTF-8" ?> 
- <OILBLM_SAVEMULTIPLE01>
  <IDOC /> 
  </OILBLM_SAVEMULTIPLE01>

The inbound xml message looks fine. All entries are there.

If test it even with more than one segment in the integration builder everything works fine. What is the problem?

Former Member
0 Kudos

To have the E1BPP element with you need to map something to this. If you need more then one element then you should map the field which occurs more then one to E1BPP.

Remember to map the "1" to the segment attribute.

Former Member
0 Kudos

Thanks for your help!

I have found the error. I just put the payload from SXMB_MONI into the test tab. The result was the same as described - empty. At a closer look i have found one small difference:

The incoming message SXMB_MONI files starts with

<ns:CMA_FILEINPUT1 xmlns:ns="http://ww..

The CMA_FILEINPUT1 is coming from the file adapter.

The xml source in message mapping test tab starts with

<ns:CMA_MSGTYP1 xmlns:ns="http://ww..

where CMA_MSGTYP1 is the name of the message type.

If i change now the parameter "document name" in conversion parameters of the file adapter to CMA_MSGTYP1 everything works fine!

That means: "document name" in conversion parameters of file adapter must be the same name of the message type in message mapping.

I must admit that i don't quite understand this...

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Christian,

Could you please add your source XML to the message.

Kind regards

Ian Passfield

Former Member
0 Kudos

Copy your source payload XML from SXMB_MONI and paste it in source of Mapping program at design time and than test.

Most probably you will find the error.

Cheers

Satish