Class
XmlaDataProvider

Provides OLAP cube data access and operations using XML for Analysis (XMLA) protocol. This data provider enables pivot operations on multidimensional data sources through XMLA web services, supporting MDX queries, hierarchical dimensions, and cube-based aggregations over HTTP/SOAP.

Definition

Namespace:Telerik.Pivot.Xmla

Assembly:Telerik.WinControls.PivotGrid.dll

Syntax:

cs-api-definition
public sealed class XmlaDataProvider : OlapDataProvider, IDataProvider, INotifyPropertyChanged, ISupportInitialize

Inheritance: objectDataProviderBaseOlapDataProviderXmlaDataProvider

Implements: IDataProviderINotifyPropertyChangedISupportInitialize

Inherited Members OlapDataProvider.DistinctValuesLimitDataProviderBase.BeginInit()DataProviderBase.EndInit()DataProviderBase.Refresh()DataProviderBase.DeferRefresh()DataProviderBase.GetAggregateDescriptionForFieldDescription(IPivotFieldInfo)DataProviderBase.GetGroupDescriptionForFieldDescription(IPivotFieldInfo)DataProviderBase.GetFilterDescriptionForFieldDescription(IPivotFieldInfo)DataProviderBase.FieldInfosDataProviderBase.DeferUpdatesDataProviderBase.StatusDataProviderBase.AggregatesPositionDataProviderBase.AggregatesLevelDataProviderBase.FieldDescriptionsProviderDataProviderBase.HasPendingChangesDataProviderBase.StatusChangedDataProviderBase.PropertyChangedDataProviderBase.PrepareDescriptionForField

Constructors

XmlaDataProvider()

Initializes a new instance of the XmlaDataProvider class with default XMLA web client. Sets up the provider for connecting to OLAP cubes through XML for Analysis protocol over HTTP.

Declaration

cs-api-definition
public XmlaDataProvider()

Properties

AggregateDescriptions

Gets a collection of XmlaAggregateDescription objects that specify how data should be aggregated within the intersection of row and column groups. These define the calculated values displayed in pivot cells using XMLA measures and calculated members.

Declaration

cs-api-definition
public Collection<XmlaAggregateDescription> AggregateDescriptions { get; }

Property Value

Collection<XmlaAggregateDescription>

ColumnGroupDescriptions

Gets a collection of XmlaGroupDescription objects that specify how the pivot data should be grouped by columns. Column groupings create the hierarchical structure displayed at the top of the pivot grid using XMLA dimensions.

Declaration

cs-api-definition
public Collection<XmlaGroupDescription> ColumnGroupDescriptions { get; }

Property Value

Collection<XmlaGroupDescription>

ConnectionSettings

Gets or sets the connection settings used for establishing connection to the XMLA data server. These settings include server URL, database name, cube name, and authentication information required for XML for Analysis web service access.

Declaration

cs-api-definition
public XmlaConnectionSettings ConnectionSettings { get; set; }

Property Value

XmlaConnectionSettings

The connection settings for the XMLA data source.

FilterDescriptions

Gets a collection of XmlaFilterDescription objects that specify how pivot items should be filtered. Filters are applied to restrict the data included in XMLA pivot calculations and display.

Declaration

cs-api-definition
public Collection<XmlaFilterDescription> FilterDescriptions { get; }

Property Value

Collection<XmlaFilterDescription>

Results

Gets the current pivot calculation results containing the processed data from the XMLA cube. This property provides access to the aggregated and grouped data ready for display in pivot controls.

Declaration

cs-api-definition
protected override IPivotResults Results { get; }

Property Value

IPivotResults

Overrides DataProviderBase.Results

RowGroupDescriptions

Gets a collection of XmlaGroupDescription objects that specify how the pivot data should be grouped by rows. Row groupings create the hierarchical structure displayed on the left side of the pivot grid using XMLA dimensions.

Declaration

cs-api-definition
public Collection<XmlaGroupDescription> RowGroupDescriptions { get; }

Property Value

Collection<XmlaGroupDescription>

State

Gets the current state object representing the connection settings for this data provider. This state is used for field description retrieval and XMLA connection management.

Declaration

cs-api-definition
public override object State { get; }

Property Value

object

The ConnectionSettings object representing the current provider state.

Overrides DataProviderBase.State

Methods

BlockUntilRefreshCompletes()

Blocks the calling thread until the current refresh operation completes. This method is not implemented for XMLA data provider as it uses asynchronous web service operations.

Declaration

cs-api-definition
public override void BlockUntilRefreshCompletes()

Exceptions

NotImplementedException

This method is not implemented for asynchronous XMLA operations.

Overrides DataProviderBase.BlockUntilRefreshCompletes()

CreateFieldDescriptionsProvider()

Creates a field description provider for retrieving cube metadata and field information from the XMLA data source. This provider is used to discover available dimensions, measures, and hierarchies in the connected cube through XMLA web services.

Declaration

cs-api-definition
protected override IFieldDescriptionProvider CreateFieldDescriptionsProvider()

Returns

IFieldDescriptionProvider

A new XmlaFieldDescriptionProvider instance configured with the current connection settings.

Overrides DataProviderBase.CreateFieldDescriptionsProvider()

GetAggregateDescriptionForFieldDescriptionCore(IPivotFieldInfo)

Creates an aggregate description for the specified field that can be used in XMLA pivot operations. The description is configured with the field name and initialized with the current provider context.

Declaration

cs-api-definition
protected override IAggregateDescription GetAggregateDescriptionForFieldDescriptionCore(IPivotFieldInfo description)

Parameters

description

IPivotFieldInfo

The pivot field information to create an aggregate description for.

Returns

IAggregateDescription

An XmlaAggregateDescription configured for the specified field.

Overrides DataProviderBase.GetAggregateDescriptionForFieldDescriptionCore(IPivotFieldInfo)

GetFilterDescriptionForFieldDescriptionCore(IPivotFieldInfo)

Creates a filter description for the specified field that can be used in XMLA pivot filtering operations. The description is configured with the field name and initialized with the current provider context.

Declaration

cs-api-definition
protected override FilterDescription GetFilterDescriptionForFieldDescriptionCore(IPivotFieldInfo description)

Parameters

description

IPivotFieldInfo

The pivot field information to create a filter description for.

Returns

FilterDescription

An XmlaFilterDescription configured for the specified field.

Overrides DataProviderBase.GetFilterDescriptionForFieldDescriptionCore(IPivotFieldInfo)

GetGroupDescriptionForFieldDescriptionCore(IPivotFieldInfo)

Creates a group description for the specified field that can be used in XMLA pivot grouping operations. The description is configured with the field name and initialized with the current provider context.

Declaration

cs-api-definition
protected override IGroupDescription GetGroupDescriptionForFieldDescriptionCore(IPivotFieldInfo description)

Parameters

description

IPivotFieldInfo

The pivot field information to create a group description for.

Returns

IGroupDescription

An XmlaGroupDescription configured for the specified field.

Overrides DataProviderBase.GetGroupDescriptionForFieldDescriptionCore(IPivotFieldInfo)

RefreshOverride()

Performs the core refresh operation by generating XMLA requests, executing them against the OLAP cube, and processing the results. This method handles field initialization, XMLA query generation, and result processing.

Declaration

cs-api-definition
protected override void RefreshOverride()

Overrides DataProviderBase.RefreshOverride()