2013-02-20 132 views
1

排除在現有的一組成員,我需要一個MDX消除一些在現有的一組成員,我的方案是如下使用MDX查詢

我有尺寸具有n個級別的父子層次,我使用維度在PPS儀表板。當用戶選擇與父母一起的所有孩子時,我不應該顯示孩子,我應該只顯示父母,這適用於任何級別。

下面是例子,假設公司是我的尺寸,它有人力資源和財務部門和分部門根據主要部門(我加了括號內各部門的主鍵)。

Company (1)  
      HR (2) 
       HR Sub 1 (3) 
       HR Sub 2 (4) 
      Finance (5) 
       Finance Sub 1 (6) 
       Finance Sub 2 (7) 

我使用上述尺寸爲「多選擇樹」在我的PPS,以便用戶可以同時選擇HR,HR子1,HR子2。當選擇父母下的所有孩子時,我需要排除孩子。

下面是實現它爲每個成員

首先獲取父邏輯並且如果構件父存在於選定的組則忽略該成員。要做到這一點,我寫了MDX,我能夠找到每個成員的父母,但我不知道如何檢查家長是否存在於集合與否。

下面

是我寫

WITH SET DeptSet AS '{[Company].[Dept].&[2], [Company].[Dept].&[3],[Company].[Dept].&4], [Company].[Dept].&[6]}' 
MEMBER Measures.ParentNode as [Company].Dept].CURRENTMEMBER.PARENT.UNIQUENAME 

SELECT [Measures].[EmpCount] on ROWS, {Need Trimmed Member Set Here} on COLUMNS FROM [CUBE] 

在上述MDX「DeptSet」的MDX是這是我從PPS和實現上述邏輯之後接收該組我需要得到設定如下

{[Company].[Dept].&[2], [Company].[Dept].&[6]} 

在此先感謝。下面MDX

+0

任何人都可以請回答我的問題 – 2013-02-21 09:45:47

回答