cancel
Showing results for 
Search instead for 
Did you mean: 

Split and merge issue

Former Member
0 Kudos

Hi,

I am doing POC with a scenario File --> Proxy

                                                      --> File

Here if the file is validated through a UDF then it will go for otherwise the UDF will return a proper reason of error and that will be passed to the File.

For this I have done  multi mapping .

Now the issue is that according to the mapping the incoming payload should be like that -

?xml version="1.0" encoding="UTF-8"?>

<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">

   <ns0:Message1>

      <ns1:MT_MM_Sender xmlns:ns1="urn://MM_Test_Sender">

         <Record>

            <KeyField>1</KeyField>

            <Text>1#2#3#4</Text>

         </Record>

         <Record>

            <KeyField>1</KeyField>

            <Text>11#12#13#14</Text>

         </Record>

         <Record>

            <KeyField>1</KeyField>

            <Text>21#22#23#24</Text>

         </Record>

         <Record>

            <KeyField>1</KeyField>

            <Text>31#32#33#34</Text>

         </Record>

         <Footer>

            <KeyField>9</KeyField>

            <Count>4</Count>

         </Footer>

      </ns1:MT_MM_Sender>

   </ns0:Message1>

</ns0:Messages>

But, the incoming file is coming like that after FCC -

<?xml version="1.0" encoding="utf-8" ?>

<ns:SI_MM_Sender_OB xmlns:ns="urn://MM_Test_Sender">

<Record>

  <KeyField>1</KeyField>

  <Text>1#2#3#4</Text>

</Record>

<Record>

  <KeyField>1</KeyField>

  <Text>11#12#13#14</Text>

</Record>

<Record>

  <KeyField>1</KeyField>

  <Text>21#22#23#24</Text>

</Record>

<Record>

  <KeyField>1</KeyField>

  <Text>31#32#33#34</Text>

</Record>

<Footer>

  <KeyField>9</KeyField>

  <Count>4</Count>

</Footer>

</ns:SI_MM_Sender_OB>

Is there any way that I can make the incoming payload as expected in the mapping ?

Thanks,

Apu

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hello,

Don't worry about the messages, message1 tag - PI at runtime will automatically adjust the payload.

But i can see that the MT name which u have used in ur FCC is wrong it should be "MT_MM_Sender" instead of SI_MM_Sender_OB ...so correct the same in ur FCC

Thanks

Amit Srivastava

Muniyappan
Active Contributor
0 Kudos

Hi Apu,

as mentioned by amit below these tags are constructed during runtime.

<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">

   <ns0:Message1>

</ns0:Message1>

</ns0:Messages>

if you are getting the input xml without these tags it will work.

you can test the scenario with xml(without message tags) in the test configuration in ID.

please note you can do test configuration in id only for classical not ICO.

Regards,

Muniyappan.

Answers (2)

Answers (2)

praveen_sutra
Active Contributor
0 Kudos

Hi Apu,

Please enter Messagetype name under Document Name and respective name space and fixed length parameters accordingly.

Even though u will not see the output in moni but during runtime the

<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">

   <ns0:Message1>

part will be created dynamically.

Please feel free to revert back in case of any issues.

thanks and regards,

Praveen T

Former Member
0 Kudos

This message was moderated.

Former Member
0 Kudos

Hi,

Previous problem is solved now . Now, new error is showing in sxmb_moni.

I think this is because of using two different adapter(file,proxy) in receiver side.

<SAP:Stack>At least two of the sub messages deal with different Adapter Engine types. Check the channels</SAP:Stack>

<SAP:Retry>M</SAP:Retry>

please suggest.

Former Member
0 Kudos

Hello,

If your problem is solved then close this thread and open a new one for the above query.

Thanks

Amit Srivastava

Former Member
0 Kudos

Hi Amit,

Initial problem is solved but now I am facing a new problem. Please check my previous post.

Could you please give me any suggestion.

Thanks,

Apu

Former Member
0 Kudos

Hello Apu,

>>Initial problem is solved but now I am facing a new problem

That's the reason i have asked you to open a new thread. The reason is simple that more people will look at ur new post and try to reply it. secondly, it's one of the forum rules that every new question should be raised in a new post.

>>I think this is because of using two different adapter(file,proxy) in receiver side.

Multimapping is only possible for those adapter which are on java stack and it seems that you are using XI receiver adapter (ABAP) for Proxy communication?

Use SOAP (XI3.0) adapter for Proxy and then check your scenario?

Thanks

Amit Srivastava

rodrigoalejandro_pertierr
Active Contributor
0 Kudos

insted of using XI adapter to execute a proxy use a SOAP adapter and XI3.0 as Message Protocol.

Regards

rodrigoalejandro_pertierr
Active Contributor
0 Kudos

When ussing multimapping, the system create the dummys nodes

<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">

   <ns0:Message1>

to enable to to recognize easily the structures used in the multimapping. when the scenario is executed those node will not be spected in the structures provided by the client or in the structure to be sent to the backend.

Regards

Rodrigo