I’ve found a lot of value recently in seeing blog posts with a complete walk thru in them as SharePoint is so huge you just don’t get to see all of this stuff without configuring each individual bit of functionality. So I thought I’d quickly run through the approval process in a Publishing Site relevant to Web Content Management.
Once you’ve created your Page and saved it you can click on "Check In to Share Draft", it says what it does on the tin and allows all Members of the Site to see the draft version.
Clicking on the Page Status in the Page Tool bar shows a pop-up window that explains the status of the Page.
Configuring Workflow on a Pages Library
By clicking on Start Workflow in the Workflow menu on the Page Tool bar you’ll initiate a workflow for that Page.
By default, the Publishing Site does not have Workflow associated with it so you’ll see the above message.
By going to Site Actions | Site Settings | Modify Pages Library Settings you’ll progress to the settings screen.
From here you can select Workflow settings from the Permissions and Management section. If you click on Add new workflow you will see the various options that are available to configure. Out of the box there are four Workflow templates: Approval, Collect Feedback, Collect Signatures and Disposition Approval. You can also create your own Workflow templates, a recent blog post on creating these will walk you through this.
I created an Approval workflow for this walk thru. The above screen shows the first part of the wizard where you chose the Approval template and give it a unique name for the Page Library. This gives you the ability to have multiple Approval workflow instances but with different configurations for particular scenarios. On this screen you can also enforce that this workflow is required to publish a major version of the Page to the Publishing, e.g. so it is visible by everyone not just "Members" and "Owners" of the web site.
Parallel or Serial: The approval workflow allows you to run approval in parallel or serial mode. Both require all of the designated approvers to approve the page before it is published. You can also give the approvers the ability to reassign the task and also request a change to the Page before completing the task.
Assign Approvers: The above screen shows how you can assign multiple approvers and also provide a message by default which can be modified when submitting a workflow for a particular page.
Due Date: Here you can also enforce a due date to complete the task for in a parallel workflow or give a number of days for each approver to have in a serial workflow.
Notify Others: You can also notify other people by default on a workflow being kicked off.
Complete the workflow: This gives you the ability to state that if you have stated 5 approvers but only require 3 of them to complete their tasks then that will be accepted and publish the page…often called Voting workflow in other vendor products.
Submitting a Page for Workflow
Navigating to a page that is in "Draft" status, you will see a Submit for Approval button.
You will see that the two default approvers are in there, as well as the default due date and notifying users. These options can be overridden for particular scenarios.
Here is a sample out of the box Approval Workflow email sent to one of the approvers.
Simple Approve and Reject buttons appear in the Page Toolbar when the Approver views the page which speeds up the process with one-click approvals.
The Workflow history screen shows details of who has been assigned tasks at various stages throughout the workflow.
MOSS 2007 comes with a lot of out of the box views for viewing Pages within a Site, for instance being able to see all Pages checked out to the user or last modified by the user. Nice publishing paradigm type views also exist such as Going Live within next seven days and I’m assuming that custom views are easy to set up.
Above is an example of showing two Tasks assigned to the user for Approval Requests.
Above is an example showing all the Workflow tasks within the Site Pages so you can see who has tasks across the Members/Owners group.
Checked out Pages
This is a great view for keeping the Site tidy from orphan drafts that have been left in draft for a while, you can delete these versions or even have it kick off a Workflow to escalate it to the user to get the Page finished.
The above screen shot shows the version control for a page and the ability to delete draft versions and see what changes were made at each iteration.
The ability to compare two versions of a Page and highlight what’s added and deleted is a great feature for quickly allow the Approver to focus on what has changed so he can keep his approval process more efficient. This is exceptionally handy for Approvers who have to look over ten or more pages in one hit.
Non-Approved changes don’t get published and this means that any "Visitors" to the web site will not see the changes. If "Members" or "Owners" visit the page they will see the changes in draft status although it’s not particularly clear that is the case. This can present problems in how you define what a Member of a Publishing site is and what a Visitor is. People may get complacent and not bother publishing the content so that Visitors can see it if all the Members can see it and this is the majority of the visitors to an internal Publishing site for example. It is important to ensure that there are significant warnings to prevent this scenario from happening. Interestingly, if you create a new page and it isn’t approved only the Members and the users sent to Approve the page can see it.
There appears to be no way to lock down the overriding options on the out of the box workflow templates, for example, a user could just remove the approvers and just have one in there to speed things up.
My Global Tasks
The Issue with these views is that it is only per site so depending on how you architect the solution you could have to view "Pages" folders at each site level to see all your tasks. So there is no central view for Approval tasks etc. within SharePoint apart from the Emails you receive in your Inbox.