1

我正在尝试实现以下目标:我有一个度量:[Measures].[Sales]和一个时间维度:[Time].[Year - Month - Day]。我想添加新的措施:[Measures].[Sales SPLY]以下列方式工作:

MONTH-----------------Sales--------------Sales SPLY

2009年1月--------120 000,00--------110 000,00

2009年2月 ------100 000,00--------90 000,00

2009年3月----------120 000,00--------110 000,00

总计:----------------340 000,00-------- 290 000,00

[Sales SPLY] 的值是使用以下方式计算的:我创建了一个新的 Sum 度量,并在 Cube Script 中将其替换为以下代码:

([Measures].[Sales SPLY], Leaves([Time])) = (PARALLELPERIOD([Time].[Year - Month - Day].[Year],1,[Time].[Year - Month - Day].currentmember), [MEASURES].[Sales])

它正在工作,但是非常非常慢。有谁知道编写此 MDX 的更好方法?在计算成员中仅使用 parrarel 期间将导致 SPLY 度量中的 Total 值错误。拜托,我用谷歌搜索了很多,找不到比这更好的东西。

4

1 回答 1

1

我倾向于创建一个像

WITH
MEMBER [Measures].[Sales SPLY] as ([Measures].[Sales], ParallelPeriod([Time].[Year - Month - Day].[Year],1,[Time].[Year - Month - Day].currentmember))
SELECT {[Measures].[Sales], [Measures].[Sales SPLY]} ON 0, ....

它工作正常。

您如何在整体查询中使用它?

于 2009-08-06T08:03:56.533 回答