2011-07-22 22 views
0

當創建在PerformancePoint服務(PPS)儀表板,我經常訴諸自定義MDX在若干領域:如何留住展開/自定義MDX崩潰在PerformancePoint

  • 自定義過濾器
  • 自定義記分卡軸

但是,在這兩種情況下,PPS都會立即刪除展開/摺疊功能(樹視圖)。我使用SQL Profiler探索了由PPS發佈的MDX,並試圖模仿它無濟於事。

例如,在MDX過濾器下面的MDX創建年/月層級沒有中間學期,宿舍:

SELECT GENERATE(
    [Date].[Calendar].[Month].Members 
    , { 
     Ancestors([Date].[Calendar].CurrentMember, [Date].[Calendar].[Calendar Year]) 
    , Ancestors([Date].[Calendar].CurrentMember, [Date].[Calendar].[Month]) 
    } 
) 
DIMENSION PROPERTIES MEMBER_TYPE ON 0 
FROM [Adventure Works] 

這導致年和月份列表,分類正確。但是,儘管選擇「樹視圖」作爲過濾器視圖類型,但仍然不存在樹視圖功能。

那麼,您如何爲PPS提供一個MDX結果集並最終生成一個工作樹視圖?

回答

1

我認爲,而不是使用先祖只是使用後代。

我通常在我的PPS過濾器使用這種結構,它可以讓你的樹視圖:

NonEmpty(
    Order(
     Descendants(
      [Date].[Fiscal Calendar].[All].Children, 
      [Date].[Fiscal Calendar].[Month], 
      SELF_AND_BEFORE), 
     [Date].[Fiscal Calendar].CurrentMember.Member_Key, 
     DESC) 
    ) 

結果是年\數據月。後裔是非常有用的。在PPS過濾器表達式CurrentMember不在上下文中。此時您沒有CurrentMember。

讓我知道,如果它幫助或不是你以後。