zoukankan      html  css  js  c++  java
  • MDX 脚本语句 -- Scope

    在多维表达式 (MDX) 中,下列语句用于管理 MDX 脚本中的上下文、作用域和流控制。

    主题 说明
    calculate语句 计算子多维数据集,还可以确定子多维数据集中所包含的求解次序
    case语句 允许有条件地从多次比较中返回特定值
    existing关键字 强制在当前上下文中计算所指定的集
    freeze语句 将所指定子多维数据集的单元值锁定为其当前值
    if语句 如果条件为真,则执行语句
    scope语句 将指定MDX语句的作用域限制于指定的子多维数据集

    示例:

    假设有一组指标:原本指标的“Act”、“QOF”和“AOP”值,就是这些度量值本身的Sum。

    但是对于某个维度指标“服务组滚动离职率”来说,这三个度量值的计算公式则是“服务组滚动离职人数”(指标编码为205)/ 服务组平均在职人数(指标编码为24)。
    现在使用Scope脚本实现上述功能:

     
    scope

    (

    {

       [Measures].[KPI Act]

      ,[Measures].[KPI Q0F]

      ,[Measures].[KPI AOP]

      ,[Measures].[Forcast]

    }

    )

    [KPI].[KPI Hierarchy].[KPI].&[209]=iif

    (

             [KPI].[KPI Hierarchy].[KPI].&[24]=0

            ,null

            ,[KPI].[KPI Hierarchy].[KPI].&[205]/[KPI].[KPI Hierarchy].[KPI].&[24]

    )


    end scope

    这样,如果未来使用指标“服务组滚动离职率”的“Act”等值的时候,其数值不是直接引用“Act”字段的值,而是上述计算公式计算以后得到的值。

    附:脚本语法

    Subcube_Expression ::=(Auxiliary_Subcube [, Auxiliary_Subcube,...n])

    Auxiliary_Subcube ::=
    Limited_Set
    | Root([dimension_name])
    | Leaves([dimension_name])

    Limited_Set ::=
    single_tuple
    | member
    | Common_Grain_Members
    | hierarchy.members
    | level.members
    | {}
    | Descendants
    (
    Member
    , [level
    [
    , SELF
    | AFTER
    | BEFORE
    | SELF_AND_AFTER
    | SELF_AND_BEFORE
    | SELF_BEFORE_AFTER
    | LEAVES
    ]
    )
    [* <limited set>]

  • 相关阅读:
    Mac OS X 10.9 Mavericks 无法启动 WebStorm(PhpStorm)
    JavaScript怎么上传图片
    lazyload support for Zepto.js
    JavaScript的函数
    配置SQLServer(2)——32位和64位系统中的内存配置
    配置SQLServer(1)——为SQLServer配置更多的处理器
    学习使用Word2013向博客园发布随笔
    Kernel与用户进程通信
    IPv6 Ready Logo测试环境搭建
    前端必备的切图技巧
  • 原文地址:https://www.cnblogs.com/chunshen/p/5158221.html
Copyright © 2011-2022 走看看