Optimized Calculation Engine
- 3 minutes to read
In 19.2, the PivotGridControl can operate in Optimized mode and use the Optimized Calculation Engine. The Optimized Calculation engine provides new functionality and improves performance but does not support legacy features.
New Functionality
To switch to Optimized mode, set the PivotGridOptionsData.DataProcessingEngine property to DataProcessingEngine.Optimized:
Intermediate Level Aggregations
Intermediate Level Aggregations use the summary function to calculate values for data obtained from the first specified data source column, group data by the next specified columns, and calculate group summaries. Aggr functions can be nested and you can summarize aggregated data in an expression.
Tip
Documentation:
WinForms Pivot Grid Demo:
- Code Examples - Intermediate Level Aggregations (Optimized Mode) - Filter Sales by Year by country module in the XtraPivotGrid MainDemo
- Code Examples - Intermediate Level Aggregations (Optimized Mode) - Average sales by year module in the XtraPivotGrid MainDemo
- Code Examples - Intermediate Level Aggregations (Optimized Mode) - Grouping by year of first sale module in the XtraPivotGrid MainDemo
Window Calculations
Window calculations use window functions to calculate data across a set of window rows related to the current row. Partitioning criteria are applied to rows to arrange them in partitions (a subset of rows in a data table).
Tip
Documentation:
- Window Calculations Overview
- Partitioning Criteria
- Creating Window Calculations
- Window Calculation Functions
WinForms Pivot Grid Demo:
Data Binding API
The key concept of the Data Binding API is the data binding source. The Data Binding API does not divide PivotGrid fields into bound and unbound. The field’s DataBinding property defines how the Pivot Grid field gets data. All functionality related to calculations are encapsulated into the data binding source - the DataBindingBase descendant that is assigned to the field’s DataBinding property.
The Data Binding API is in effect only in Optimized Mode. Other calculation engines ignore the DataBinding property.
Optimized Mode Restrictions
Note
Server mode is not supported when the Pivot Grid uses the Optimized calculation because this engine calculates data on the client side.
The following API are not supported in Optimized mode. The NotSupportedException occurs in Optimized mode for unavailable values, properties, and handled events.
Events
Use expressions, Aggr Functions, Window Functions instead the API listed above.
Properties
The following field’s properties are not supported:
The following field’s properties are not supported when their value is set to Custom:
Property | Value |
---|---|
PivotGridField.SummaryType | PivotSummaryType.Custom |
PivotGridField.GroupInterval | PivotGroupInterval.Custom |
PivotGridField.SortMode | PivotSortMode.Custom |
The field’s properties listed below are ignored when you use data binding API:
You can set the PivotGridFieldBase.DataBinding property to null to use them.