[编辑:示例并不完全正确]
我一直在解决这个MDX问题...... 我正在制作关于计费的多维数据集。
我有2个(相关)维度:预算单和月
一个衡量标准:金额
budgetbill date Amount
1548632 2012-11-04 50
1548632 2012-11-23 40 <--
1548632 2012-12-16 70 <--
1724687 2012-10-02 120
1724687 2012-10-23 170
1724687 2012-10-89 200 <--
TOTAL 310
我还有一个日期层次结构[BB UpdateDate]
年 - 季 - 月 - 周 - 日
所以我需要每个月的最后金额超过预算单。
在上面的例子中,40 + 70 + 200 = 310
我试过的其中一个mdx代码片段
with member [Measures].[test] as
Sum(Tail(nonempty(Descendants([BB UpdateDate].[BB UpdateDate Hierarchy].currentmember, [BB UpdateDate].[Month])
,[Measures].[Amount]), 1),[Measures].[Amount])
select [Measures].[test] on columns
,nonempty([BB UpdateDate].[Month]) on rows
from [BudgetBill]
where {[BudgetBill].[BudgetBillNr].&[1548632],[BudgetBill].[BudgetBill].&[1724687]}
给出120 + 170 + 200 = 490 - &gt; 不正确...... 这只是一个(接近)的例子,但我尝试了很多东西!
提前感谢您的帮助!!
答案 0 :(得分:0)
我认为这会解决问题
with
member [measures].[maybe] as
sum(
generate(
Descendants([date].[BB Update Hierarchy].currentmember, [date].[BB Update Hierarchy].[month])
,tail(
nonempty(Existing [date].[BB Update Hierarchy].[date], [Measures].[amount])
,1)
)
,[Measures].[amount])
希望这有帮助