on 04-12-2013 12:28 PM
Hi Experts,
I need to create a BPM, and this BPM can be triggered by two different messages. But, each message has to start a new BPM instance, without waiting for any other message.
I've tried to create a Fork Step putting each Receive step (start) in one single branch, but correlation is mandatory doing this way and i don't want to use it.
One possible solution is to raise an exception after each receive step, and catch the exception on a Exception Branch but I dont like it at all.
Has anyone faced a similar problem?
Thanks in advance.
Best regards,
David,
Hi David,
for 2 starting messages you need from a logical point of view to define a correlation because otherwise the process engine cannot decide to add a message to an existing instance or starting a new one.
You might use a dummy correlation but the logical problem remains.
/Udo
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks all for your replies.
Adarsh: Use of 2 BPM's for the same process will be hard to maintain.
Tejas: The problem is to put 2 receive steps, so at your solution I assume that you need one receive step with both messages. It could work but probably it's no so clear for monitoring purposes.
Samiullah: Thanks, I've never heard about constant correlation, but in my scenario files are independent one from each other and I don't want BPM instances to be waiting.
Finally, we've decided to let one single receive step at our BPM and put mappings outside that.
Thanks to all.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Probably you can use constant correlation.
However, it is suggested to use constant correlation very carefully because this correlation is true for all running BPM instances.
Regards,
Sami.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi David,
Instead of Using FORK, try using the Switch Step and define the variable for Switch as any one of the message's mandatory element that you want the BPM to process.
Say we choose Message 1 - Employee - Name -> If the field is not empty then let the Switch go to Branch one (Default) and you can include all steps in this branch to process the Message 1.
If the field is empty, we make the Switch to go to Branch 2 and here all the steps to process Message 2 should be included.
Hope the above is helpful.
Thanks & Regards,
Tejas Bisen
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
90 | |
10 | |
10 | |
10 | |
7 | |
7 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.