Configuration

This section describes the configuration options of the dxPivotGrid widget.

allowExpandAll

Allows an end-user to expand/collapse all header items within a header level.

Type: Boolean
Default Value: false

With this option enabled, an end-user can right-click a header level and choose the corresponding context menu item to expand or collapse all header items within this level.

Show Example:
AngularJS
Knockout
jQuery

In this demo, the allowExpandAll option is set to true. Right-click any header level in the pivot grid to invoke the context menu that enables you to expand/collapse the corresponding header items.


                                    

                                    

In this demo, the allowExpandAll option is set to true. Right-click any header level in the pivot grid to invoke the context menu that enables you to expand/collapse the corresponding header items.


                                    

                                    

In this demo, the allowExpandAll option is set to true. Right-click any header level in the pivot grid to invoke the context menu that enables you to expand/collapse the corresponding header items.


                                    

                                    

allowFiltering

Allows an end-user to change filtering options.

Type: Boolean
Default Value: false

With this option enabled, an end-user can filter pivot grid data using the filter icons in the Field Chooser.

Show Example:
AngularJS
Knockout
jQuery

Use the switch below the pivot grid to enable/disable the filtering feature. When this feature is enabled, invoke the field chooser and filter data using the filter icon of any row or column field there.


                                    

                                    

Use the switch below the pivot grid to enable/disable the filtering feature. When this feature is enabled, invoke the field chooser and filter data using the filter icon of any row or column field there.


                                    

                                    

Use the switch below the pivot grid to enable/disable the filtering feature. When this feature is enabled, invoke the field chooser and filter data using the filter icon of any row or column field there.


                                    

                                    

allowSorting

Allows an end-user to change sorting options.

Type: Boolean
Default Value: false

With this option enabled, an end-user can sort pivot grid data by clicking the arrow icons in the Field Chooser.

Show Example:
AngularJS
Knockout
jQuery

Use the switch below the pivot grid to enable/disable the sorting feature. When this feature is enabled, invoke the field chooser and sort data using the arrow icon of any row or column field there.


                                    

                                    

Use the switch below the pivot grid to enable/disable the sorting feature. When this feature is enabled, invoke the field chooser and sort data using the arrow icon of any row or column field there.


                                    

                                    

Use the switch below the pivot grid to enable/disable the sorting feature. When this feature is enabled, invoke the field chooser and sort data using the arrow icon of any row or column field there.


                                    

                                    

allowSortingBySummary

Allows an end-user to sort columns by summary values.

Type: Boolean
Default Value: false

With this option enabled, an end-user can use the context menu of a column or row header to apply sorting by summary values.

Show Example:
AngularJS
Knockout
jQuery

Use the switch below the pivot grid to enable/disable the capability to sort data by summary values. When this capability is enabled, right-click a row or column header to invoke the context menu that enables you to sort data by summary values held in this row or column.


                                    

                                    

Use the switch below the pivot grid to enable/disable the capability to sort data by summary values. When this capability is enabled, right-click a row or column header to invoke the context menu that enables you to sort data by summary values held in this row or column.


                                    

                                    

Use the switch below the pivot grid to enable/disable the capability to sort data by summary values. When this capability is enabled, right-click a row or column header to invoke the context menu that enables you to sort data by summary values held in this row or column.


                                    

                                    

dataSource

Specifies a data source for the pivot grid.

To provide data for a pivot grid, use the dataSource option. This option takes on one of the following.

  • An array of objects
    The fields of each object will be used to provide data for corresponding pivot grid fields.

  • A PivotGridDataSource or its Configuration Object
    The DataSource is an object that includes options for data sorting, grouping and filtering. The DataSource's underlying data access logic is isolated in a Store. Unlike the DataSource, a Store is a stateless object implementing a universal interface for reading and modifying data. If the Store type is not XmlaStore, the PivotGridDataSource also describes pivot grid fields.

For more information on how to implement a data source and bind it to your pivot grid, refer to the Data Binding topic.

Show Example:
AngularJS
Knockout
jQuery

In this demo, an XmlaStore underlies the dxPivotGrid data source.


                                    

                                    

In this demo, an XmlaStore underlies the dxPivotGrid data source.


                                    

                                    

In this demo, an XmlaStore underlies the dxPivotGrid data source.


                                    

                                    

disabled

A Boolean value specifying whether or not the widget can respond to user interaction.

Type: Boolean
Default Value: false

Create an observable variable and assign it to this option to specify the availability of the widget at runtime.

Show Example:
AngularJS
Knockout
jQuery

Use the switch below the pivot grid to enable/disable it.


                                    

                                    

Use the switch below the pivot grid to enable/disable it.


                                    

                                    

Use the switch below the pivot grid to enable/disable it.


                                    

                                    

export

Specifies options for exporting pivot grid data.

Type: Object

When exporting is enabled, the new 'Export to Excel file' entity is added to the context menu. You can specify exporting options using this object.

NOTE
Exporting features require the JSZip library. Please add a reference to this library to your page. You can get it from the js folder of your DevExtreme Package or use the DevExpress CDN as shown below.
HTML
<script type="text/javascript" src="https://cdn3.devexpress.com/jslib/15.2.15/js/jszip.min.js"></script>
Show Example:
AngularJS
Knockout
jQuery

In this demo, click the export icon in the upper-left corner to export the pivot grid. [note] This example will not work in IE8, IE9 and Safari.


                                    

                                    

In this demo, click the export icon in the upper-left corner to export the pivot grid. [note] This example will not work in IE8, IE9 and Safari.


                                    

                                    

In this demo, click the export icon in the upper-left corner to export the pivot grid. [note] This example will not work in IE8, IE9 and Safari.


                                    

                                    

fieldChooser

The Field Chooser configuration options.

Type: Object

A field chooser is a pivot grid element that allows an end-user to configure data displayed in the pivot grid. To invoke the field chooser, right-click any pivot grid header and select the Show Field Chooser item. You can also display dxPivotGridFieldChooser as a separate widget.

Show Example:
AngularJS
Knockout
jQuery

In this demo, the field chooser is enabled. To invoke it, click the icon in the upper-left corner of the pivot grid.


                                    

                                    

In this demo, the field chooser is enabled. To invoke it, click the icon in the upper-left corner of the pivot grid.


                                    

                                    

In this demo, the field chooser is enabled. To invoke it, click the icon in the upper-left corner of the pivot grid.


                                    

                                    

focusStateEnabled

Specifies whether or not the widget can be focused.

Type: Boolean
Default Value: false

height

Specifies the height of the widget.

Return Value: Number|String

The widget height.

Default Value: undefined

The option can hold a value of the following types.

  • number
    The height of the widget in pixels

  • string
    A CSS measurement of the widget height (e.g., "55px", "80%", "auto" and "inherit")

  • function
    A function returning the widget height (e.g., height:function(){ return baseHeight - 10 + "%"; })

hideEmptySummaryCells

Specifies whether or not to hide rows and columns with no data.

Type: Boolean
Default Value: true

hint

Specifies the text of the hint displayed for the widget.

Type: String
Default Value: undefined

loadPanel

Specifies options configuring the load panel.

Type: Object

When dxPivotGrid operates with a large number of records or uses a remote storage as a data source, loading data takes time. As data is being prepared, dxPivotGrid displays a load panel.

The load panel consists of a pane, a loading indicator and a text. You can specify whether the pane or loading indicator must be displayed using the showPane or showIndicator options respectively. The text displayed by the load panel can be specified using the text option. Also, you can change the height or width of the load panel using the corresponding options of the loadPanel configuration object.

Since the grid load panel is practically the DevExtreme dxLoadPanel widget, you can specify any option belonging to this widget in the loadPanel object.

Show Example:
AngularJS
Knockout
jQuery

Use the radio group below the pivot grid to change the loading indicator of the load panel. To invoke the load panel after making the change, click the "Reload Data" button. The loading indicators are created on the loading.io website.


                                    

                                    

Use the radio group below the pivot grid to change the loading indicator of the load panel. To invoke the load panel after making the change, click the "Reload Data" button. The loading indicators are created on the loading.io website.


                                    

                                    

Use the radio group below the pivot grid to change the loading indicator of the load panel. To invoke the load panel after making the change, click the "Reload Data" button. The loading indicators are created on the loading.io website.


                                    

                                    

onCellClick

A handler for the cellClick event.

Type: function
Function parameters:

Information about the event.

Object structure:
component: Object

The widget instance.

element: jQuery

The widget's container.

model: Object

Data that is available for binding against the element. Available only in the Knockout and AngularJS approaches.

area: String

The area to which the clicked cell belongs.

cellElement: jQuery

The cell's container.

The cell object.

rowIndex: Number

The index of the row to which the clicked cell belongs.

columnIndex: Number

The index of the column to which the clicked cell belongs.

columnFields: Array

The list of fields in the 'column' area.

rowFields: Array

The list of fields in the 'row' area.

dataFields: Array

The list of fields in the 'data' area.

jQueryEvent: jQuery.Event

The jQuery event.

Default Value: null

The cellClick event fires when a user clicks a pivot grid cell. When implementing a handling function for this event, use the object passed to this function as its parameter. Among the fields of this object, you can find data relating to the clicked cell.

onCellPrepared

A handler for the cellPrepared event.

Type: function
Function parameters:

Information about the event.

Object structure:
component: Object

The widget instance.

element: jQuery

The widget's container.

model: Object

Data that is available for binding against the element. Available only in the Knockout and AngularJS approaches.

area: String

The area to which the prepared cell belongs.

cellElement: jQuery

The container of the prepared cell.

The cell object.

rowIndex: Number

The position of a cell's row.

columnIndex: Number

The position of a cell's column.

Default Value: null

The cellPrepared event fires after a cell has been rendered. When implementing a handling function for this event, use the object passed to this function as its parameter. Among the fields of this object, you can find data relating to the prepared cell.

onContentReady

A handler for the contentReady event.

Type: function
Function parameters:

Information about the event.

Object structure:
component: Object

The widget instance.

element: jQuery

The widget's container.

model: Object

Data that is available for binding against the element. Available only in the Knockout and AngularJS approaches.

Default Value: null

Assign a function to perform a custom action when widget content is ready.

onContextMenuPreparing

A handler for the contextMenuPreparing event.

Type: function
Function parameters:

Information about the event.

Object structure:
component: Object

The widget instance.

element: jQuery

The widget's container.

model: Object

Data that is available for binding against the element. Available only in the Knockout and AngularJS approaches.

items: Array

An array of items to be displayed by the context menu. The item objects must have the fields that are used by the dxContextMenu default item template.

area: String

The clicked area type.

The cell that has been clicked to invoke the context menu.

cellElement: jQuery

The clicked cell's container.

columnIndex: Number

The index of the column to which the clicked cell belongs.

rowIndex: Number

The index of the row to which the clicked cell belongs.

dataFields: Array

Fields in the 'data' area.

rowFields: Array

Fields in the 'row' area.

columnFields: Array

Fields in the 'column' area.

Default Value: null

Assign a function to perform a custom action before a context menu is displayed in the grid. For instance, you can change the set of items in the menu.

onDisposing

A handler for the disposing event.

Type: function
Function parameters:

Provides function parameters.

Object structure:
component: Object

Provides access to the widget instance.

element: jQuery

An HTML element of the widget.

model: Object

Provides access to the data that is available for binding against the element. Available only in the Knockout and AngularJS approaches.

Default Value: null

Assign a function to perform a custom action when the widget is being removed.

NOTE
The function assigned to this option is executed only if the widget is removed using the remove(), empty(), or html() jQuery methods.

onExported

A handler for the exported event.

Type: function
Function parameters:

Information about the event.

Object structure:
component: Object

The widget instance.

element: jQuery

The widget's container.

model: Object

Data that is available for binding against the element. Available only in the Knockout and AngularJS approaches.

Default Value: null

Assign a function to perform a custom action after the exporting of grid data is completed.

onExporting

A handler for the exporting event.

Type: function
Function parameters:

Information about the event.

Object structure:
component: Object

The widget instance.

element: jQuery

The widget's container.

model: Object

Data that is available for binding against the element. Available only in the Knockout and AngularJS approaches.

fileName: String

The name of the file to which grid data is about to be exported.

cancel: Boolean

Indicates whether or not to cancel exporting.

Default Value: null

Assign a function to perform a custom action before exporting grid data.

onFileSaving

A handler for the fileSaving event.

Type: function
Function parameters:

Information about the event.

Object structure:
component: Object

The widget instance.

element: jQuery

The widget's container.

fileName: String

The name of the file to be saved.

format: String

The format of the file to be saved. Equals to 'EXCEL' for an Excel file.

data: BLOB

Exported data as a BLOB.

cancel: Boolean

To cancel file saving, assign true to this parameter.

Default Value: null

Assign a function to perform a custom action before an Excel file with exported data will be saved on the user's local storage.

onInitialized

A handler for the initialized event.

Type: function
Function parameters:

Provides function parameters.

Object structure:
component: Object

Provides access to the widget instance.

element: jQuery

An HTML element of the widget.

Default Value: null

Assign a function to perform a custom action when the widget is initialized.

onOptionChanged

A handler for the optionChanged event.

Type: function
Function parameters:

Provides function parameters.

Object structure:
component: Object

Provides access to the widget instance.

name: String

Specifies the name of the option whose value is changed.

fullName: String

Specifies a full name of the option whose value is changed. The full name is formed by concatenating the names of the options that are presented in the hierarchy of the given option. The names are delimited by commas.

value: any

Specifies a new value for the option.

element: jQuery

An HTML element of the widget.

model: Object

Provides access to the data that is available for binding against the element. Available only in the Knockout and AngularJS approaches.

Default Value: null

Assign a function to perform a custom action after an option of the component is changed.

rtlEnabled

Specifies whether or not the current component supports a right-to-left representation.

Type: Boolean
Default Value: false

If you need to switch the display of this DevExtreme component to right-to-left, enable a specifically designed configuration option - rtlEnabled. When this option is set to true, the text flows from right to left, and the layout the component's elements is reversed. To switch the entire application/site to a right-to-left representation, use the static DevExpress.rtlEnabled field.

scrolling

A configuration object specifying scrolling options.

Type: Object

The dxPivotGrid widget enables an end-user to scroll grid records. To specify required scrolling behavior, use the mode property of the scrolling configuration object.

View Demo

showBorders

Specifies whether the outer borders of the grid are visible or not.

Type: Boolean
Default Value: false

Show Example:
AngularJS
Knockout
jQuery

Use the switch below the pivot grid to change the visibility of the grid borders.


                                    

                                    

Use the switch below the pivot grid to change the visibility of the grid borders.


                                    

                                    

Use the switch below the pivot grid to change the visibility of the grid borders.


                                    

                                    

showColumnGrandTotals

Specifies whether to display the Grand Total column.

Type: Boolean
Default Value: true

Grand Total column displays the summary values of an entire row.

Show Example:
AngularJS
Knockout
jQuery

Use the switch below the pivot grid to change the visibility of the Grand Total column.


                                    

                                    

Use the switch below the pivot grid to change the visibility of the Grand Total column.


                                    

                                    

Use the switch below the pivot grid to change the visibility of the Grand Total column.


                                    

                                    

showColumnTotals

Specifies whether to display the Total columns.

Type: Boolean
Default Value: true

Total columns show the summary values calculated for all previous hierarchy levels starting with the deepest expanded one.

Show Example:
AngularJS
Knockout
jQuery

Use the switch below the pivot grid to change the visibility of the Total columns.


                                    

                                    

Use the switch below the pivot grid to change the visibility of the Total columns.


                                    

                                    

Use the switch below the pivot grid to change the visibility of the Total columns.


                                    

                                    

showRowGrandTotals

Specifies whether to display the Grand Total row.

Type: Boolean
Default Value: true

Grand Total row displays the summary values of an entire column.

Show Example:
AngularJS
Knockout
jQuery

Use the switch below the pivot grid to change the visibility of the Grand Total row.


                                    

                                    

Use the switch below the pivot grid to change the visibility of the Grand Total row.


                                    

                                    

Use the switch below the pivot grid to change the visibility of the Grand Total row.


                                    

                                    

showRowTotals

Specifies whether to display the Total rows.

Type: Boolean
Default Value: true

Total rows show the summary values calculated for all previous hierarchy levels starting with the deepest expanded one.

Show Example:
AngularJS
Knockout
jQuery

Use the switch below the pivot grid to change the visibility of the Total rows.


                                    

                                    

Use the switch below the pivot grid to change the visibility of the Total rows.


                                    

                                    

Use the switch below the pivot grid to change the visibility of the Total rows.


                                    

                                    

showTotalsPrior

Specifies where to show the total rows or columns.

Type: String
Default Value: 'none'
Accepted Values: 'rows' | 'columns' | 'both' | 'none'

By default, total rows and columns are shown after data (columns at the right side, rows at the bottom). You can place total rows, total columns or both before data using this option.

Show Example:
AngularJS
Knockout
jQuery

Use the select box below the pivot grid to change the position of total rows and/or total columns.


                                    

                                    

Use the select box below the pivot grid to change the position of total rows and/or total columns.


                                    

                                    

Use the select box below the pivot grid to change the position of total rows and/or total columns.


                                    

                                    

stateStoring

A configuration object specifying options related to state storing.

Type: Object

At runtime, end-users may adjust pivot grid settings to their needs. By default, these settings disappear when the pivot grid disposes (for example, on page reload) and the pivot grid appears in its original configuration. If user settings need to be saved and then restored, enable client-side state storing for the grid by setting the stateStoring | enabled option to true. The pivot grid state will be saved under a specified storage key. The saving operation is conducted after a certain amount of time has passed since the last change of the state. To specify the amount of time in milliseconds, use the savingTimeout option.

dxPivotGrid supports various types of state storing. The type of storage that will suit your needs best depends on the supposed lifetime of user-specified pivot grid settings. For more information about state storing types, refer to the type option description.

The PivotGridDataSource provides the state method. Use it to get or change the pivot grid state at runtime. Call this method without arguments to obtain the pivot grid state. When you need to set the pivot grid state, call this method with the state object as its argument. You can also return the widget to its default state by calling the state method with the empty object or null argument.

View Demo

tabIndex

Specifies the widget tab index.

Type: Number
Default Value: 0

texts

Strings that can be changed or localized in the dxPivotGrid widget.

Type: Object

useNativeScrolling

Deprecated

Use the useNative option instead.

Type: String|Boolean

visible

A Boolean value specifying whether or not the widget is visible.

Type: Boolean
Default Value: true

width

Specifies the width of the widget.

Return Value: Number|String

The widget width.

Default Value: undefined

The option can hold a value of the following types.

  • numeric
    The widget width in pixels.
  • string
    A CSS measurement of the widget width (e.g., "55px", "80%", "auto" and "inherit").
  • function
    The function returning the widget width. For example, see the following code.

    JavaScript
    width: function () { 
        return baseWidth - 10 + "%";
    }