zoukankan      html  css  js  c++  java
  • SSAS维度设计中CustomRollupColumn的用法-自定义聚合方式

          CustomRollupColumn说明:指定包含多维表达式的列,该表达式可用于聚合特性的度量值。这个属性覆盖给定度量值的AggregateFunction的属性。

      解释:通常我们的度量值,默认是按照总计的聚合方式聚合的,当然在SSAS中还有很多种内置的聚合方式(如图),但是,这也许不能满足我们实际需要的聚合方式;例如:我们接下来要举得里实例中的聚合方式。 CustomRollupColumn这个属性就会覆盖给定度量值的AggregateFunction的属性按照自定义的聚合方式进行聚合。

    1、我们首先要建立一个维度表:先不要理会Custom里面的值,C作为主键。

    2、接着建立与之对应的事实表:

    3、建立一个简单的多维数据集:这个过程就不说了,结果如图:

     

    4、我们的维度表设计:将P标志为父子键,以便SSAS自动创建父子维度,另外将C的NameColumn属性设置为Cname以便显示中文。其他属性不变,处理之后,浏览维度是这样的:

    5、浏览此时的多维数据集:按照下图的方式浏览数据,此时的净收入:1100 =9000+200,净收入=总收入+总投入,明显跟现实不符合,这时候需要更改SSAS的默认的聚合方式,使净收入=总收入-总投入,也就是 7000=9000-200;

     

    6、修改聚合方式:是净收入按照我们预想的方式进行聚合,这是后就用到了维度的 CustomRollupColumn属性了。首先明确,这个属性属于那个成员?简单想想就知道这个属性属于此实例中父子层级;我们需要的聚合方式是:净收入所对应的量值=总收入对应的量值-总投入对应的量值;这时候,我们需要将维度表做些手脚了,就如前面的维度表中将净收入的Custom字段填入图中的内容(就表示净收入所对应的量值=总收入对应的量值-总投入对应的量值),此时将维度中P的 CustomRollupColumn属性设置为Custom字段即可,如图:

    此时,在处理之后,浏览维度会发现净收入处多出一个ƒ符号,其他没有什么变化:

     

    7、最后在按照第5步骤所做的一样浏览多维数据集,会发现净收入=总收入-总投入,也就是7000=9000-2000;达到了我们期望:这就是我们说的CustomRollupColumn用法。

     

    补充:与CustomRollupColumn属性对应的属性CustomRollupPropertiesColumn是同样的用法:会将关系表中的一列作为输入,用于定义单元的属性,例如背景颜色和前景颜色等。还有一种自定义汇总的方法使用UnaryOperatorColumn

     

  • 相关阅读:
    梦断代码,读书计划
    《梦断代码》读后感1
    四则运算2详细过程
    四则运算2初步构思
    四则运算
    阅读《梦断代码》计划
    四则运算2设计思路
    随机输出30道四则运算题
    软件工程阅读计划
    面试题04
  • 原文地址:https://www.cnblogs.com/java-oracle/p/5422776.html
Copyright © 2011-2022 走看看