How to modify task form in custom task process in order to have extra fields

In this step by step tutorial, I will show you a way to enrich the user experience by presenting the meta data of you item (for example contract columns) in the same form as your task. So the user doesn’t need to have an extra click to see that information and all the required information are available in a single task page.

In a series of posts, I am describing the different features of Custom Task Process in Microsoft SharePoint designer. You can see a list of link to all posts here.

It is better you first create the simple working example of Custom Task Process in SharePoint designer and then you can check other posts that you are interested in.

As you see when you use the default task page of the SharePoint, only tasks fields will render in user interface and the user has to click on a link to redirect to the actual item and see the data. In our example which we have developed in a couple of posts, as you see we are creating a workflow for the contract approval form.

The task which is assig to the user is something like this:

Figure 1 – default task interface

And after click on the provided link, it redirects to the contract information

Figure 2 – contract information

In this post I want to introduce a technique about consolidating data from these two forms to just one form, so the user can see both data in a form and do the proper action accordingly. To develop this example, I use Microsoft SharePoint designer 2013 and SharePoint online service. I developed this example based on the SharePoint 2010 workflow engine.

First you have to identify which fields you want to show in the task form. For example, I want to show these fields:

Contract Title

Contract Description

Start Date

Report Status

You have to go to the task process configuration panel. Then you have to create those fields by clicking on Task Form Fields New Button.

Figure 3 – Task process configuration panel

You have to click on Add, then name your column and select the type of column you want to add here:

Figure 4 – add column

If you have the column already in your site, you can click on Choose Existing Fields and add it from the existing site columns

Figure 5 – add from existing site columns

Figure 6 – all column added

Because here we just want to show the data inside the task form, I select a single line of text as the column type for all of these columns

By adding these fields here, SharePoint designer will create those fields in your site too. So if you go to the site setting page and click on the Site Columns gallery, you will see them there.

Figure 7 – site column gallery

After adding all of the required columns, you have to fill them in the task process. So click on the Change the behavior of the single task link to open the panel.

Figure 8 – change the behavior of the single task

Then you have to fill these fields, every time a new task is created. We will do it here, because it is possible that in the process of the workflow, some contract fields change and we want to have the most recent one every time a new task is created.

In the before a task is assigned section, add an action for Set a task field:

Figure 9 – set a task field

Select the task field you want to fill out, for example the contract title

Figure 10 – task fields

In the Value, click on the Fx and then select current item for the data source and set field from source to Title:

Figure 11 – set values

The end result will be something like this:

Figure 12 – all values are set

At this point publish the workflow.

Then you have to modify the InfoPath form which is associated with this task.

So you have to go to the first page of the workflow in SharePoint designer and in the forms section click on the Task _xxx.xsn (the name may be different for you)

Figure 13 – task form

By clicking on the link, InfoPath designer application will automatically open up the file

Figure 14 – InfoPath

Now you can see all the new added fields automatically added to the infopath form. You can do some modification if you like, and then publish the form again by clicking on this quick publish icon at the top left.

Figure 15 – publish icon

You have to save the form somewhere in your local hard drive before publish.

Now, whenever you run the workflow, extra fields will be available in the task form.

Since the default pages are based on Microsoft InfoPath for custom task process in SharePoint designer, it is hard to accomplish the same functionality in aspx pages.
I think the only possibility is to use visual studio for SharePoint workflow development to get the functionality.

I follow your steps but in SPD13 I have a different page. Where you need to click on “Task Form Fields New Button”, the task process configuration panel looks totally different. It shows “Views” and thereunder “Forms”, “Workflows”, “Custom Actions”.
Where is this panel in your FIGURE 3?
Please help

You have to start the workflow creation process by choosing either the approval workflow or publishing approval workflow and by right clicking and choosing copy and modify.

Give name and select a content type….
When the designer opens you can click on the approval process link to get to that pain.
*Note – by doing so you are actually creating a SP 2010 based workflow so there will be certain limitations.

How can I ask for an attachment in the first step and check if first person added an attachment. I can do this in a task but how to do this in a task process? Can I add this check before going further to the next step?

About SJ

Farshid Mahdavipour, MCSE, PMP
SharePoint Junkies (SJ) is a place to share my thoughts and experience on Microsoft technologies with the emphasize on Azure (IaaS, PaaS, SaaS), SharePoint Server and related products including Project Server, SQL Server … Information Architecture and IT governance is the main focus of this blog and also I will examine these products from administration and development viewpoints.