2017-04-19 118 views

回答

0

我已經發布了一個真正有用的article這種情況:

Aggregate(
    LastPeriods(
     3, 
     StrToMember('[Date].[Calendar].[Month].&[' + Format(Now(),'yyyyMM') + ']') 
    ), 
    [Measures].[YourNotCalulatedMeasure]   
) 
1

如果您需要覆蓋不同的計數和金額,那麼AGGREGATE是可以使用的函數,但如果不需要不同的計數,那麼您可以簡單地使用SUM

如果您選擇在一個月或幾個月ON ROWS然後返回,然後選擇該月類似下面應該工作:

[Date].[Date - Calendar Month].CurrentMember 

爲了然後後退3個月可以添加LAG功能:

[Date].[Date - Calendar Month].CurrentMember.LAG(3) 
: 
[Date].[Date - Calendar Month].CurrentMember 
[Date].[Date - Calendar Month].CurrentMember.LAG(3) 

現在的月使用:運營商獲得這個範圍

因此,這可以用於特定的措施,例如,收入是這樣的:

SUM(
    [Date].[Date - Calendar Month].CurrentMember.LAG(3) 
    : 
    [Date].[Date - Calendar Month].CurrentMember 
,[Measures].[Revenue] 
)  

在腳本中,這將被添加到WITH條款:

WITH  
MEMBER [Measures].[4MonthRevenue] AS 
    SUM(
     [Date].[Date - Calendar Month].CurrentMember.LAG(3) 
     : 
     [Date].[Date - Calendar Month].CurrentMember 
    ,[Measures].[Revenue] 
    ) 
SELECT 
    [Date].[Date - Calendar Month].[Calendar Month].MEMBERS 
     ON ROWS, 
    NON EMPTY 
     [Measures].[4MonthRevenue] 
     ON COLUMNS 
FROM [YourCube];