cancel
Showing results for 
Search instead for 
Did you mean: 

Collecting Message based on Delivery Id

Former Member
0 Kudos

Hi,

We have an scenario to collect the messages based on delviery number, like customer sends the bulk order and SAP splits that order and create the delivery for each splitted orders .

Eg.

Sales Order Batch Order

PO# 1234

This Batch order is split in to multiple orders as below

Order_1 Order_2 Order_3

1234_A_C 1234_B_C 1234_C_C

Delivery_1 Delivery_2 Delivery_3

1 2 3

These deliveries are sent to PI as DESADV in differnet time frame.

-> DESADV# 1 DESADV# 2 DESADV# 3

inbound time 10:30AM 11:00AM 11:20AM

PO# 1234_A_C 1234_B_C 1234_C_C

Outbound time 11:20AM 11:20AM 11:20AM

Now we need to collect all the DESADV for a single batch order and send it to customer as a single DESADV .

Can anyone help me how to handle this in PI.

Is there any BPM process there to collect the messages based on PO number (1234_A_C,1234_B_C,1234_C_C) for particular partner.

I know correleation id can be used but PO is not constant.

Thanks

Lakshmi S

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi,

Instead of collecting the data from the SAP its easier to do this in SAP ECC or R/3 Side...

Check the possiblity from that side itself for this..

HTH

Rajesh

Former Member
0 Kudos

you can use the BPM Pattern to achieve this functionality.

Also refer the following links:

http://help.sap.com/saphelp_nwpi71/helpdata/EN/08/16163ff8519a06e10000000a114084/content.htm

http://help.sap.com/saphelp_nw04/helpdata/en/41/e3d13f7fb44c21e10000000a1550b0/frameset.htm

/people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure

aashish_sinha
Active Contributor
0 Kudos

Hi ,

There no BPM process for collecting PO order, but you can collect messages depending upon PO number. CollectBPM pattern does is, it will collect all the PO's which have same PO number and merge it to one and send it to receiver system. For this purpose you should use CollectMessage Pattern from SAP BAsis /Patterns. It internally used the co-relation ID which is important to identify the same PO number.

So if you have multiple PO's it will generate multiple files after merging.

regards

Aashish Sinha

Edited by: Aashish Sinha on Feb 28, 2011 10:54 AM

Former Member
0 Kudos

Hi Aashish Sinha,

Thanks for your response but our PO # is not constnt .. it is different like 1234_A_C, 1234_A_C,1234_C_C

So like until the PO says 1234_C_C i need to collect tht DESADV message and send to customer once.

So corelation id cannot be used. Is there any other way to handle this.

Thanks

Lakshmi S

aashish_sinha
Active Contributor
0 Kudos

Hi,

basic thing is that, when you are collecting message using BPM, then correlation ID is must, else it won't be able to collect message. So look out for some common fields in messages.

You have another option for collectMessage is to wait until some time and then send it to further processing. look out for CollectMessageTime if you want to wait in basis Component under Patterns. you have to use correlation ID here too.

Regards

Aashish Sinha

Edited by: Aashish Sinha on Feb 28, 2011 11:20 AM