User Activity

The user Activity is used to create an actionable item assigned to a user. In addition the User Activity creates a Task that is assigned to one or more users. The Task governs the actions the user must complete and when. The User Activity configures how the Task will be assigned and completed, while the Task is the object that governs how the user interacts with the system while the Task is running.

Because User Activities always assign a Task to a user, the terms 'User Activity' and 'Task' are often used interchangeably. Technically, the Task is a separate object from the User Activity in the Process Director system, but both are inextricably linked, and are initiated, run, and completed in tandem. From the end user's perspective, the User Activity and Task are essentially indistinguishable; however, from an implementer's perspective these objects are not the same. When creating a condition, the dropdown menu for the Choose System Variable dialog box has separate groups for Tasks and Timeline activities, each with their own attributes to access.

The Task options are only relevant to a user Task, while the Timeline Activity options are applicable to all Process Timeline activity types. The Task—which, again, is an inextricable part of a User Activity—has some evaluable properties that are not relevant to other types of Timeline Activity and are only useable when a user Task is running.

The distinction between the two is not enormously important, but it's something to keep in mind as an implementer, especially when building conditions related to User Activities. Some of the conditions you might wish to evaluate can only be found in the Task group of the dropdown menu. Similarly, the Task group is not relevant for creating conditions for non-User activities.

User Assignment #

When a User activity starts, task assignment to the configured participants runs immediately, and only runs once. If there are any running or completed instances of the Process Timeline, changing the Timeline definition will not affect them. Once the Task assignment has been made for an activity, the only way to change it in a running activity instance is to open the Process Timeline instance, open the properties for the running activity, and manually change participants or, if the configured participants have been changed, restart the activity. Both of these actions are an administrative intervention in the running instance.

The important thing to remember is that Task assignment can only occur once, and only when the activity starts running. Only the participants who are configured when the activity starts will be included in the task assignment.

You should also note that the Restart Users property, described below in the Advanced Options Tab section, may still restart some previously assigned users, based on the settings chosen. This property should be set to Start only configured task participants to ensure that only the currently configured users are assigned to the task upon restart.

If a Task has been assigned to a user, it will appear in the user's Task List. The user must complete the task before it can be removed from the Task List. A user who is assigned a task will be automatically given permission to any object in the Process Timeline package so they may complete the task. Examples of this task can be an approval task or update task.

When a Task is assigned to a user with an invalid UID or user ID, Process Director will immediately stop the process, and place the Process Timeline Activity into an error state. This is also true for anonymous user assignments if the email address isn't a valid format (Process Director can't validate the email address itself, only the format).

Note If your process includes tasks for unauthenticated users, please refer to the documentation on Anonymous Users for special concerns that may apply to some settings.

In addition to the common properties tabs that appear for all Timeline activities, the configuration settings below are unique to this Activity Type.

Documentation Example #

The example below walks through the process of configuring a User Activity.

Participants Tab #

Determines which users are a participants of the user task. Users can be added via the Add Participant button, and the participants can be specified via the Participant Type dropdown.

When multiple users are assigned to a task, a Subtask can be created for each user. You must have a form field that specifies the name of each desired subtask.

In this example, each user is assigned a Subtask Name from a different form field, i.e., Subtask1Name, Subtask2Name, and Subtask3Name. When the users are assigned their task, Both the Task Name (which is the Activity's Name) and Sub Task Name will be assigned to them, so that you can track both the task and subtask for each user as they are completed.

For Process Director v 6.0.100 and higher, each subtask can have a unique due date, assigned via a System Variable. Unlike prior versions, where a single due date was assigned to both the Timeline Activity and all of it's included subtasks, you can now configure a Business Rule to return a unique Due Date for each subtask, based on any evaluable condition, such as the Sub Task Name.

In this example, the Business Rule, named SubtaskDueDatesBR, will return one of three different due dates, based on the name of the Subtask, e.g. "Subtask1", "Subtask2", or "Subtask3". On the Due Date tab of the Timeline Activity, this Business Rule is reverenced in the Set due date from system Variable property to provide the appropriate due dates for each subtask.

Since each subtask is assigned to as different user, Process Director will pass the Sub Task Name for that user to the Business Rule when the subtask is assigned, which will return the unique due date for each subtask participant.

Results Tab #

The Results Tab appears when either the User or Wait Activity Types are selected. The Process Activity also has a result, which is generated automatically, and is explained in the "Results of a Process Activity" section below.

A user Activity in the Process Timeline can have results assigned to it. Multiple results can be added to an Activity by clicking on the Add Result Button.  Each result will have its own properties, which are presented in a tabbed interface.

The results will be used as the Activity result for the task, which will appear in the Routing Slip and in the Timeline Administration screen.

Conditions Tab #

This is one of the two tabs displayed for each result's configuration settings. The Conditions Tab includes the following controls.

Conditions Tab

Options Tab

This is one of the two tabs displayed for each results configuration settings. The Options Tab includes the following controls.

Options Tab

Due Date Tab #

The standard options for the Due Date tab are described in the Due Date Tab section of the Timeline Activities topic. The User Activity Type also has an additional option specific to the User Activity Type.

Advanced Options Tab #

This tab provides many additional settings for controlling task assignment, completion, Activity restarts, and more, as described below.

Other Activity Types

To view the documentation for other Activity Types, you can navigate to them using the Table of Contents displayed in the upper right corner of the page, or by using one of the links below.

Notify: This Activity Type sends email notifications to users who aren't participants in the process.

Process: This Activity Type invokes a different process that will run as a separate, synchronous subprocess.

Script: This Activity Type enables you to invoke a custom script.

Custom Task: This Activity Type invokes a Custom Task to run when the Activity starts.

Form Actions: This Activity Type enables you to manipulate the Form used for the process.

Branch: This Activity Type enables you to change the operation of the Process Timeline to invoke a specified Activity.

Parent: This Activity Type serves as a container for other activities and to create a looping segment in a Process Timeline.

End Process: This Activity Type enables you to conditionally end a process.

Wait: This Activity Type enables you to pause a Process Timeline.

Case: This Activity Type enables you to manipulate the Case instance that is associated with the Process Timeline.