Skip to main content

PivotItem Class

A Pivot dashboard item that displays cross-tabular reports.

#Declaration

TypeScript
export class PivotItem extends DataDashboardItem

#Remarks

The Pivot dashboard item presents data using cross-tabular reports.

wdd-dashboard-items-pivot

The following documentation is available: Web Dashboard - Creating a Pivot.

#Example

The following example shows how to create the Pivot dashboard item, bind it to data and add to the existing dashboard.

Create data items (measures and dimensions) and use the DataItem.dataMember property to bind them to the existing data source’s columns. Then use the created measures and dimensions in the dashboard item to bind it to data.

After you add the created dashboard item to the Dashboard.items collection, call the Dashboard.rebuildLayout method to rebuild the dashboard layout and display changes.

javascript
// Use the line below for a modular approach:
// import * as Model from 'devexpress-dashboard/model'
// Use the line below for an approach with global namespaces:
// var Model = DevExpress.Dashboard.Model;

// ...
public createPivotItem() { 
    // Create data items for the Pivot dashboard item.
    var pivotCategoryName = new Model.Dimension();
    pivotCategoryName.dataMember("CategoryName");
    var pivotProductName = new Model.Dimension();
    pivotProductName.dataMember("ProductName");
    var pivotCountry = new Model.Dimension();
    pivotCountry.dataMember("Country");
    var pivotFullName = new Model.Dimension();
    pivotFullName.dataMember("FullName");
    var pivotExtendedPrice = new Model.Measure();
    pivotExtendedPrice.dataMember("ExtendedPrice");

    // Create the Pivot dashboard item and bind it to data.
    var pivotItem = new Model.PivotItem();
    pivotItem.name('pivot');
    pivotItem.dataSource(sqlDataSource.componentName());
    pivotItem.dataMember(sqlDataSource.queries()[0].name());

    pivotItem.columns.push(pivotCountry, pivotFullName);
    pivotItem.rows.push(pivotCategoryName, pivotProductName); 
    pivotItem.values.push(pivotExtendedPrice);

    control.dashboard().items.push(pivotItem);
    // ...
    control.dashboard().rebuildLayout();
}

#constructor

Initializes a new instance of the PivotItem class.

#Declaration

TypeScript
constructor(
    dashboardItemJSON?: any,
    serializer?: DevExpress.Analytics.Utils.ModelSerializer
)

#Parameters

Name Type Description
dashboardItemJSON any

A JSON object used for dashboard deserialization. Do not pass this parameter directly.

serializer ModelSerializer

An object used for dashboard deserialization. Do not pass this parameter directly.

#Properties

#autoExpandColumnGroups Property

#Declaration

TypeScript
autoExpandColumnGroups: ko.Observable<boolean>

#Property Value

Type
Observable<boolean>

#autoExpandRowGroups Property

#Declaration

TypeScript
autoExpandRowGroups: ko.Observable<boolean>

#Property Value

Type
Observable<boolean>

#columns Property

#Declaration

TypeScript
columns: ko.ObservableArray<DevExpress.Dashboard.Model.Dimension>

#Property Value

Type
ObservableArray<Dimension>

#columnTotalsLocation Property

#Declaration

TypeScript
columnTotalsLocation: ko.Observable<DevExpress.Dashboard.Model.PivotColumnTotalsPosition>

#Property Value

Type
Observable<PivotColumnTotalsPosition>

#interactivityOptions Property

#Declaration

TypeScript
interactivityOptions: DevExpress.Dashboard.Model.FilterableDashboardItemInteractivityOptions

#Property Value

Type
FilterableDashboardItemInteractivityOptions

#layoutType Property

#Declaration

TypeScript
layoutType: ko.Observable<DevExpress.Dashboard.Model.PivotLayoutType>

#Property Value

Type
Observable<PivotLayoutType>

#rows Property

#Declaration

TypeScript
rows: ko.ObservableArray<DevExpress.Dashboard.Model.Dimension>

#Property Value

Type
ObservableArray<Dimension>

#rowTotalsLocation Property

#Declaration

TypeScript
rowTotalsLocation: ko.Observable<DevExpress.Dashboard.Model.PivotRowTotalsPosition>

#Property Value

Type
Observable<PivotRowTotalsPosition>

#showColumnGrandTotals Property

#Declaration

TypeScript
showColumnGrandTotals: ko.Observable<boolean>

#Property Value

Type
Observable<boolean>

#showColumnTotals Property

#Declaration

TypeScript
showColumnTotals: ko.Observable<boolean>

#Property Value

Type
Observable<boolean>

#showRowGrandTotals Property

#Declaration

TypeScript
showRowGrandTotals: ko.Observable<boolean>

#Property Value

Type
Observable<boolean>

#showRowTotals Property

#Declaration

TypeScript
showRowTotals: ko.Observable<boolean>

#Property Value

Type
Observable<boolean>

#values Property

#Declaration

TypeScript
values: ko.ObservableArray<DevExpress.Dashboard.Model.Measure>

#Property Value

Type
ObservableArray<Measure>

#valuesPosition Property

#Declaration

TypeScript
valuesPosition: ko.Observable<DevExpress.Dashboard.Model.PivotValuesPosition>

#Property Value

Type
Observable<PivotValuesPosition>