Skip to content

Pivot Table

The Pivot Table widget presents data in a customizable tabular format, providing powerful data summarization and analysis capabilities. Unlike charting widgets (bar chart, column chart, line chart, pie chart), the Pivot Table does not directly use a data model; instead, it relies on a database query defined within the form to fetch data.

Before using a Pivot Table, a database schema must be defined or imported into the process definition. A database query is then created to retrieve the necessary data from the database. This query can involve multiple tables and columns. The Pivot Table allows users to customize the display of this data by defining rows and columns.

Query Definition

The Pivot Table's query (specified in the widget configuration) defines the base dataset. Users can filter this data at runtime, but the underlying query structure itself cannot be altered.

Templates

Customizable templates allow modifying the visual presentation of the data. Multiple templates can be defined. By default, template editing is disabled. To enable user template editing, set the AllowEditingTemplates property to true. User-defined templates are stored in the data model and merged with default templates.

Charts

Charting functionality can be enabled by setting the EnableCharts property to true.

Pivot View

Besides the standard tabular view, the Pivot Table offers a pivot view. The pivot view transforms query rows into columns, aggregating values for each column.

Value Transformations

Some columns may require transformations before being displayed. For example, a column containing a date can be transformed into a formatted string. Transformations are defined in the column configuration.

Example: Employee Data

The following example shows a Pivot Table configured to display data from an Employee table:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
<PivotTable XPath="Pivot" AllowEditingTemplates="" EnableCharts="">
    <Query Id="cdcae6f3-949d-4860-bc26-53c486bf22a5">
        <Parameters>
            <TargetSchema Caption="HR">HR</TargetSchema>
            <TargetTable Caption="Employee">Employee</TargetTable>
        </Parameters>
        <Columns>
            <Column Expression="Id">
                <Transforms/>
            </Column>
            <Column Expression="Person.DisplayName">
                <Transforms/>
            </Column>
            <Column Expression="User.EMailAddress">
                <Transforms/>
            </Column>
        </Columns>
    </Query>
    <Templates/>
</PivotTable>