【发布时间】:2018-12-16 11:43:25
【问题描述】:
我想创建一个图表来展示来自mdx query 的数据。
我正在使用Adomd.net。我有 3 个维度的立方体 Date、Customer、Internet Sales Fact。
我正在使用AventureWorkDW2012。我想展示一年中每个季度的销售额,所以我的代码如下
string query=@"SELECT [Measures].[Sales Amount] ON COLUMNS,[Order Date].[Hierarchy].[Calendar Year].&[2013].Children ON ROWS
FROM [Adventure Works DW2012]"
AdomdCommand cmd = con.CreateCommand();
cmd.CommandText = query;
AdomdDataAdapter ad = new AdomdDataAdapter(query, con);
DataTable dt = new DataTable();
ad.Fill(dt);
chart1.DataSource = dt;
chart1.Series["Series1"].XValueMember = "[Measures].[Sales Amount]";
chart1.Series["Series1"].YValueMembers = "[Order Date].[Hierarchy].[Calendar Year].&[2013].Children";
该代码给出错误
找不到名为“[订单日期].[层次结构].[日历年].&[2013].儿童”的列。
我刚刚发现错误是因为chart 刚刚从COLUMNS 读取数据而我的季度在ROWS。
我的问题是如何打印出ROWS 上的值?
【问题讨论】:
-
那么,DataTable 中的列名是什么样的?
-
@TaW 我用 datagridview 中的结果查询编辑了我的问题
-
好吧,我的意思是数据表中的列名是什么?毕竟,该错误抱怨绑定调用中的名称不在数据表的列中。
-
@TaW 哦,谢谢我找到了问题,你是对的,我为列选择了错误的名称
标签: c# winforms cube adomd.net