Active Work Session List

Prev Next

View the list of currently running work sessions, taking into account the things in the navigation context.

Active Work Session List

The list supports pagination, and items can be searched and sorted based on properties.
The list shows one column for each property or composite part defined in the template.
Each value can be displayed through filters (e.g., Progress Bar for the Progress column).

Below the list, you can interact with the pagination control (default 20 items at a time).
This is automatically hidden if there are fewer items than the number of items to be loaded per page (configurable with the ā€œPage Sizeā€ option).
Entering the page, the list is sorted by the first column ascending, but optionally, you can refine it through the ā€œInitial Sortingā€œ widget property.

Details Navigation

Clicking on a row opens the work-session details pop-up. Optionally, the work-session details can be opened in a full page (see Details Mode option).

The header of the work-session details popup contains the work-session name, description, and a breadcrumb that provides the context of the work-session, and whose tokens can be clicked to quickly jump to related objects (e.g., Customer, Location, Thing).

The work-session details body is generated through a template specified within the work-session definition page. If not specified, clicking on the row produces no effect.

On the work-session list rows, you can also click directly on specific information to jump to the work-session-related objects:

  • Customer Name / Code → Customer details page

  • Location name → Location details page

  • Thing Name / Serial Number → Thing details page

In all other cases, the work-session details pop-up/page is opened.

Search for Active Work Sessions

On the top right part of the widget, a search control bar allows filtering active work sessions by a text key.

Optionally, by pressing the Advanced Search icon, a dedicated panel allows the DPS user to specify multiple conditions based on properties.

The provided inputs are preserved during navigation, also across pages in case the same widget ā€œIdā€ is used.
Optionally, by using the ā€œQueryā€œ property, a set of conditions for pre-filtering work sessions can be defined in the template (e.g., failures only).
In the template, you can specify the ā€œSearch Fieldsā€œ used to filter work sessions by text key.
In case the ā€œQuery Variableā€œ property has been defined (the list is filtered from a Search Field placed on the page), the search control bar is automatically hidden and thus not visible to the user.

The advanced search allows filtering work sessions by:

  • Text Key: text that is searched in the name, title, and description of each work session.

  • Customer: a customer can be selected, in the case of a user belonging to an organization or partner.

  • Period: the time period used to filter work sessions by start timestamp.

  • Type: type of work session, choosing one or more definitions.

  • Topic: one of the topics associated with work sessions (e.g., Maintenance).

By clicking the Export button, all active work sessions that meet the search criteria can be downloaded as a CSV file.

Template Syntax

Below you can find some examples of how to use the component within a template.


<active-work-session-list-widget-v2 [title]="'Active Cookings'">
	<property name="name"></property>
	<property name="date"></property>
	<property name="thing.serialNumber"></property>
	<property name="description"></property>	
	<property name="duration"></property>
</active-work-session-list-widget-v2>

Component Reference

Here is a comprehensive list of all the elements and properties that can be used to configure the component.

Active Work Session List <active-work-session-list-widget-v2>

Click On Row Behaviour/

The expected behaviour when a row is clicked.

Name: clickOnRowBehaviour

Type: ENUM | Optional

Values: OPEN_DETAILS, OPEN_CONTEXT_OBJECT

DEPRECATED

clickOnRowBehaviour="OPEN_DETAILS"

Controls Enabled

The boolean flag indicating whether controls (e.g. Search, Export) are enabled on the widget.

Name: controlsEnabled

Type: BOOLEAN | Optional

Default Value: true

[controlsEnabled]="false"

Details Mode

The way the details page is opened when the details icon is clicked. If non the details icon is not present.

Name: detailsMode

Type: ENUM | Optional

Values: PAGE, POPUP, NONE

Default Value: POPUP

detailsMode="PAGE"

Empty Message

The blank message to be displayed in the widget in case no item was found. To manage translations, you can define a label and use the key as the value of the property.

Name: emptyMessage

Type: STRING | Optional

emptyMessage="No customer found"

Page Size

The number of items to load on each page.

Name: pageSize

Type: INTEGER | Optional

Default Value: 50

pageSize="100"

Period Variable

The id of the page's variable providing the date range filtering period, for instance the id of a <period-filter-field>.

Name: periodRef

Type: STRING | Optional

periodRef="abc"

Query

The array of conditions filtering out items. For instance: [query]='[{'property': 'connectionStatus', 'predicate': 'eq', 'value': '1'}]'  Predicates: eq, beginsWith, like, notLike, isEmpty, isNotEmpty, gt, gte, lt, lte.

Name: query

Type: QUERY | Optional

Predicates: beginsWith, eq, neq, gt, gte, isEmpty, isNotEmpty, lt, lte, like, notLike

[query]="[{property:'prop1', predicate: 'eq', value: 'foo'}, {property:'prop2', predicate: 'in', value: ['bar', 'baz']}]"

Query Variable

The id of the page's <things-filter-field> used for searching.

Name: queryFieldRef

Type: STRING | Optional

queryFieldRef="query-1"

Title

The title displayed on the top part of the widget box.

Name: title

Type: STRING | Optional

[title]="'Details'"

Rendering

CSS Class

The name(s) of the CSS class used to customize the widget layout.

Name: class

Type: STRING | Optional

class="my-custom-class"

Visibility Condition

The expression that allows you to reduce the visibility of the element.

Name: *ngIf

Type: STRING | Optional

*ngIf="getUser().organizationId != null"

Sub Elements

Property

The property whose value must be displayed within the work session detail row.

Composite Part

The composite part whose value must be displayed within the work session detail row.

Property <property>

Description

The property description.

Name: description

Type: STRING | Optional

description="abc"

Filter

The name of the filter used to transform and display values.

Name: filter

Type: FILTER | Optional

filter="fooBarFilter"

Label

The property alternative label.

Name: label

Type: STRING | Optional

label="Temperature"

Name

The property whose value must be loaded by the widget.

Name: name

Type: PROPERTY | Required

name="serialNumber"

Advanced

Column CSS Class

The name(s) of the column CSS class used to customize the table column.

Name: columnClass

Type: COLUMN_CSS | Optional

columnClass="my-column-custom-class"

Show Header

The flag indicated whether the header is visible.

Name: showHeader

Type: BOOLEAN | Optional

Default Value: true

[showHeader]="false"

Visibility Condition

The expression that allows you to reduce the visibility of the element.

Name: *ngIf

Type: STRING | Optional

*ngIf="getUser().organizationId != null"

Composite Part <composite-part>

Description

The composite-part description.

Name: description

Type: STRING | Optional

description="abc"

Filter

The filter applied on the composite-part to transform or display its value.

Name: filter

Type: FILTER | Optional

filter="fooBarFilter"

Label

The label displayed by the widget.

Name: label

Type: STRING | Optional

label="abc"

Name

The composite-part name.

Name: name

Type: STRING | Optional

name="abc"

Advanced

Column CSS Class

The name(s) of the column CSS class used to customize the table column.

Name: columnClass

Type: COLUMN_CSS | Optional

columnClass="my-column-custom-class"

Show Header

The flag indicated whether the header is visible.

Name: showHeader

Type: BOOLEAN | Optional

Default Value: true

[showHeader]="false"

Visibility Condition

The expression that allows you to reduce the visibility of the element.

Name: *ngIf

Type: STRING | Optional

*ngIf="getUser().organizationId != null"

Sub Elements

Property

The property whose value must be loaded within the composite-part.

Property <property>

Name

The property whose value must be loaded by the widget.

Name: name

Type: PROPERTY | Required

name="serialNumber"