cancel
Showing results for 
Search instead for 
Did you mean: 

NW BPM Collect Pattern (with in the BPM, not as collecting messages from Outside)

VijayKonam
Active Contributor
0 Kudos

Hi,

I am working on a requirement where I need to call an SAP RFC (or a web service for that matter) in a loop and collect all the message responses, combine them in to and send it to another system or another BPM process.

I am completely lost as to how collect the data objects into lists something similar to the containerization operation in classic ccBPM. I can then used an n:1 operation mapping to merge the messages. However, I am struck at collecting them itself.

Any help is appreciated.

Thanks,

VJ

View Entire Topic
VijayKonam
Active Contributor
0 Kudos

I think I did get it. Defined an Operation mapping with n:1 cardinality and used the input parameter as the data type for the collection data object.

Thank you guys for the help.

Closing the thread.

VJ

nitinlpatil12
Participant
0 Kudos

Hi Vijay,

We are running into a requirement where we nee to request a system for Pending data and then call the same system multiple time to get that data.

1st interface triggered and in response we find out that there are pending data to be picked up say 100.

2nd interface will be used to pick up max 20 and hence it needs to be called 5 times

Question is how to use the response of 1st interface and call 2nd interface and continue till all the 100 data are picked up.

Can you please suggest any solution in detail?

Regards,

Nitin Patil

Former Member
0 Kudos

Nitin,

1. Create a data object -  isMore .

2. In the Output Mapping of the 1st call map the field which tells you there are more records to isMore. Assume this writes 100 (as in 100 more records)

3. Then call an Uncontrolled Merge .

4. Then create an Exclusive Choice where you have 2 options - either isMore > 0 or isMore = 0.

5. If isMore > 0 , call Automated activity to make another call to your backend and loop it back to the Uncontrolled Merge. Remember to update the isMore in the Output Mapping.

6. If isMore = 0 , call the next activity or End.