cancel
Showing results for 
Search instead for 
Did you mean: 

1:2 Message Mapping WithOut BPM - Split mapping created no messages Error

Former Member
0 Kudos

Hi,

I am a new-bie to SAP PI and am trying out the following scenario without BPM.

Make multiple files based on Age received from input file.Input File contains Name,DOB and Output File contains Name, Age.

I want to create 2 files, one containing details of people with Age <21 and the other output file containing details of people with Age >= 21.

To acheive this,

In IR, I created 2 DT and 3 MT,1 MM with 2 Target MT,both having occurences 0..unbounded, 1 IM with 2 Target MI,both having occurences 0..unbounded

And in ID, 1 Sender Agreement, 2 Receiver Agreement, 1 Receiver Determination, 1 Interface Determination using Enhanced Interface Determination.

When i run this scenario, I am getting the following error "Split mapping created no messages"

Please let me know how can I resolve it.

Accepted Solutions (1)

Accepted Solutions (1)

former_member194786
Active Contributor
0 Kudos

Hi Swapna,

Chcek in the sxmb_moni if the inbound message has an extra tag similar to this:

<ns0:Messages xmlns:ns0="http://abcd/efgh/SplitAndMerge">

<ns0:Message1>

Remove it and closing tag too and test the scenario once again. It will work.

Regards,

Sanjeev.

Former Member
0 Kudos

Hi Sanjeev,

I do see the mentioned tags, can you please explain how can I remove it.

When I click on "Edit Message Part", it is saying "You can only edit header/body parts" and am not able to edit

Do I have to do something in MM also, to avoid recurrence of issue.

former_member194786
Active Contributor
0 Kudos

Hi Swapna,

While sending the file itself you will have to edit your input xml and remove the tags and then send keep the file in the directory. That is remove the tags before sending the file. I dont think you can edit the message once its picked up by XI. Hope its clearer now.

Regards,

Sanjeev.

former_member194786
Active Contributor
0 Kudos

Hi Swapna,

Did it work?

Regards,

Sanjeev.

Former Member
0 Kudos

Oops, I did not know that.

Thanks for that information. uhuuuuuuuuuuu, atlast the message is processed and I am seeing output files created.

But, there is still one problem. My output files are created with just the following content

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

<ns1:MT_2OP_File_Out xmlns:ns1="http://POC_Sec1_1IP2OP2" />

In MM, I see the output message as follows:

Message

Message1

MT_2OP_File_Out

Employee

Name

Age

Message2

MT_2OP_File_Out1

Employee1

Name

Age

The mapping done:

MT_2OP_File_Out and MT_2OP_File_Out with the Message Type element on source end.

Employee and Employee1 are mapped as

Age -> removeContext -> SplitByValue[Each Value] < 21, Map Employee

Age -> removeContext -> SplitByValue[Each Value] >= 21, Map Employee1 resp

The fields are straight maps.

Is there any basic mapping error that I am making. Please help.

former_member194786
Active Contributor
0 Kudos

Hi Swapna,

As per your requirment, you need to create file1 if age is less than 21 and file 2 if age is greater than 21. In mapping Map the MT_2OP_File_Out and MT_2OP_File_Out1 files like this:

MT_2OP_File_Out-> createIf-> Age->Greater Than(Standard Function)-> Consatant(21). This way the Messages will be created only if the criteria is satisfied.

Hope it helps.

Regards,

Sanjeev.

Former Member
0 Kudos

Hi Sanjeev,

I did as suggested. I guess the condition check is occuring just once and the remaining records also are getting mapped to the same one.

Say, I give a input file with records having age 23 and 20 resp. Both records are going to ouput file location of records of age >21

and

if I give a input file with records having age 20 and 23 resp. Both records are going to ouput file location of records of age <21

Please suggest

Former Member
0 Kudos

Hi Sanjeev,

THe issue is resolved. Thank you so much

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Swapna,

check this thread.They had the same discussion..

This blog for 1:2 mapping..

/people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible

Thanks,

Vijaya.

Former Member
0 Kudos

Hi Vijaya,

I tried my scenario using the mentioned blog, is there anythign specific in terms of Receiver Agreements.Currently, I have 2 Receiver Agreements and also, I created 2 Communication Channels for the 2 Receivers under the same Business System.

The post says "The solutions is : have changed my MM such a way that a dummy message gets created without the contents of the message."

Can you please let me know how can I create a dummy message.