cancel
Showing results for 
Search instead for 
Did you mean: 

Correlation

Former Member
0 Kudos

Hello,

The design of my BPM is

1. Receive

2. Send

3. Receive (Used a correlation based on field Id)

4. switch - If status is failure in the msg received in step 3 cancel the process.

If status is succes, then

5. Receive ( Again this, I need to use the same correlation based on field id)

My question : If a msg is sent, will step 3 receive get the msg or step 5 Receive get the msg? I need Step 5 receive to get the msg.

Thank You.

Regards,

Jai Shankar

Accepted Solutions (1)

Accepted Solutions (1)

bhavesh_kantilal
Active Contributor
0 Kudos

Jai,

In the step 5 the message that you receive , is it from the same application as the step 3?

I guess you can ensure that you can make sure that Step 5 receives the message by defining the Correaltion for the Step 1,2and 3 as a Block Level Correaltion and then separately the switch is inside another Block with the receive inside the Switch.

I assume that the Correalation for step 1, 2 and 3 will get deactivated once these steps are exectured and for the next block the correaltion will become active and so the message will be received by Step 5.

Have not tried this though!

Regards

Bhavesh

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Jay

When a message arrives in XI targeted to a BPM,the co-relation manager is contacted to check for any running process waiting for the received message type.If yes and the co-relation matches the BPM is woken up from DB and the process continues.If the co-relation does not match or does not exist a new BPM instance is created if possible (trigger process flag should be on).

If a receive step is already been executed,it will never go back there again.

Can you explain your requirement in more detail.

Regards,

Bikram

Former Member
0 Kudos

Hello Jai Shankar,

R u receiving same message in the receive step 5 ? Even if the Process is cancelled step 3 will be executed , but not step 5.

Regards,

Keith

Former Member
0 Kudos

Keith,

Yes. I am receiveing the same msg. This time the msg might have a different value though. My msg should be received this time in Step 5. How can I achieve this?

Thank You.

Regards,

Jai Shankar

Message was edited by:

Jai Shankar

Former Member
0 Kudos

Hello ,

R u using transformation step in between two receive step? How the values of the elemnts r changing ?

Regards,

Keith

Former Member
0 Kudos

Hello Keith,

No. I am not using any transformation between these steps. The msg sent from the source will have different value, when it is sent for the second time.

Regards,

Jai Shankar

Former Member
0 Kudos

Hello Jai,

As far as I understand u r scenario , u r receiving from some application /third party ststem then again u r calling some other system (mostly synchronous step) then u r receiving the response in the receive step 3 , u r correlating on that message . U have mentioned condition on this received message . Now in receive step 5 i suppose u can directly use the container element used for step 3 , so u need not create new receive step.

Regards,

Keith