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>]
MDX 脚本语句 -- Scope的更多相关文章
- Java 菜鸟学习之 script脚本语句
脚本语句 一般分为 顺序语句 分支语句 循环语句 顺序语句 就是从上到下依次读取 分支语句 是if语句 if(判断条件) { 满足条件执行的语句 } else { 不满足条件执行的语句 ...
- MDX查询语句
另:15个经典的MDX查询语句 另:http://www.cnblogs.com/biwork/p/3437959.html 1.排名+排序+量值过滤: WITH member [Measures]. ...
- 20190712_mysql执行sql脚本语句_Failed to open file_error
要说执行sql脚本语句不难 就下面这条语句: 进入mysql安装目录下的bin目录 然后执行: \mysql –u用户名 –p密码 –D数据库<[sql脚本文件路径全名] 比如: C:\MySQ ...
- shell脚本语句
条件语句 1.if语句 语法格式: if [ expression ] then 命令 elif [ expression ] then 命令 -- else 命令 fi if语句有单分支结构,双分支 ...
- SQL Server 脚本语句
一.语法结构 select select_list [ into new_table ] from table_source [ where search_condition ] [ group by ...
- 查看sqlserver所有存储过程、视图等脚本语句
sqlserver上右击——任务——生成脚本 下一步——选择特定数据库对象 导出即可
- linux 常用shell脚本语句
最近老大让写一个shell脚本,每天从一个固定IP中取到相应文件,所以想写一个简单的shell脚本命令,供大家学习交流.先做一个简单的例子,先看效果吧, 代码如下: #!/bin/sh #定义一个变量 ...
- unity3d 延迟运行脚本语句
在Unity3D中.有yield语句它负责延迟操作,yield return WaitForSeconds(3.0); //等待 3 秒 查看unity3d脚本手冊,使用方法须要在对应的格式. 以下代 ...
- 查询SQL SERVER 数据库版本号脚本语句
数据库直接执行此语句即可select @@version 示例: Microsoft SQL Server 2014 - 12.0.2000.8 (X64) Feb 20 2014 20:04:2 ...
随机推荐
- GMap.NET实现电子围栏功能(WPF版)
前言 GMap.NET是一个强大.免费.跨平台.开源的.NET控件.分为WPF和winform版.GMap.NET的基本知识不做过多介绍,本文主要介绍如何使用该控件实现电子围栏功能. 电子围栏主要有两 ...
- nodejs+nginx获取真实ip
nodejs + nginx获取真实ip分为两部分: 第一.配置nginx: 第二.通过nodejs代码获取: 其他语言也是一样的,都是配置nginx之后,在http头里面获取“x-forwarded ...
- Java基础之Java 修饰符
前言:Java内功心法之Java 修饰符,看完这篇你向Java大神的路上又迈出了一步(有什么问题或者需要资料可以联系我的扣扣:734999078) Java语言提供了很多修饰符,主要分为以下两类: 访 ...
- .14-浅析webpack源码之Watchpack模块
解决掉了最头疼的DirectoryWatcher内部实现,这一节可以结束NodeWatchFileSystem模块. 关于watch的应用场景,仔细思考了下,这不就是热重载的核心嘛. 首先是监视文件, ...
- SQL Server 2008 management studio 无法连接到(local)解决方法
背景:安装VS2010之后,自带的 SQL Server 2008 Express 不具备management studio,于是下载了SQL Server 2008 Express 版本并全新安装 ...
- PowerDesigner 修改Name ,Code 不变
tools-> General Options-> Dialog:Operation Modes: 去掉 NameToCodeMirroring 前面的√
- [Hadoop异常处理] Namenode和Datanode都正常启动,但是web页面不显示
异常 namenode和data都正常启动 但是web页面却不显示,都为零 解决办法一: 在hdfs-site.xml配置文件中,加入 <property> <name>dfs ...
- (2)Microsoft office Word 2013版本操作入门_快速选中
1.快速选中一行 .一段文字: 1.1光标在一行内,双击会选中一个词组.快速点击三下会选中一段, 1.2 鼠标移动到行首,单击击会选中一行,双击选中一段. 1.3 选择全部内容 Ctrl+A , 1 ...
- JavaScript的值传递和引用传递
译者按: 程序员应该知道递归,但是你真的知道是怎么回事么? 原文: All About Recursion, PTC, TCO and STC in JavaScript 译者: Fundebug 为 ...
- 机器学习实战 - python3 学习笔记(一) - k近邻算法
一. 使用k近邻算法改进约会网站的配对效果 k-近邻算法的一般流程: 收集数据:可以使用爬虫进行数据的收集,也可以使用第三方提供的免费或收费的数据.一般来讲,数据放在txt文本文件中,按照一定的格式进 ...