cancel
Showing results for 
Search instead for 
Did you mean: 

collecting and bundling messages from multiple interfaces using BPM

Former Member
0 Kudos

Hi friends,

I am currently working on bpmpatternmultilf(without condition).

In my source i have 3 messages having same message type.

Message type:

ID

Overall no

In the source i am placing 3 files like

message1.txt ID 100 Overall no 200

message2.txt ID 100 Overall no 300

message3.txt ID 100 Overall no 400.

I have used correlation element as ID.

But in the target file I am getting the result as ID 100 Overall no 200.

Overall no 300 and 400 are not present?

I understand that the messages are not getting collected and bundled?

Please help me out on this.

Thank you in advance

Accepted Solutions (0)

Answers (5)

Answers (5)

Former Member
0 Kudos

Hi, deepak:

To collect the message of same message interface, if you know that all the files will exist for a while,

and next bundle of file will come to the folder after a period of time saying 30 minutes.

You can have your receive step, followed by container operator to append individal messages to multi-line elements.You will need deadline block, put timeout to saying 10 minutes.

This to say that you collect all the messages in 10 minutes, and put them in multi-line elements, now you collected all the messages with different ID.

Next you need to design you multi-mapping, since your message is based on ID, you multi-mapping is m:n

Eventually, you will need transformation step to call the multi-mapping, map the multi-line elements to n target messages. Your final send step send n files to your target system.

Regards.

Liang

former_member206760
Active Contributor
0 Kudos

Dear Deepak,

what i would suggest that you will have to change the occurence of the target data type

make it like...

DT_example

+ row 1...unbounded ( this is only 1..1 in sap example..)

++field1

++field2

and then redo the mapping .

This should work

Former Member
0 Kudos

Hello Deepak,

The issue may be due to mismatch in interface variable declaration while using correlation in BPM.

For the first receive step, use the first message interface containing ID while defining the properties of correlation. To do so, the interface variable should be the first message interface.

For the second receive step, use the second message interface containing ID while defining the properties of correlation. To do so, the interface variable should be the second message interface.

And so on.

Please confirm the same and try out the execution.

Thanks,

Subhajit.

Former Member
0 Kudos

Hi Deepak,

Could you elaborate on this... Your description on the problem is very vague.

Regards,

Indudhar

Former Member
0 Kudos

Hi,

In the SAP BASIS SWCV in the Integration repository , you have an example for the same thing that you want to do : BpmPatternCollectMultiIf

The details of the same is present in help.sap.com to give more explaination.

Refer this link:

http://help.sap.com/saphelp_nw2004s/helpdata/en/0e/56373f7853494fe10000000a114084/frameset.htm

Regards,

Amith

Former Member
0 Kudos

bpmpatternmultilf is used to collect three messages with different message type.

It is different from you sitaution here.

Regards.

Liang

Former Member
0 Kudos

Hi,

Thanks for the reply.

However, since the correlation is based on ID and the Overall No. is different in input messages.

I feel the messages has to be collected and bundled.

Please let me know about this.

Thank you.