Dimension(String, Int32) Constructor
Initializes a new instance of the Dimension class with the specified group index and binds it to the specified data member.
Namespace: DevExpress.DashboardCommon
Assembly: DevExpress.Dashboard.v22.2.Core.dll
NuGet Packages: DevExpress.Dashboard.Core, DevExpress.Win.Dashboard.Design
Declaration
Parameters
Name | Type | Description |
---|---|---|
dataMember | String | A String that identifies the data member to which this Dimension should be bound. This value is assigned to the DataItem.DataMember property. |
groupIndex | Int32 | An integer value that specifies the index of the group which owns this Dimension. This value is assigned to the Dimension.GroupIndex property. |
Remarks
The data member identifier consists of the data table name and the column name, dot separated. For instance, the Street Address column from the Customers table is identified as “Customers.Street Address”.
If a data source has been specified in code, particular data fields can be custom objects. In this instance, the identifier is a chain of property names, like “Customers.City.Population”.
Note
You can use the groupIndex parameter to combine the dimensions contained in a specific OLAP hierarchy.
Example
The following example demonstrates how to bind the dashboard to the OLAP cube using DashboardOlapDataSource.
DashboardOlapDataSource allows you to establish a connection to the OLAP cube by specifying a connection string.
using DevExpress.XtraBars.Ribbon;
using DevExpress.DashboardCommon;
using DevExpress.DataAccess.ConnectionParameters;
namespace Dashboard_OlapDataProvider {
public partial class Form1 : RibbonForm {
public Form1() {
InitializeComponent();
#region #OLAPDataSource
OlapConnectionParameters olapParams = new OlapConnectionParameters();
olapParams.ConnectionString = @"provider=MSOLAP;
data source=http://demos.devexpress.com/Services/OLAP/msmdpump.dll;
initial catalog=Adventure Works DW Standard Edition;
cube name=Adventure Works;";
DashboardOlapDataSource olapDataSource = new DashboardOlapDataSource(olapParams);
olapDataSource.Fill();
dashboardDesigner1.Dashboard.DataSources.Add(olapDataSource);
#endregion #OLAPDataSource
InitializeDashboardItems();
}
void InitializeDashboardItems() {
IDashboardDataSource olapDataSource = dashboardDesigner1.Dashboard.DataSources[0];
PivotDashboardItem pivot = new PivotDashboardItem();
pivot.DataSource = olapDataSource;
pivot.Values.Add(new Measure("[Measures].[Sales Amount]"));
pivot.Columns.Add(new Dimension("[Sales Channel].[Sales Channel].[Sales Channel]"));
pivot.Rows.AddRange(
new Dimension("[Sales Territory].[Sales Territory].[Group]", 1),
new Dimension("[Sales Territory].[Sales Territory].[Country]", 1),
new Dimension("[Sales Territory].[Sales Territory].[Region]", 1));
pivot.AutoExpandRowGroups = true;
ChartDashboardItem chart = new ChartDashboardItem();
chart.DataSource = olapDataSource;
chart.Arguments.Add(new Dimension("[Sales Territory].[Sales Territory].[Country]"));
chart.Panes.Add(new ChartPane());
SimpleSeries salesAmountSeries = new SimpleSeries(SimpleSeriesType.Bar);
salesAmountSeries.Value = new Measure("[Measures].[Sales Amount]");
chart.Panes[0].Series.Add(salesAmountSeries);
dashboardDesigner1.Dashboard.Items.AddRange(pivot, chart);
}
}
}