2009-10-13 20 views
1

環境:SQL-Server的2005,SSAS 2005SSAS - 移動全年總

我用下面的公式來創建移動全年總

SUM ({[Time].CurrentMember.Lag(3):[Time].CurrentMember}, [Measures].[TRx Quantity])

同一列[Measures].[Trx Quantity]在使用其他計算,它工作正常。然而,這一個,拿出#Value!來表明某種錯誤。任何人都可以在這裏指出我正確的方向嗎?

回答

0

原來,是我錯過了一個月

SUM({[時間] [月] .CurrentMember.Lag(3): [Time]。[Month] .CurrentMember},[Measures]。[TR​​x Quantity])

+0

是的,這就是我在回答中所說的。在SSAS 2005(及以上版本)中,您的uniquename引用應採用[Dimension]形式。[Hierarchy] .CurrentMember和[Month]是[Time]維度的層次結構。 – 2009-10-13 23:47:54

+0

@Darren:在我的時間維度中,[Month]不是一個層次結構 - 它只是一個常規列。它說了一些大意,它需要一個層次結構。我嘗試創建一個層次結構並將名稱放入,但後來我使用了簡單的邏輯並發現它要求提供[Month] – 2009-10-14 13:22:41

2

這是SSAS 2005/2008嗎?

如果它們是其中之一,並且您正在Management Studio中運行此操作,則可以將鼠標懸停在#Value上並獲取錯誤的詳細信息。

但有人猜測這很可能是因爲.CurrentMember需要在層次結構上調用,而[Time]是維度參考。它應該是指像[Time].[Calendar].CurrentMember層次結構中的一個或可能[Time].[Quarter].CurrentMember

+0

我在SQL Server 2005上 – 2009-10-13 11:57:14