I'm using Office 365 and I've got a list where I need to run 6 workflows when an item is saved. I know, not ideal. The problem is that all the workflows run multiple times - I'm guessing this is because each time one of those workflows changes something it triggers all the others again. This means that it takes a long time for all the workflows to finish running. Has anyone got any ideas how I could stop this happening? I've thought about calling one workflow when another finishes, but I still can't work out how I'd stop the first one running every time the document was saved. Any suggestions would be great, thank you.
Solved! Go to Solution.
Unfortunately there is no conditional start in Nintex for Office 365. The easiest way would be to configure them to launch only on item creation, but not modification. Does it help? Or in your case, set automatic start only for the first workflow, and then trigger one from within the other.
Thanks for replying so quickly Tomasz. Unfortunately I need to run the workflow when modified as well as created. I did think of just starting the first one as you say - but then as I need to run when modified the first one would continue to be triggered every time one of the other workflows ran and saved.
I would suggest as conditional start not available in O365 ,create single workflow that runs every time item update happens. with in that workflow write a switch case to handle your logic to determine which workflow of your 6 is appropriate at that time based on field values and use start workflow action to run actual workflow there.
all other workflows in question remove automatic trigger.
I hope this helps.
Good idea. I wanted to write the same, but using a Filter action. Let's say you have a bool field in your item, that first workflow sets to 'false' and last to 'true'. The first workflow has the Filter action as a first one, that checks the value of that bool field. If it's true, meaning the sequence is over, then it moves on setting it to 'false'. In other case it's just getting terminated. Does it make sense?
That's a good idea - I will try that. The only thing is, when you run a workflow from within another workflow you have to enter a username and password. I really want it to run with the current initiator's id but of course I don't have the password. Is there any way to do that?
Unfortunately not. This action requires credentials and you cannot discover and use user context there.
After you try the suggested solutions please mark one from the above answers as correct please
Thanks for helping me out - I've marked an answer as correct although unfortunately it's not going to work in my situation because I need to run the workflows as the initiator and I don't have their user name and password so can't call workflows from other workflows. Never mind - it was a long shot.
Thank you Tomasz and Jaya. I really appreciate you replying.
that is strange to see such big difference between On-prem and O365 versions of this action , user name & pwd are not required in on-prem version, not sure why Nintex thought its important here.
Good luck finding work around then, let us know when you find good approach of solving it may help people around with similar situation.
Because the are not being run in premises of your tenant, but executed from the Nintex service calling SharePoint endpoints, that is hosted externally on Azure. That is the reason why it needs credentials - to get the user context and check permissions
I hope I answered your question