In Tasklist, you can create and select filters. You can use these filters to create lists of tasks, sorted by specified criteria. To create a filter, select Create a Filter. You will then see a screen as depicted in the above image. You have several options to configure your filter:

  • General - Specify the name and description of the filter as well as assigning a color. Assign a priority to determine the order in which the filters are displayed on the dashboard. You can choose to have the filter automatically refresh the filter results by selecting the checkbox Auto-Refresh.The default refresh interval is 10 seconds.
  • Permissions - Specify which users or groups can see the filter. You can set the filter as globally accessible by selecting the checkbox Accessible by all users. A permission that is set here is equivalent to a READ permission which can also be set in EximeeBPMS Admin. In case you want to assign other permissions, you can do so in the Authorizations tab in EximeeBPMS Admin.
  • Criteria - Specify which tasks will be displayed when selecting the filter. A key and a value must be inserted. There are various keys which can be selected from the categories Process Instance (ID, Business Key), Process Definition (ID, Key, Name), Case Instance (ID, Business Key), Case Definition (ID, Key, Name), Other (Process Instance state, Activity instance ID, Execution ID), User/Group (Assignee, Owner, Candidate User or Group, Involved user, Unassigned, Delegation State), Task (Definition Key, Name, Description, Priority) and Dates (Created date, Due date, Follow up date). Keys marked with a * accept expressions as value.
  • Variables - Specify which variables are displayed in the filter results section of the dashboard. Setting variables here has no influence on which tasks are displayed. To set the variables, you need to insert a Name, which is the coded name of the variable, and a Label, which defines what the variable will be named in the filter results.

Expressions in Filters

Several of the filter criteria accept expressions as values. These expressions are written in JUEL. In filters which are related to times and dates, you can use the dateTime class, which returns a Joda-Time DateTime object.

Security Consideration

Filter expressions can be abused to execute arbitrary code when the query is evaluated. It is therefore required that any user authorized to create filters is trusted in this respect. The default behavior of evaluating filter expressions can be deactivated in the process engine configuration. See the section on security considerations for custom code for details.

Common Filters

In the table below we list some of the more common and useful filters that you can create in Tasklist and how to set them up.

Filter nameDescriptionCriterion
Key
Criterion
Value
All my tasksDisplays all tasks assigned to the currently logged in userAssignee$ { currentUser() }
Tasks of a specific userDisplays all tasks assigned to a specified userAssigneeUser ID of the user (e.g., demo)
All my groupsDisplays all tasks assigned to a user group of which the currently logged on user is a memberCandidate Groups${ currentUserGroups() }
Tasks of a specific groupDisplays all tasks assigned to a specific user groupCandidate GroupsGroup name (e.g., accounting)
Unclaimed tasks of a specific groupDisplays all tasks assigned to a specific user group which have not been claimed yetCandidate Groups,
Unassigned
Group name (e.g., accounting),
N/A
Unassigned tasksDisplays all tasks that have not yet been claimedUnassignedN/A
Overdue tasksDisplays all tasks that have a due date set in the pastDue Before${ now() }
Tasks due todayDisplays all tasks that have a due date set for the current dateDue After,
Due Before
${ dateTime().withTimeAtStartOfDay() },
${ dateTime().withTimeAtStartOfDay()
.plusDays(1).minusSeconds(1) }
Tasks due after a specific dateDisplays all tasks that have a due date set after a specified dateDue AfterThe specified date in accordance with ISO 8601 (e.g., 2015-01-01T00:00:01)
Tasks due within a specific timespanDisplays all tasks that have a due date set within a specified timespan (in this example, within 2 days)Due After,
Due Before
Expressions specifying the timespan
(e.g., ${ now() },
${ dateTime().plusDays(2) })
Tasks due after a specific timespanDisplays all tasks that have a due date set after a specified timespan (in this example, after 2 days)Due AfterAn expression specifying the timespan
(e.g.,${ dateTime().plusDays(2) })
Tasks with a certain priorityDisplays all tasks that are marked with a specified priority (in this example, priority 10)Priority10
Follow-up tasksDisplays all tasks that have a follow-up date set in the pastFollow Up Before${ now() }