CellSet 遍历
CellSet 结构:
查询MDX:
SELECT
NON EMPTY {{ {{ {{ {{ {{ AddCalculatedMembers([店铺.店铺ID].[店铺ID].Members)}} }} }} }}
}}
DIMENSION PROPERTIES MEMBER_TYPE
, [店铺.店铺ID].[店铺ID].[国家], [店铺.店铺ID].[店铺ID].[区域],
[店铺.店铺ID].[店铺ID].[省份], [店铺.店铺ID].[店铺ID].[店铺名称] ON ROWS ,
{{ [Measures].[终端销售数量],[measures].[终端销售生意额],[measures].[终端销售吊牌额]
}} ON COLUMNS
FROM [RegentCube]
where [日期].[年周].[年].&[].[第01周]
C#遍历:
int pos = ;
foreach (Position py in cellSet.Axes[].Positions)
{
dr = dt.NewRow(); //维度描述列数据
int cols = ;
for (int i = ; i < py.Members.Count; i++)
{
if (i == )
{
for (int w = ; w < py.Members[].MemberProperties.Count; w++)
{
dr[cols] = py.Members[].MemberProperties[w].Value;
cols++;
}
}
else
{
dr[cols] = py.Members[i].Caption;
cols++;
}
} //数据列
for (int x = ; x <= cellSet.Axes[].Positions.Count; x++)
{
dr[x + cols - ] = cellSet[pos++].Value;
}
dt.Rows.Add(dr);
}
var model = dt.AsEnumerable().Select(r => new
{
销售数 = string.IsNullOrWhiteSpace(r["终端销售数量"].ToString()) ? : Convert.ToInt32(r["终端销售数量"]),
生意额 = string.IsNullOrWhiteSpace(r["终端销售生意额"].ToString()) ? : Convert.ToDouble(r["终端销售生意额"]),
吊牌额 = string.IsNullOrWhiteSpace(r["终端销售吊牌额"].ToString()) ? : Convert.ToDouble(r["终端销售吊牌额"]),
国家 = r["Dimension0"],
省份 = r["Dimension1"],
城市 = r["Dimension2"],
店铺名称 = r["Dimension3"]
});
CellSet 遍历的更多相关文章
- PHP中遍历XML之SimpleXML
简单来讲述一些XML吧,XML是可扩展标记语言,是一种用于标记电子文件使其具有结构性的标记语言.XML是当今用于传输数据的两大工具之一,另外一个是json. 我们在PHP中使用XML也是用来传输数据, ...
- 邻接表的广度优先遍历(java版)
到 0 的权是 91 到 2 的权是 31 到 3 的权是 61 到 4 的权是 7 2 到 0 的权是 22 到 3 的权是 5 3 到 0 的权是 33 到 4 的权是 1 4 到 2 的权是 2 ...
- 邻接矩阵的深度优先遍历(java版)
这是一个有向边带权的图 顶点数组:[v0, v1, v2, v3, v4] 边数组: v0 v1 v2 v3 v4 v0 6 v1 9 3 v2 2 5 v3 1 v4 package com.dat ...
- 二叉树的创建和遍历(C版和java版)
以这颗树为例:#表示空节点前序遍历(根->左->右)为:ABD##E##C#F## 中序遍历(左->根->右)为:#D#B#E#A#C#F# 后序遍历(左->右-> ...
- To Java程序员:切勿用普通for循环遍历LinkedList
ArrayList与LinkedList的普通for循环遍历 对于大部分Java程序员朋友们来说,可能平时使用得最多的List就是ArrayList,对于ArrayList的遍历,一般用如下写法: p ...
- 遍历dynamic的方式
一.遍历ExpandoObject /// <summary> /// 遍历ExpandoObject /// </summary> [TestMethod] public v ...
- 图的遍历(搜索)算法(深度优先算法DFS和广度优先算法BFS)
图的遍历的定义: 从图的某个顶点出发访问遍图中所有顶点,且每个顶点仅被访问一次.(连通图与非连通图) 深度优先遍历(DFS): 1.访问指定的起始顶点: 2.若当前访问的顶点的邻接顶点有未被访问的,则 ...
- Java 二叉树遍历右视图-LeetCode199
题目如下: 题目给出的例子不太好,容易让人误解成不断顺着右节点访问就好了,但是题目意思并不是这样. 换成通俗的意思:按层遍历二叉树,输出每层的最右端结点. 这就明白时一道二叉树层序遍历的问题,用一个队 ...
- 遍历map的四种方法
方法一 在for-each循环中使用entries来遍历这是最常见的并且在大多数情况下也是最可取的遍历方式.在键值都需要时使用.注意:for-each循环在Java 5中被引入所以该方法只能应用于j ...
随机推荐
- (转)RTMP协议从入门到放弃
转载自: http://blog.csdn.net/shangmingyang/article/details/50837852 RTMP协议是Real Time Message Protocol( ...
- ubuntu的root权限设置
Linux操作系统有root权限用户和普通权限用户两种模式. 在执行一些需要权限才能执行的任务时,我们需要转化到root权限用户条件下才能执行. 1.普通用户权限转临时root权限: Linux中,通 ...
- SSH中的Hibernate
SSH中的Hibernate 就是DAO连接数据库对数据进行实际操作,做了架构简化,对数据库的操作.
- AtCoder AGC #3 Virtual Participation
Havana真好听qwq AB题就不写了 SB C.BBuBBBlesort! 有一个长度为$n$的数列 你每次可以用两种操作 1.交换两个相邻元素 2.交换两个隔且仅隔了一个的元素 求把数列排成有序 ...
- POJ-3680:Intervals (费用流)
You are given N weighted open intervals. The ith interval covers (ai, bi) and weighs wi. Your task i ...
- Oracle分组后取某列最大值的行数据
select * from ( select last_comment, row_number() over(partition by employeeid,roadline,stationname ...
- Tomcat的安装及使用
下面是我搭建Tomcat的过程,记录一下 下载地址:http://tomcat.apache.org/ 我下载的是8.5.30版本 安装 下载完成后解压到D盘 (配置变量的的教程网上大把随便搜) 1 ...
- linux下如何使用Mysql
项目需要:Linux下链接数据库,并进行相关的查询操作 mySql的一些常用命令 启动:net start mySql; 进入:mysql -u root -p/mysql -h localhost ...
- React-Redux之API
connect([mapStateToProps], [mapDispatchToProps], [mergeProps],[options]) 连接 React 组件与 Redux store. 连 ...
- 《Java多线程编程核心技术》读后感(十)
一生产一消费:操作栈 本实例是使生产者向堆栈List对象中放入数据,使消费者从List堆栈中取出数据.List最大容量是1 package Third; import java.util.ArrayL ...