Can someone please advise me on what the start settings should be for a second workflow when using the "Start Workflow" action in a primary workflow?
Solved! Go to Solution.
The action only works to start a workflow on the current item, so the settings should be pretty straight forward.
If you want to start the workflow immediately than select "Start Immediately". I personally recommend checking the boxes for "Wait for the workflow to complete before continuing" and "Do not start the workflow if it is already running" because it helps prevent a few possible error scenarios.
1) If the second workflow does additional processing on the item, than there is the chance that something is changed after Workflow 2 is started that may impact workflow 1. It is best to keep only one workflow running on an item at a time.
2) If the second workflow has any pauses or takes some time to run, than you want to ensure you don't accidently run the workflow twice. That is what the second checkbox prevents.
You can then store the workflow instance ID into a variable. This will allow you to do lookups to the workflow to capture workflow history info, or other info related to Workflow 2 in Workflow 1 if you so choose.
Alternatively you can schedule workflows by clicking "Schedule". This can be useful if you want to run the workflow at a later date. Should be pretty straight forward where you pick your date and time and if you want the workflow to run on repeat at all.
The only thing not pictured here is if your second workflow has any starting parameters that it needs. If it does, than another little section should show up automatically asking what values you want to pass for them. You will just need to use the reference lookup button to pick a variable or list item value to pass it.
If you're looking to start a workflow on another list item or area of your site, than you may want to look into the Call Web Service Action and starting a workflow that way. A bit more setup is involved however.
Here is a tutorial for how to do this using Nintex Workflow 2010. It works the same with 2013 as well. If you're on O365 however, I don't believe you will have this action.
Perhaps I need to rephrase the question. I understand what the settings on the first workflow should be in order to start the second worflow; My question was regarding the second workflow settings as below
Yes, that is a very different question, thanks for rephrasing.
You technically can set it up however you want. It is just another workflow and doesn't need anything specifically set in the settings to allow it to be called from other workflow.
If you want the workflow to only be triggered from the first workflow, than make sure "Start Manually" is checked, and leave "Start when items are created" and Start when items are modified" to No. If you want to allow the workflow to run on new or edit as well as from workflow 1 than change those two options to Yes.
Treat workflow 2 as if it is a regular workflow, because it is one. The settings you pick do not need to be configured in any particular way to make it work with workflow 1. The main callout would be the above situation for starting. If it was me, and I only wanted to start it from workflow 1, than just give it a Title and hit Save. You're done.
I believe it is even be possible to turn off start manually and still be able to call it from another workflow, however this can prevent things like workflow status columns from showing up properly and makes manually running for debugging purposes difficult. Do this is you must not allow, under any circumstance, users to start the workflow outside of Workflow 1 starting it for them. But in most cases it is nice to be able to manually trigger the workflow if necessary or something didn't work properly.
Great post, thank you. I have a problem, where variables in Workflow 1 are not being passed to Workflow 2. When I log the state of the variable in WF1 just before the Start Workflow Action, variables are populated. I have 2 variables marked as show on start of Workflow 2 form, and the WF is set to start manually. Both these variables show up on the Start Workflow Action configuration in WF 1, and I set the 2 variables in WF 1 to these variables using the pick reference dialog. Both Variables are the same type in both workflows, a single line text, and a multi line text variable.
When I run WF 1, WF 2 gets started, but when I log the WF 2 variables in WF 2, they show as Null.
Any ideas on how to debug this?