Skip to main content

Scenario:

A user publishes a news article. This article needs to be reviewed and approved/rejected by a committee before displaying it on a site. He can edit the article while it is pending for review or even after it is approved/rejected.

the user can edit the article at any given time, even if it is being reviewed.

 

Approach: 

Trigger a Nintex workflow as soon as the user publishes an article. That workflow goes to a committee who reviews it and it approves. As they approve, the article is visible to everyone.

Problem: 

The article is approved by the committee and is displayed on the site. The user makes some changes and publishes it again. Now we need to get it approved again. Can we restart the already completed workflow for the current article?

(We should not  trigger a new workflow every time a user hits publish as he may make numerous edits/spelling changes for which he needs to unpublish, edit and publish again.)

Generally speaking - no. Once the workflow is completed, it is finished for ever.

But this is by purpose - each workflow approvers a separate change.

You can start it with the filter action, so that it will only be executed if the "approval status" is "pending" or using version for example, to not create multiple approvals for each "save", but only one, once page is being published and sent to approval.

You could as well create a workflow with a "never ending loop" that pauses itself at the end of the loop until a page, on which it is working, is not changed, and then starts the loop from the beginning going through the whole approval process. However this is highly not recommended.

In the end - what is the reason for such requirement? Number of tasks, mail notifications, etc.. will be exactly the same. Number of created items in workflow history too. Only when you enter the "workflows" on the item level you will only have one instance, instead of multiple, but... imho this can only bring confusion.

Generally - there should always be one instance of workflow per each change, however you can decide, using filter action, whether it should run, or get terminated instantly.

Regards,

Tomasz


Restarting the workflow will be equivalent to Starting a new workflow as  mentioned.  You probably have to rethink your approach here, because in your current method, once an article is approved, it becomes available. If the user were to edit an article what unpublishes the current version?   At what point does the current become overwritten?   These are all questions to consider.   You may want to develop the idea of a  queue (or holding area) in other words- a separate list where edited versions are held until they are approved, at which point it would replace the current article.  I don't have your reqs in front of me, so I understand there is probably a lot going on here unexplained (such as what exactly is an article- it can come in many formats - a file, simple text, something else?), but hopefully this will get you somewhat on the right track.  


Thank you guys. I am considering a different approach now. happy.png


Reply