我有一个与Microsoft Technologies的多维数据集相关的问题,我们有一个基于BIDS 2008版本的SSAS多维数据集,并且要求将前一个十二个月的度量数量分组(总和)并排除一个维度中的某些值。
我在立方体内部进行了如下计算:
CREATE MEMBER CURRENTCUBE.[Measures].[N-12]
AS Sum
(
(
Except
(
[Dim Sistema Corporativo].[Sistema Corporativo].[Id Sistema]
,{
[Dim Sistema Corporativo].[Sistema Corporativo].[Id Sistema].&[3]
,[Dim Sistema Corporativo].[Sistema Corporativo].[Id Sistema].&[4]
}
)
,lastperiods(12,
[Dim Tiempo].[Fecha].CURRENTMEMBER
)
)
,
[Measures].[importe]
)/*Lime*/,
VISIBLE = 1 ;
我得到这样的东西:
Row Importe N-12
2011 12399121166 12399121166
01.2011 1040785565 1040785565
02.2011 1069453202 2110238768
03.2011 1359303502 3469542269
04.2011 1068266294 4537808563
05.2011 1163538168 5701346731
06.2011 1146393010 6847739741
07.2011 936369144.8 7784108886
08.2011 1000363518 8784472404
09.2011 859885351.7 9644357755
10.2011 779035206.2 10423392962
11.2011 933409920.9 11356802882
12.2011 1042318283 12399121166
2012 25162093544 22225879797
01.2012 -40878580.57 11317457020
02.2012 678706164.3 10926709982
03.2012 16323643149 10555714716
04.2012 947692878 10435141301
05.2012 1057496411 10329099544
06.2012 1103249990 10285956525
07.2012 976810086.3 10326397466
08.2012 1046738046 10372771994
09.2012 1027644991 10540531634
10.2012 1108157924 10869654352
11.2012 932832484 10869076915
12.2012 9826758631
2013 22225879797
2014 22225879797
2015 22225879797
2016 22225879797
2017 22225879797
2018 22225879797
2019 22225879797
2020 22225879797
2021 22225879797
2022 22225879797
2023 9826758631
正如你所看到的那样,尽管用户要我做一些调整,但它做的是正确的事情:
首先,如果没有数据(标识为“importe”度量组),则多维数据集不会显示任何内容,并且您可以看到它显示未来几年(直到2023年)的空白,此时没有数据默认度量组。
第二个是用户只想查看数据当且仅当前成员有前12个月因此,例如,现在显示2011年的信息,但正如用户所说它应该只显示2012年的数据,因为所有这些月份都有12个月,2011年没有2010年的数据,所以我应该有一个空值。
是否可以这样做...... ???
或者您可以建议任何其他选项,例如直接影响事实表等等。
谢谢你的建议。
答案 0 :(得分:0)
要检查当前成员上个月是否有12个,您可以使用如下表达式:
IIf(Count(
NonEmpty(lastperiods(12, [Dim Tiempo].[Fecha].CURRENTMEMBER),
[Measures].[importe])
) = 12,
...,
...)