currentMember、properties和existing

 

1          currentMember

1.1         返回当前成员的引用,该函数应用于计算成员中

1.2         访问方法:[dimension].[hierarchy].currentMember

1.3         可通过该函数访问成员的属性

1.3.1    ,成员名称

1.3.2    currentMember.uniqueName,成员的唯一名称

1.3.3    currentMember.member_Value,成员值

1.3.4    currentMember.member_caption,标头

1.4         访问父成员:currentMember.parent

 

2          Properties

2.1         返回成员的各种属性

2.2         使用方法:currentMember.properties("name")

 

3          IIF

3.1         三元运算,先判断后执行

3.2         IIF(bool, when true do, whenfalse do),例:

with
member[Date].[Year Num].[2015or2016] as
iif(
([Date].[Year Num].[2015],[Measures].[In Count])<([Date].[Year Num].[2016], [Measures].[In Count]),
“2016”,
“2015”
)

select
{
[Measures].[In Count]
}on 0
,non empty{
[Date].[Year Num].allmembers
}on 1
from
[Park]

         判断2015年还是2016年的客流量大,如果2016年的大就显示当前年份的uniqueName,否则显示name

 

4          在表达式中使用set集合

4.1         注意:在表达式中使用set集合不会被上下文所影响,如下

with
member [count] as
count(
//existing
[Date].[年-月-日].[Day NumOf Month].members
)

select
{
[Measures].[In Count],
[count]
}on 0
,non empty{
[Date].[年-月-日].[Month NumOf Year].allmembers
}on 1
from
[Park]
where
[Date].[Year Num].&[2016]

4.2         注意有existing与没有existing的区别

4.3         Existing关键字可以强制使用上下文,也就是把select中的条件带到计算成员中去