I have a list with an associated approval workflow.
The workflow runs when the items are created and when they are modified.
A specific item that went through the workflow was rejected. For some reason a user then deleted the item. Fortunately I was able to find the item in the recycle bin and restore it from there.
Problem: The workflow started over again - I guess Nintex sees the item as being "created".
Is there some way to validate if an item is truly created by a user, or if it was just restored from the recycle bin?
Can you remove when item is created and check whether workflow trigger or not.
I check the same scenario with SharePoint 2013 workflow. on Item Created it trigger the workflow if item restore from recycle bin. it is just for information from SP workflow.
Could you test for a created date in the last 5 minutes? Or could the workflow set a value on the item that identifies that it has run then you could check that in a conditional start?
Well I done it with one check. When workflow trigger I updated one column Stage as NotStarted/Complete
On workflow Start I check this Stage Column, if it is Complete mean workflow has already run on this item. otherwise it is NotStarted.
That is a nice workaround. But what annoys me is that you have to make these kinds of workaround, that just adds more complexity to the workflows. In my opinion it shows a kind of immaturity in the products, that there is no "native support" for seeing difference between an item being created by the user, and an item being restored from the recycle bin :(
I think this is a SharePoint issue as the same thing happens on event receivers. But you're right it would be helpful to be able to be able to tell the difference. Maybe one for User Voice? Customer Feedback for Nintex