cancel
Showing results for 
Search instead for 
Did you mean: 

XI BPM Collect Meassages Scenario with one Message as an optional

Former Member
0 Kudos

Hi guys,

I need help to implement XI BPM Scenario with Collect Messages Pattern. Here is my Scenario. I am getting four different types of flat files from four interfaces. Using these four files I need to merge using correlation relation and finally have to create One IDoc type to send it to SAP R/3.

But out of these four messages last Message type is an Optional Message. i.e the process has to continue even if forth message is not available by taking first three messages.

Please let me know which pattern is suitable for this scenario.

Thanks.

Siva.

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Hi,

I got ur point. let me give a rough idea. may be u can fork and get the three interfaces which are sure to occur and then wait for the fourth interface-optional one for specified time limit. if optional one occurs u could process all the four. if deadline is exceeded just continue with three of interfaces and proceed.Hope this would help.

Regards,

Sudharshan

moorthy
Active Contributor
0 Kudos

HI,

I think you are using an Transformation step(i.e Mapping) inside the BPM. While doing mapping you can check for existence of fourth message and go ahead on this.

If not you can use switch condition inside the BPM and you can restrict by stating if there is no fourth message do nothing like this,

Hope this helps..

-Moorthy

Former Member
0 Kudos

Hi,

I hope u are receiving four different interfaces.Have a local container variable of simple type integer.you put a fork with four branches after the start step.Each branch has a receive step corresponding to one interface. Then after each of the receive step in each branch put a container operation performing some action on the container variable may be incrementing.so in the end condition of the fork check the value of the container variable i.e you can check if that variable is 3(three of the interfaces have been got).so this ensures that ur fork doesnot wait for all the four.hope this works.

Regards,

Sudharshan

Former Member
0 Kudos

Hi Sudharshan,

I tried this option, but it is not working. When I put three files, it is taking all three files and completing the process which is good. But when I put all four files. The process is not taking fourth file. It is taking only first three messages and processing. And fourth message is hanging over there.

Thanks,

Siva

moorthy
Active Contributor
0 Kudos

Hi Siva

If you use Fork, then give "Necessary Branches = 4 " in the properties of the Fork step. After this receive the 4 messages and before processing further check for the existence of 4th message(i.e optional one) by using Switch Step.

I think it will help u.

-Moorthy

former_member187339
Active Contributor
0 Kudos