In this article we can explore the Three-state workflow of SharePoint 2010. Please note that this is an Out-of-the-box workflow also known as Built-in workflow.
For viewing the email notifications generated by the workflow, you need to configure Development Machine with SMTP receiver tool. You can view the Real World Scenarios on configuring this.
What is the purpose of Three-state workflow?
The three-state workflow can be used to track status of list items. For each status change there will be Email Notification performed by this workflow.
The Issue Tracking template is built to work with this workflow as it contains a Choice column with 3 different states.
Exploring the Workflow
For starting with create a new list using the Issue Tracking template as shown below:
After creating the list we need to Associate workflow with the list using List tab > Workflow Settings > Add a Workflow.
A wizard page will be started as shown below.
Select the Three-state workflow and enter a unique name for the workflow. In the bottom of the page you can see the Start Options. Check the Start this workflow when an item is created check box.
Click the Next button to continue.
Now you will be prompted with the second page of the Workflow as shown below:
Please note that the Three-state workflow requires a column with 3 states as the 'Choice' field. In this list the Issue Status column is selected as the 'Choice' field. The rest 3 drop down lists show the 3 different value selections for the Issue Status to set the Active / Resolved / Closed states.
Coming down to the page you can set Emailing options like Task Information, Email Subject and Body etc. Email Notifications are done to the involved persons.
Leave the default options and click the OK button. Now your workflow is ready to send email notifications on task creation.
For viewing the emails generated by the workflow you need to have:
· Emails Server configured in Central Administration
· E-mail Property set in User Profile
· Smtp4dev tool running
Please view the Real World Scenarios section of the book to enable this.
· Configuring Email for Development Server
Now let us test the workflow by creating a task. Create a Task and make sure you select a valid user having email for the Assigned To column.
Save the changes and you should see the smtp4dev tool caught the email as shown below.
You can see that the ID value is being highlighted. This concludes our experiment with Three-state workflow.
Editing the Workflow
We can associate multiple workflows with a list or library. To edit an existing association use the Workflow Settings > Workflow Settings menu item.
In the appearing page you can view the existing workflows associated and edit the settings.
The Workflows in Progress column displays the number of workflow instances currently active.
There are additional links to Add / Remove workflows, View workflow reports too.
Where should I apply this Workflow?
We can use this workflow for the following requirement scenarios:
· Product or Project approval process where a new product idea can be traversed through different stages of approval before acceptance.
· Issue tracking system where a customer can create an issue item, the support team updates it to resolved, Customer can change the status to Closed or Active again.
· Bug tracking system where the QA can create a task item, developer can change it to Resolved, QA can reopen it.
The effective use of Three-state workflow should decrease the delivery time for a tracking system with email notifications. We can also use custom lists with transition properties for using the Three-state workflow.
In this article we had explored the Three-state workflow of SharePoint 2010. Following are the point's worth to be summarized:
· Three-state workflow tracks status changes
· A Choice column is required for the list / library to use this Workflow
· Choice column requires at least 3 fields
· Issue Tracking list template is apt for this workflow
· Association of Three-state workflow with list instance is required
· Email notification is enabled for Three-state workflow