Creating an Input Task

In different Business Process scenarios you will come across situations where you will need a user to take some action on a form. In such cases, you will create an Input Task in your Workflow and assign a screen as an Input task to the desired user. This user will be notified through a push notification when the task is triggered. Users can then open the task and take the desired action.

First, let us take a quick look at this video here to briefly understand how to create an Input task.

Let us now see how to create and use an Input task. Now let us try to create a workflow for approval of an expense by the Manager of the initiator. You need to create two screens:

  1. First screen through which the employee can enter expense details.

  2. Another screen, which will open after the manager receives the task notification.

This form would be opened when the manager gets the notification for the input task. It would contain all the details from the previous form. An additional control for Approved amount would also be added which would be the expense amount reimbursed after manager approval.

There are two ways in which the data can be bound for this form. One is the use of the query string parameters.

In this example we will add a Query string variable that would be used in the input task. To define the Query string parameters, go to Settings > Query String and click Add Query String (+). Now you can add the variable name to use and then assign dummy values that can be seen as preview. This is because Query string parameters will be called from the Input task to derive the values. Now let us create a workflow for the input task.

Hence the workflow is linked to the first form where the expense data was entered by the user. This data would then be derived by the approval form whenever the input task is initiated and the concerned user / manager/ initiator accepts or rejects it. The query string would be used for the purpose. It would contain all the details from the previous form.

Once you create a workflow, on the workflow editor screen, you need to click on " + " icon to add the tasks in the workflow.

Adding Input task

Now to add an Input Task in your Workflow select the option Input task under the Select Task section.

Now add a TASK NAME to this task. It is recommended that you use a meaningful name for the task as this text is visible to the user in the Status App whenever the task is executed.

You can put a condition/criteria in WHEN TO EXECUTE , which will be evaluated by the workflow engine to determine whether to execute the current tasks or not. The condition/criteria need to be evaluated to TRUE (boolean TRUE) to execute the task. If you leave the criteria blank, the task will always execute.

You can use dynamic data when the workflows are executed. For example, if you want to display the email address of the user who has initiated/started the workflow, then you can do so using Workflow Keyword INITIATED.INPUTBYEMAIL which has to be put within double curly braces {{}}, as shown in the above image. This will display the user’s email address in the Status App when the workflow is executed.

After you provide these details click Next, to Assign a user to the Input task and Select the desired screen to be opened.

Now the Input Task will be triggering the different screen you created for approval. So select the screen and the submit button for that form respectively. The next important thing to do is to link the Query string parameters to the Input task. You can also set the Permission for the fields to be displayed using Set Permissions for Field Display.

In the example below, we are not displaying the Expense type hence we have indicated / selected accordingly.

Once done you need to configure the setting to Assign the task to a specific user or a group of users.

Assigning a task

After you select the desired screen to open, you need to assign users for the current task under the ASSIGN TASK section. You can assign tasks directly to an individual user or a group of users based on the User Hierarchy .

For the sake of the Expense approval example we would be assigning the task to the initiator itself. However, you have the options to assign it to the initiator’s manager, a group of users or even a specific user.

If you want to assign any time limit to the task, then you can do so by putting the number of hours in the DEADLINE box under the Configuration Section . You can also enable the Reassign Task option if you want to reassign the current task to another user.

image

Once all the settings are done, click on the Done button to save the task settings. The newly created tasks will be displayed as shown in the below image. You can add a new task before or after the current by clicking on the corresponding ‘+’ sign. In this example we are adding an Update Sheet task to insert records in the Sheet for the approved expense amount.

Similarly, you can create as many INPUT FORM tasks in the workflow as per your requirements.

Now whenever you run the form for entering the expense details and then initiating the form for input from the manager, and click Submit, the input task would be triggered and assigned to the defined person. The manager would be sent a notification about the task.

The input task then derives the input from the previous form and processes it further depending upon the specified actions.

After your complete application is ready you need to Publish it before you can receive the notifications to your mobile or web app. So make sure you publish it and then run it.

Now let have a look at the output:

Reimbursement submission form:

Task assignment to the specific user (initiator in this example)

Input task triggered on clicking Open Task . The Manage or specific user gets the follow approval form. All the columns are read-only. The user would then only enter the Amount Approved and submit the form. The records would then be inserted to the Sheet as we have add an Update sheet task to insert the records.

You can also view the details by clicking the icon on the right hand side of the screen.

Thus we have seen how the Input Task works. The Initiator triggers the action to assign the task that awaits input from the concerned approver.