cancel
Showing results for 
Search instead for 
Did you mean: 

N:1 mapping

Former Member
0 Kudos

Hi experts,

I am extracting data from SAP and Database and merging into single file in BPM.

I created everything as mentioned in BPMPatternCollectMultiIf.

Mapping also i did same mention in BPMPatternCollectMergeMultiIf. but its taking only first message only.

Can any one please tell me how can i do the N:1 mapping.

Kind Regards,

Kiran.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

hi kiran,

for n:1 go to message tab in mapping and specify the various messages for source and receiver and their occurences.

the reason why its takin only 1st msg mite be that u havnt done the mapping correctly... the ocuurence of target values shud depend on both msgs. u shud map both source structures (nodes) properly to target.

http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm

[reward if helpful]

regards,

latika.

Former Member
0 Kudos

HI,

<b>i got the source structure is like this:</b>

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

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

<ns0:Message1>

<ns1:BpmPatternCollectMessageToBeCollected xmlns:ns1="http://sap.com/xi/XI/System/Patterns">

<ID>10</ID>

</ns1:BpmPatternCollectMessageToBeCollected>

</ns0:Message1>

<ns0:Message2>

<ns1:BpmPatternCollectMessageToBeCollected xmlns:ns1="http://sap.com/xi/XI/System/Patterns">

<ID>20</ID>

</ns1:BpmPatternCollectMessageToBeCollected>

</ns0:Message2>

<ns0:Message3>

<ns1:BpmPatternCollectMessageToBeCollected xmlns:ns1="http://sap.com/xi/XI/System/Patterns">

<ID>30</ID>

</ns1:BpmPatternCollectMessageToBeCollected>

</ns0:Message3>

</ns0:Messages>

<b>i want the target structure like this:</b>

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

<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge"><ns0:Message1><ns1:BpmPatternCollectMessageTarget xmlns:ns1="http://sap.com/xi/XI/System/Patterns">

<ID>10</ID>

<ID>20</ID>

<ID>30</ID>

</ns1:BpmPatternCollectMessageTarget></ns0:Message1></ns0:Messages>

Can you please tell me which fields i must map if i wat to achive this.

Answer will be rewarded.

Kind regards,

Kiran

Former Member
0 Kudos

Hey Kiran,

Could you please post the source and the target XSD's. I have a feeling that It has something to do with the mapping.

Regards,

Varun

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi Kiran

If you have done the mapping as

Source <ID> -


> Target <ID>

Then this is right, additionally make proper context settings.

Right click on your source <ID> and set context to the top parent .. which in your case is "Message"

I hope this will solve your problem

Good Luck

Vijendra

Message was edited by:

Vijendra Bhanot

Former Member
0 Kudos

Hi

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

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

<ns0:Message1>

<ns1:BpmPatternCollectMessageToBeCollected xmlns:ns1="http://sap.com/xi/XI/System/Patterns">

<ID>10</ID>

</ns1:BpmPatternCollectMessageToBeCollected>

</ns0:Message1>

<ns0:Message2>

<ns1:BpmPatternCollectMessageToBeCollected xmlns:ns1="http://sap.com/xi/XI/System/Patterns">

<ID>20</ID>

</ns1:BpmPatternCollectMessageToBeCollected>

</ns0:Message2>

<ns0:Message3>

<ns1:BpmPatternCollectMessageToBeCollected xmlns:ns1="http://sap.com/xi/XI/System/Patterns">

<ID>30</ID>

</ns1:BpmPatternCollectMessageToBeCollected>

</ns0:Message3>

</ns0:Messages>

i want the target structure like this:

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

<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge"><ns0:Message1><ns1:BpmPatternCollectMessageTarget xmlns:ns1="http://sap.com/xi/XI/System/Patterns">

<ID>10</ID>

<ID>20</ID>

<ID>30</ID>

</ns1:BpmPatternCollectMessageTarget></ns0:Message1></ns0:Messages>

>>>>>>>>>.as per your requirement you have multiple message at the source side and a single message at the target side.

for this in the message maping, in the message tab, put the occurence for the source message as 0..unbounded, same in the interface mapping.

n u have to define a condition in the corelation step in the BPM .

you can also do the testing from sxmb_moni.

go to sxmb_moni, take input payload from the moni and check in message mapping whether the mapping is working fine with the moni payload.

if you still face the problem please reply me back.

Thanks

Rinku

Former Member
0 Kudos

Hi Kiran Kumar,

Test your mapping once, whether its taking the both of the sender messages or not.

Cheers

Veera