cancel
Showing results for 
Search instead for 
Did you mean: 

ReOpen a Completed Process

nik10_mah
Champ in-the-making
Champ in-the-making
Hi,

I want to reopen or a restart a process after it has been completed. Is there a way to do that. 

One way i though of using a user task instead of an end event so that it can be reopened by the assigned user anytime.

Thanks in advance
6 REPLIES 6

martin_grofcik
Confirmed Champ
Confirmed Champ
Hi Nikhil.

Could you describe your usecase?
I would say that keeping process instances active can fulfill activiti runtime tables - performance issue.

Regards
Martin

nik10_mah
Champ in-the-making
Champ in-the-making
What i want is once a process has been ended and if user want to reopen that particular process may be sometime in future i want that process be reopened or restarted. Is there a way to do that.?

And if i keep my process instance active all the time then what performance issues or impacts are we looking at.?

frederikherema1
Star Contributor
Star Contributor
Restarting a completed workflow is impossible, it's completed. You can fake this replacing the end-event by a a receive-task or signal-catch event in the process to be signalled later on, when the process needs to be continued/restarted. As Martin said, this can influence runtime performance (active processes live in other table than completed ones) if you have several hundred thousands of those processes running, depends on your usecase and DB.

Another approach is to start a new process instance, using variables from the history entities associated with the completed process.

nik10_mah
Champ in-the-making
Champ in-the-making
Ok so if i use start new process instance approach then i will be having issues fetching history data for a process as there will be multiple process instances. For example i have started process with PID-1 and when that process is completed then on reopening a new Process instance PID-2 is generated with old data then if i have to fecth the history of same data then there will be two process instances. So is there a way so that can link these two process instaces so that if i have one PID can get the other linked PID for same data and vice versa.

trademak
Star Contributor
Star Contributor
No there's no specific support for this. But it's easy to add a variable for this purpose or use the business key with the old PID.

Best regards,

ssun
Champ on-the-rise
Champ on-the-rise
+1 for this. I see myself need this feature in the future.
Would it be possible for Activiti to take the old record out of the history table and put it back? How much work to support it out of the box?