知识库 : 多维数据集分析函数

Edit Document

多维数据集分析函数手册

大类别

小类别

名称

签名

说明

例子

财务

财务

期初余额(财务)

BeginningBalance4FA(<Dimension>,<Level>,<Member>)

返回当前成员同级别前一个成员的末级子成员的最后一个非空值。

 

期末余额(财务)

EndingBalance4FA(<Dimension>,<Level>,<Member>)

返回当前成员的末级子成员的最后一个非空子成员的值

 

上期数(财务)

PeriodPreMember4FA(<Member>)

返回当成员的上期成员数

 

序号列(财务)

OrdinalNumber(<Dimension>,<Level>)

对维度指定级别以下的所有成员进行编号

 

统计

占比

占比(父级)

ParentPercent(<Dimension>, <Member>)

计算特定成员的值与该成员父级的值的比率。

ParentPercent('门店','销售数量'):标识当前门店的销售数量占其上级分类合计值的比率。例如辽宁省大连市销售数量的父级占比为大连市的销售数量占其上级辽宁省合计销售数量的比率。

占比(总计)

TotalPercent(<Dimension>, <Member>)

计算特定成员的值与所有成员的值的比率

TotalPercent('门店','销售数量'):表示当前门店的销售数量与所有门店销售数量汇总值的比较。例如大连市门店的销售总计占比为大连市的销售数量占所有门店合计数量的比率。

排名

排名

TopBottomCount(direct, measure, N, orderExpr, agg)
direct(<Numeric Expression>):代表排名方向:0—Top;1-Bottom。
measure(<Set>):被排序集。
N(<Numeric Expression>):从排序集合中的取值数量。
orderExp(<String>):排序表达式
agg(<String>):聚合方式,如sum,count等

从指定集合的顶端/底端成员开始,返回指定数目的项目,可以选择首先对集合排序

TopBottomCount(0,'销售数量',10,'门店','sum'):表示对销售数量按照门店进行排序,并取前10个数值进行合计。

排名合计

同上

对集合排序并返回最顶端/底端的元素,这些元素的累积合计至少为指定的值

TopBottomSum(0,'销售数量',10000,'产品','avg'):表示把销售数量按照产品排序,取前取合计值至少10000的值求平均值

排名百分比

同上

对集合排序并返回最顶端/底端的元素,这些元素的累积合计至少为指定的百分比

TopBottomPercent(1,'销售数量',20,'产品','avg'):表示把销售数量按照产品排序,取后累计合计百分比至少为20的值求平均值

方差

标准差(无偏估计)

StandDev(<Dimension>, <Member>)

返回当前维度下指标集合的标准差(无偏估计)。

标准差(有偏估计)

StandDevP(<Dimension>, <Member>)

标准差(有偏估计)

方差(无偏估计)

Vari(<Dimension>, <Member>)

方差(无偏估计)

方差(有偏估计)

VariP(<Dimension>, <Member>)

方差(有偏估计)

时序

期初期末

期初余额

BeginningBalance(<Dimension>, <Member>)

返回当前成员同级别前一个成员的末级子成员的最后一个非空值。

BeginningBalance(' 时间 ', ' 销售单价 ') :表示当前时间的前一个成员的子成员中最后一个的销售单价。例如 1998 3 月的期初值为 1998 2 28 日的销售单价。

期末余额

EndingBalance(<Dimension>, <Member>)

返回当前成员的末级子成员的最后一个非空子成员的值

EndingBalance ('时间', '销售单价'):表示在当前时间的下级子成员中最后一个的销售单价。例如1998年3月的期末值为1998年3月31日的销售单价。

期初余额(指定级别)

BeginningBalanceOnLevel(<Dimension>, <Level>,<Member>)

返回在当前成员的前一个成员在指定级别上最后一个非空子成员值。

BeginningBalanceOnLevel('时间','天','销售单价'):表示当前时间的前一个成员在天这个级别上最后一个非空的子成员对应的销售单价。例如1998年的期初值应该是1997年12月30日的销售单价。

期末余额(指定级别)

EndingBalanceOnLevel(<Dimension>, <Level>,<Member>)

返回当前成员指定级别上最后一个非空的子成员的值。

EndingBalanceOnLevel('时间','天','销售单价'):表示当前时间的在天这个级别上最后一个非空的子成员对应的销售单价。例如1998年的期末值应该是1998年12月30日的销售单价。

环比

环比增长量

CycleRatio(<Dimension>, <Member>)

当前时间成员的同一级别上前一个成员所对应的指标值(前期数)与当前指标值(本期数)的比较。

CycleRatio('时间','销售单价'):当前时间级别上的前一个成员所对应的销售单价与当前销售单价的比值。如果当前时间是[1998].[3],则函数的值为1998年3月的销售单价与1998年2月的销售单价之差。

环比增长率

CycleGrowRatio(<Dimension>, <Member>)

(本期数 - 前期数)/ 前期数 * 100%

与上类同

环比发展率

CycleDevRatio(<Dimension>, <Member>)

本期数 / 前期数 * 100%

与上类同

同比

同比增长量

ParallelRatio(<Dimension>, <Member>)

上一时期中与当前时间具有相同的相对位置成员所对应的指标数(同期数)与当前指标数(本期数)进行比较

ParallelRatio('时间','销售单价'):当前时间级别的上一级别中具有与当前时间相同位置的时间成员所对应的销售单价与当前销售单价的差值。
如果当前时间是[1998][3],则函数值为1998年3月的销售单价与1997年3月销售单价的差。

同比增长率

ParallelGrowRatio(<Dimension>, <Member>)

(本期数 - 同期数)/ 同期数 * 100%

与上类同

同比发展率

ParallelDevRatio(<Dimension>, <Member>)

本期数 / 同期数 * 100%

与上类同

基比

基比增长量

BaseRatio(<Dimension>, <String>, <Member>)

当前指标成员(当期数)与指定成员(基数)的比值

BaseRatio('时间','[时间].[1998].[3]','销售单价'):表示各时期的销售单价与1998年3月份销售单价的差值。

基比增长率

BaseGrowRatio(<Dimension>, <String>, <Member>)

(当期数 - 基数) / 基数 * 100%

与上类同

基比发展率

BaseDevRatio(<Dimension>, <String>, <Member>)

当期数 / 基数 * 100%

与上类同

时序

期间增长

PeriodGrowth(<Dimension>,<Level>,<Integer>,<Member>)

将数值表达式在一个期间内的值与以前某个期间的值进行比较,并用以前期间值的百分比来表示。

 

截至至今

UptoNow(<Dimension>, <Level>, <Member>)

返回数值表达式的合计(从指定期间开始之时起,直到当前期间)。

UptoNow(‘时间’,’销售数量’):如果钻取到月级别,则标识当月截至到现在的累计销售数量。如果当前为1998年3月10日,则表示3月1日到10日的累计销售数量。

期间比较

PeriodCompare(<Dimension>, <Level>, <Integer>, <Member>)

将数值表达式在一个期间(通常是当前期间)内的值与以前某个期间的值进行比较。

PeriodCompare('时间','月',2,'销售单价'):表示当前销售单价与两个月前销售单价的差值。例如当前时间是1998年3月,则函数值为3月份的销售单价与1月份的销售单价之差。

移动平均值

MovingAverage(<Dimension>, <Integer>, <Member>)

返回成员在指定时间间隔内的平均值。

MovingAverage('时间',2,'销售单价'):表示当前时间之前两个成员之间的移动平均值。如果当前时间是1998年3月,则函数值1998年1月到3月销售单价的移动平均。

年初数

PeriodYearBeginning(<Dimension>, <Level>, <Member>)

返回当前期间所在年的期初数。

 

上期数

PeriodPreMember(<Dimension>, <Member>)

返回当成员的上期成员数

 

预置

预置

同期数

ParallelPeriodMember (<Dimension>, <Level>, <Integer>, <Measure>)

返回指定级别上前N期的指标数量

ParallelPeriodMember('时间维度', '年', 2, '[ Measures].[融资类型] ')

发生额

PeriodAmount (<Dimension>, <Level>, <Measures>)

返回指标在某一时间级别上的发生值

 

排名百分比

TopBottomSumPercent (TOP/BOTTOM, <Set>, <String>, ASC/DESC/BASC/BDESC, <Aggregate>)

对集合排序并返回最顶端/底端的元素,这些元素的累积合计至少为指定的百分比

TopBottomSumPercent(TOP, [集合].AllMembers, '10%', ASC, 'SUM')

线性回归

LinearReg (<Dimension>, <Measures>)

对给定的集合样本进行线性回归预测分析

 

指数回归

ExponentReg (<Dimension>, <Measures>)

对给定的集合样本进行指数回归预测分析

 

时间区间

TimeInterval (<Time Member>, <Integer>)

返回指定时间之前N个成员的集合

TimeInterval('2012', '2')

成员过滤

FilterMember (<Dimension>, <Operation>, <String>, <Type>)

根据指定的条件对指定的维度成员进行过滤,返回满足条件的成员集合

FilterMember('城市名', '=', '北京', 2 )

介于

Between (<Member>, <Member>)

根据指定的两个成员,返回其之间所有的成员集合

Between('[时间维度].[年].[2010]', '[时间维度].[年].[2012]')

当前日期

CurrentDate (<Time Dimension>, <Level>, <Offset>)

返回支持偏移量和级别的当前日期成员

CurrentDate('时间维度', '年', '5')

当前日期的首个成员

CurrentFirstDate (<Time Dimension>, <Level>)

返回支持偏移量和级别的当前日期成员的第一个子成员

 

当前日期的尾部成员

CurrentLastDate (<Time Dimension>, <Level>)

返回支持偏移量和级别的当前日期成员的最后一个子成员

 

尾部非空成员

<Member> LastNonEmpty(<Set>, <Member>)

返回当前集合中最后一个非空成员

LastNonEmpty({[城市名].[汇总].Children}, [Measures].[销售额])返回城市名维度下的Children集合中最后一个非空成员的销售额,这里返回重庆的销售额

格式化当前日期

<String> CurrentDateString(<String>)

格式化返回当前日期

CurrentDateString( ' yyyymmdd ' )返回当前日期20121225,大写不可用

日期成员值

<Member> CurrentDateMember(<Dimension>, <Level>[, <EXACT|BEFORE|AFTER>])

返回当前日期指定维度指定级别下的值

CurrentDateMember([MONTH], [MONTH].[月], EXACT)是返回MONTH维度月级别下当前的成员,返回值为 [MONTH].[2012].[2012-12]

当前日期成员值

<Member> CurrentDateMember(<Dimension>, <Level>)

功能同CurrentDateMember,标记确定为EXACT

 

匹配

<String> MATCHES <Regex>

判定给定的字符串是否匹配某正则表达式

[城市名].[汇总].[北京] Matches ' \d+ ' 是判定成员名为北京的成员有某指标上的值是否匹配给定的正则表达式

被包含

<Member> In <Set>

判断某个成员是否被包含在指定集合中

[城市名].[汇总].[北京] In [城市名].Children是判定成员名为北京的成员是否被包含在城市名维度的孩子集合中

上下文参数

Param(<String>)

获取上下文中的全局参数信息

Param( ' Paramname ' )可以获得当前上下文中param_paramname信息

上下文宏定义

Macro(<String>)

获取上下文中的全局宏定义信息

Macro('CurrentQuarter') 可以获得当前上下文中macro_currentquater信息

上下文成员

PivotContext(<String>)

获取上下文中的Member信息

使用PivotContext( '地图信息.城市名' )将上下文中“地图信息”数据集中的“城市名”维度的当前成员

指定语义模型的字段值

SmartValue(<String>, <String>, <String>)

获取语义模型执行字段的第一个值

在SmartValue( 'GQFX', 'INVEST_AMOUNT'

, 'INVEST_CORP_ID = 1206' )中,查找Smart的定义表BI_SMART_DEF的一行DEFCODE为 GQFX 记录,其SmartModel字段的MetaData中包含 INVEST_AMOUNT INVEST_CORP_ID 的字段,这个SmartModel的提供者是BA_FAR_DM_INVEST _ STOCK,即从提供者中选择 INVEST_AMOUNT 字段,筛选的Where子句的条件包含 INVEST_CORP_ID = 1206

 

Attachments:

多维数据集分析函数.docx (application/vnd.openxmlformats-officedocument.wordprocessingml.document)