Building Approval Workflows with SharePoint Server 2010

Workflows (sequences of connected steps) are an everyday occurrence in most offices and as such, SharePoint 2010 provides support for workflows. In this article we review how to add an approval workflow to a SharePoint Document Library.

The approval workflow is one of the few built-in workflows that come with the SharePoint 2010. Basically it allows you to receive an approval for a document from your superiors.

If you need a custom workflow you can create your own with SharePoint Designer or Microsoft Visio and import it into SharePoint Designer or program it inside Microsoft Visual Studio. How to do this is outside of the scope of the current article.

The sample workflow we are going to build will be triggered upon uploading a new document to a custom document library. Then the workflow will assign a task to a predefined user to approve the uploaded document. The status of the document – approved/rejected will be displayed in one of the columns of the library. And we will do everything without writing a single line of code!

The first step is  to create the Document library where the approval workflow will be enabled. To do this, select the “Site Actions” menu and then choose “New Document Library” as shown in Figure 1.

Create New Document Library - Site Actions menu

Figure 1 Create New Document Library – Site Actions menu

Next, the dialog for creating a new Document library will appear (Figure 2). Fill in “Purchase Requests” for the “Name” of the new library and optionally provide description. Select the options for “Navigation” and “Document Version History” – whatever fits to your requirements is fine as they are irrelevant to our example. For “Document template”,  select “Microsoft Word document”. You can choose whatever you wish but this current example we will use Word documents.

Create New Document Library

Figure 2 Create New Document Library

After you have filled in everything, click Create and the new document library will be created as shown in  Figure 3

Purchase Request Library is created

Figure 3 Purchase Request Library is created

Now it is time to enable the Approval workflow for our newly created library. To do so select “Library” from the “Library tools” and then select “Workflow Settings” as displayed in Figure 4.

Workflow Settings button

Figure 4 Workflow Settings button

This will start the wizard shown in Figure 5 which will help you to enable the approval workflow for the current document library. The first thing to do is select the workflow template from the list box in the “Workflow” section. You can choose from several out-of-the-box workflow templates but we will choose “Approval – SharePoint 2010”. Then we provide a name for our workflow:  “Expense approval”. The task list drop down  allows us to define a list where a new task will be assigned to the corresponding user. Let’s use the default value – “Tasks”. Later we will configure the users responsible for approving the documents. Next, we define the history list for the workflow. History lists are special logs which monitor the execution of the workflow.

Pages: 1 2 3


5 Responses to “Building Approval Workflows with SharePoint Server 2010”

  1. I need to create a workflow for document approval with following requirement.

    Instead of we defining users to approve, I need the end users to select users for their document to be approved.

    Ex: Staff X submits a document to the document library and will select 4 users (his line managers) to approve his document. Each manager will get a notification (one after another – serial workflow) for this and eventually the document gets approved.

    I want to know how a end user can select user by his own?…

    • If the end user is going to select the users responsible for approving the document, then the workflow should be started manually (after uploading a document).

      To allow the manual start, the relevant check boxes should be marked during creation of the workflow (Figure 5).

      To manually run a workflow, select the arrow next to the file name (Figure 8 ) and from the menu choose Workflow. Then click on the workflow you want to start.

  2. Pierre Schorochoff Reply March 24, 2010 at 12:18 am


    I heard that there is a way of using such workflow with external content type (SQL table). The idea is to use a sync between a custom table and the external content type.
    The workflow is triggered on the custom table of course. But how would you sync the 2 tables? You’ll have to create the code for that, won’t you ?



  3. Hi Pierre,

    I haven’t seen a use case similar to yours. However, it looks like that you will need to write some custom code. But don’t worry, writing a C# code is not so difficult.


  4. Awesome post to understand the workflow . i am new to sharepoint