Automating the Manual Start of a SharePoint Workflow
By: Rob Fisch | Comments | Related: > SharePoint
When planning a SharePoint Workflow, sometimes you just need to let the user initiate it manually. But the standard interface is awkward. First the user must find the item dropdown, then select "Workflows", then (assuming they pick the right one). they must click on it...and then click "Start". That's too many steps and leaves too much to chance. Here's a better way...
Note: This tip assumes you already know how to create a simple workflow using SharePoint Designer 2007 or 2010. If you need a step by step tutorial on creating workflows, check out the tip on creating a Helpdesk.
The solution is to create a new column (Yes/No), and to use that column to trigger the workflow. The user initiates the workflow by simply checking the box and saving the item. The workflow does the rest.
This solution works for both document libraries and other SharePoint lists for WSS3, MOSS2007, SharePoint 2010 and SharePoint 2010 Foundation. Here are the basics...
Create a new column of the type Yes/No. This will make a checkbox on the form. In this example, I use the Column name "Send Referral Status Update". You can change this to whatever is appropriate for your business process.
Let's take a look at what the column looks like to the user:
Once created, I use SharePoint Designer to create a new workflow based on the library or list.
In the workflow, I set the Workflow Settings to start whenever an item is created or changed.
"Hey what's this all about, Rob? I thought you said this was going to be a manual workflow."
It is, it is. Just not one the user has to do the old fashioned way (see Problem).
The trick is to set a condition prior to creating the workflow action. The workflow checks to see if the column I created is checked (which means "Yes").
Then, in the workflow designer, I set that as a condition. Then I proceed with creating the Action.
In this case, the "Action" that follows the condition is to send a targeted email.
One last bit of clean up. After the desired action is complete, I reset the checkbox as unchecked. That way, if other fields are updated, the workflow does not get repeated unintentionally.
There you have it. A simple, but elegant solution to providing a workflow that is initiated by the user based on a condition. Obviously, you can get creative with the conditions and workflow login. But the point is, to make it easy for users.
- For a more thorough, step by step tutorial on how to create a basic workflow, follow the tip on this site on creating a Helpdesk.
About the author
View all my tips