Friday, June 22, 2007

The Three-State Workflow - The Forgotten Out-Of-The-Box Workflow for Both WSS and MOSS


Many people believe that MOSS comes with only four out-of-the-box workflows (Approval, Collect Feedback, Collect Signatures, and Disposition Approval), and that WSS v3 doesn't come with any out-of-the-box workflows. In actuality, there is another work flow that is available out-of-the-box to both WSS v3 and MOSS—it's called the Three-state workflow.The reason that even many seasoned SharePoint professionals don't know much about the Three-state workflow is because the feature isn't activated by default—you will have to go into the Site collection features, and activate it.





Once you have activated the Three-state workflow feature, it will be available as a workflow template to all your lists, libraries, and content types.



The Three-state workflow allows you to track the status of an item between three states. This is very useful when tracking issues, project tasks, leads, or other similar items.
I won't bore you with details on how to use it; Microsoft has already done an excellent job of explaining how to use the Three-state Workflow. My mission here is just to let you know that it exists. I will leave you with one small screenshot though, just to whet your appetite. Look at all the options you have for the task and email details for each transition step.

Enjoy!

41 comments:

Anonymous said...

Hey, I recently added a news widget from www.widgetmate.com to my blog. It shows the latest news, and just took a copy and paste to implement. Might interest you too.

sebiw said...

I would like to add some line breaks into the emails being sent out when a workflow step is started. Can you tell me how I can accomplish this? Is it possible to use HTML formatting in the email body?

Thanks, Sebatian

Ricky Spears said...

Sebiw - I've tried several things to force line breaks in the emails and none of them seem to work. I think you are going to have to just learn to love having all the text in the emails on one line. :) Here is what I tried:
- The HTML break tag.
- escaped newline characters (backslash-n)
- carriage returns in the text
- carriage returns followed by spaces
- carriage returns followed by shift-spaces

Chris said...

I can't even get any workflow at ALL on our WSS 3.0 implementation. How do I activate or see any workflows?

omar@wecite.net said...

hi ..
im having problems setting up the three state workflow in WSS 3.0.
i tried going through the library's permissions >> workflow >> add work flow >> selected three state workflow .. that was okay
its when it goes to the final page to customize the three state workflow, im supposed to select options from the 'Choice' field to complete the process. The drop down menus choice field or the three states with it are inactive, the menus jsut dont work.
Suggestions or help would be really appreciated.

Thank you.

coachcs said...

I cannot activate the three-stage workflow. It does not - I repeat -does not appear in the site features. Why? and what to do about it?

Anonymous said...

What to do if the three-stage workflow is not showing as a feature?

Ricky Spears said...

@coachcs and @anonymous - The Three-State Workflow should be listed under "Site Collection Features", not "Site Features". Check it out there and see if it is listed.

satanic said...

@coachcs and @anonymous - The Three-State Workflow should be listed under "Site Collection Features", not "Site Features". Check it out there and see if it is listed.

Site Collection Features

i cant even dind it...

what i see is only:

Site Collection Documents and Site Collection Images

where is the Site Collection Features

Ricky Spears said...

@satanic - It sounds as if you are viewing the top level document libraries in your site collection.

You need to click on Site Actions --> Site Settings --> Modify All Site Settings. This takes you to the page to administer your site collection.

On this page, you will see 5 columns of links: Users and Permissions, Look and Feel, Galleries, Site Administration, and Site Collection Administration. You will find Site Collection Features under the last column.

If you can't see the links to get to this page, then you probably don't have the appropriate permissions. You'll need to talk to your SharePoint administrator about that.

satanic said...

thanks alot...i found it ....

but when i start tryin the sharepiont 07 three state workflow.....

it seem that anyone can edit the document wxpect for Viewer....is there anyway that i can like .. set the permission for the three state workflow ...? and when i start to assign a task the this person "jiesworker"., it seem that anyone can edit the task in there and change the task

Ricky Spears said...

@satanic - You are correct that anyone with permissions to modify items in the task list can modify any of the items. The solution would be to set individual item-level security. Unfortunately, the Three-state workflow doesn't do this, and you can't currently do it with SharePoint Designer workflows either. It will have to be done manually on each task, or you can write a workflow using Visual Studio .NET to change the security. I know these aren't good options, but it's what we have at the moment. :)

Alex said...

I had tried to create a three-state workflow.

The problem comes after i clicked next to configure the workflow, they don't give me any choice for the workflow states. The dropdown list not clickable. Anyone can help me?

Ricky Spears said...

@Alex - The list or library will need to have a column with a choice field that has at least three different states in it. It sounds like you just need to add a column like this to your list or library.

Alex said...

Thank You!! I can now add in the workflow. Thanks!

Anonymous said...

1 question for me..three-state workflow can b used only in list?..

Ricky Spears said...

Anonymous - Lists and Libraries.

Ryan Jarrett said...

I'm using WSS 3.0 with Service Pack 1 installed.

I added two instances of the Three-State Workflow (3 State 1 and 3 State 2) to the same list, with different configurations.
I then run them at the sametime (to demo to the client that we can do this).
If I go to "3 State 1" and approve the task it creates the task for the middle state of "3 State 2" workflow.

Anyone heard of a fix for this?

Ricky Spears said...

Ryan - I did a test where I created a custom list with 2 choice fields, one choice field for each workflow. Both workflows ran properly and didn't interfere with each other. I'm not sure what's causing yours to act in this way. Then again, it's possible I don't fully understand your question. You haven't provided the specifics of your configuration. Good luck!

Anonymous said...

Does anyone have an idea why the first email stating you submitted the document for approval, but the notification never goes out to the approver. I can't find anything to help in troubleshooting this. Email is working, permissions haven't changed, the task gets created. Just no second email! The deleted messages also go out. Help! Please. Sherry

Ricky Spears said...

Sherry - This blog post was about he Three-State Workflow, but you said, "Approval". Are you having trouble with the Three-State Workflow, or the Approval workflow? Contact me directly and I'll try to help you.

Radha Kumari K said...

We currently have built a custom list for PTO requests and a three-state workflow.
The first task is assigned to a user specified by pick-list on the list object record (metadata).
The second task is assigned to a group.
Everything works fine except that we want to limit who can see the PTO requests.

The goal is to limit record access to:
1. The person who make the request (record creator)
2. The Approving Manager (assign by pick-list, person first task is assigned to)
3. Two groups – one that will handle the second task and another that need to be able to read the requests to keep the company calendar current.

We attempted to limit permissions at the list level, but that locked it down to only the creator being able to access the records. The approving managers and the two groups no longer had access.

We were wondering if:
1. Is there some built-in permission we aren’t thinking of?
2. Could permissions possibly be assigned with a custom 3-state workflow made in Designer?

Ricky Spears said...

Radha - I think you are either going to need to write this workflow in .NET where you have full control over permissions and all details, or you'll need to install or write a custom workflow action that gives you the ability to set permissions. There is a CodePlex project at http://www.codeplex.com/SPDActivities that provides an action like this, but keep in mind that it is still in alpha and only community supported. Good luck!

saghir said...

Guys!
i am new with SP i have just created a site when i add alert or create a woorkflow a message comes to me saying that "The following users do not have e-mail addresses specified Alerts have been created successfully but these users will not receive e-mail notifications until valid e-mail addresses have been provided...... can some one help me out plz

Ricky Spears said...

Saghir - To answer your question, I would need to know more about your environment. This is the kind of thing we could research and assist with via a Web Consultation. You can get more information on that service here:
http://moss.sharepointsolutions.com/SharePoint-Consulting

Ron said...

How can the "Three-State Workflow" be set to accept assignments to groups (not just individuals)? Is there some minor modifications I can make to this in Designer?
If so, how do I find the template workflow and use it as a starting point?

Also, I am hoping that I can use three different 3-step workflows for a 5-step document routing process (where the first workflow initial state is "Draft start", middle state is "Draft complete / Review start", and the last state is "review complete." The 2nd would hopefully pick up after that and run a "Approval Start - Approval complete/traiing start - "training complete/ ready to publish"..
Please let me kow if I am on the right path, and if there are existing examples available...

Ricky Spears said...

Ron - I think your best course of action will be to write your own version of the Three-State Workflow using SharePoint Designer.

Ricky Spears said...
This comment has been removed by the author.
Arathi said...

I would like to use three-state workflows for organizing events. The tasks of the events would be:
1. Need approval for the event organization from higher management
2. If approved, the second task should get executed automatically, i.e., should be assigned to another user, whose role is planning and finalizing content for the event.
3. Once the content is finalized, the third task should get executed automatically, i.e., the task should be assigned to third user, whose role is planning and finalizing design for the event.
4. Once the content and design is finalized, the forth task should get executed, i.e., again approval from higher management.

How can I inter-relate these tasks in three state workflows. Request you please guide me how can I implement this using three-state workflows.

Arathi said...

Hi,
I would like to know whether a three-state workflow can execute n number of tasks in sequence.

For example:
1. task 1
2. task 2
3. task 3
and so on....

If this is possible, can you please help me in understanding this. If no, is there a way we can do this.
Thanks in advance for all the help.

Ricky Spears said...

Arathi - Just like I told Ron, I think your best course of action will be to write your own version of the Three-State Workflow using SharePoint Designer.

Anonymous said...

Your answer to the two other people says it all. The Three State Workflow is forgotten for a reason... you can't customize it to do anything useful.

Anonymous said...

Do you know that MS has modified this content: http://office.microsoft.com/en-us/help/HA101544311033.aspx

Key Point: The Three-state workflow is designed to work primarily with the Issue Tracking list. You can also use it with any custom list that has been configured to contain a Choice column with three or more values. This workflow does not work with document libraries.

So, you can not use this workflow on Document library or you can not get any support from MS.

Anonymous said...

Hi,
In a three state workflow on a list, is there any way that if you assign list item to someone then the task is automatically updated and assigned to the same person? And the same for when you re-assign the task to someone new the list is also assigned to them?
Thanks!
Angharad

Ricky Spears said...

Anonymous - You'll probably need to write a workflow with SharePoint Designer to do this The three-state workflow isn't that configurable.

Anonymous said...

I can not creaet a any three-state workflow into sharepoint 2007, why?

Daniel said...

I am new to SharePoint and I am trying to wrap my head around Workflows. I can create an out-of -the-box 3-state workflow with a unique task list but when I start the workflow, the task list is created but there are no tasks. I am not a site collection admin but do have full control on my site. I select the ECB on a list item and select the Workflow icon. It takes me to the Start a workflow screen. I click on the the workflow. Then I get the screen 'Please wait while your workflow is started.' That screen flashes by. Then nothing. It creates the unique task list but there are no tasks. What am I missing? Is there something that needs to be turned on at Central Admin? Using WSS 3.0 and Office 2003. thanks!

Stephen said...

Is there anyway that I can get my workflows written in Sharepoint Designer to look and act the way they do out of MOSS? I especially like the way it looks in the emails and the fact that it add the little "edit this task" button to the outlook message.

Ricky Spears said...

Stephen - Emails sent by SharePoint Designer are HTML emails, so you can design them to look however you want. Here is a link to a blog post I wrote a year or so ago that details how you can create your own custom notification emails with links to edit the task (and even customize the task names):
http://sharepointsolutions.com/sharepoint-help/blog/2010/03/create-a-detailed-custom-task-notification-with-a-sharepoint-designer-workflow/

Good luck!

Unknown said...

Hi, if there any way for a designer workflow to mimic the way that a three-state workflow task can be passed back and forth (status: defer, assign to:[someone else]) an indeterminate number of times?

I also having problems with the 'start workflow when a new item is created' the workflow's status either gets stuck on 'starting', or it continuously restarts, its status is 'Error occurred'. Does this have anything to do with the file type that I put into the library that the workflow is associated with?

Ricky Spears said...

Unknown - If you're running SharePoint Server 2010 check out the new task options that are available.

As for the error, you're probably going to have to investigate the log files to dig out what is causing the issue. Good luck!