cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Process chain Instance conditional stop

former_member302630
Participant
0 Likes
1,945

I have a process chain that runs hourly. The process chain is failing because of lock. The previous instance of the process chain is still running and DTP block fails.

I checked in Process chain, there is a process type "Previous run active?"

Under Successful I see 3 options

Inactive , Active , Failed.

How do I stop/terminate the new process chain run from immediately ? I want the previous PC run to keep going while the current PC run should terminate immediately.

OR

atleast new PC run should wait till the previously process chain has completed successful and then proceed.

Accepted Solutions (0)

Answers (2)

Answers (2)

Abhishek_Hazra
Active Contributor

Hi,

Right after the start variant you can insert the process chain variant 'Previous run active?' and then include an 'OR' step if you want to just skip the entire process chain in case the previous load is running, and it will turn green. Just select the option 'Active' among multiple options of the 'Previous run active?' step while connecting to the OR step, while the other branch should have option 'Inactive'. the process chain would look like below :

Else you can only have the actual run, but with a delay added in the 'Previous Chain Active' step like below. It can be edited by right clicking on the variant & manually changing the threshold period.

Hope this helps.

Best Regards,
Abhi

former_member302630
Participant
0 Likes

The second option where "Wait for the previous run to finish for[seconds]". If I choose this method , it still asks for an action when I connect to next process. What do I put in that? If Successful then Active?

Aim : If previous instance of PC is executing, Don't run this current instance. Run it ONLY and ONLY if previous run is completed successfully.

former_member302630
Participant
0 Likes

I tried "Wait for the previous run to finish for[seconds]". Followed it by saying if INACTIVE, go forward.

I then ran the process chain. Then again ran the process chain while first run was active via meta chain.

So the second run waited till the first run got over and then went forward.

The first run though all green inside, shows a red status overall. Any idea why?

Abhishek_Hazra
Active Contributor
0 Likes

Hi,

It should still be set to inactive, because only when the previous run is inactive you want to execute the rest of the process chain. Else, just try with the OR step as I mentioned, it will skip the rest of the part & make the process chain as green.

BR,
Abhi

former_member302630
Participant
0 Likes

I tried going the first way. Not using the "Wait for prev run finish" option

Use "Prev Run Active" Process.

1. Inactive : go forward.

2. Active or Failed : goes to OR.

Run Sub chain first . this is first run.

Run meta chain that triggers subchain again while first instance is running.

The Meta chain is green but the sub chain is red for first time, green second time.

The first time sub chain shows OR process as Grey and DTP (inactive option successor) is green. This instance of sub process chain is red.

The second instance of sub chain shows OR process as Green and DTP is grey. This instance of sub process chain is green

RaymondGiuseppi
Active Contributor

This must be the first step of the PC, continue execution only when event 'inactive' is triggered by the process. You can trigger a message when event 'failed' or 'active' are triggered.

NB: You can add a (small) delay for the process to wait for end of previous run before triggering 'active' event.