簡體   English   中英

如何基於mdx中的另一個維度層次結構過濾維度層次結構

[英]How to filter a dimension hierarchy based on another dimension hierarchy in mdx

我有一個發件人和收件人維度,這是員工實際表中角色扮演的維度。 我的事實表有發件人,收件人,消息列。 我想讓員工發送的消息發送給公司中的每個人,但向經理報告的消息除外。 我嘗試過這樣的事情

WITH 
  SET [Others] AS 
    Except
    (
      Ascendants([Recipient].[Manager])
     ,[Sender].[Manager].Parent
    ) 
SELECT 
  [OTHERS] ON COLUMNS
 ,{[Measures].[Messages]} ON ROWS
FROM [cube]
WHERE 
  [Sender].[Manager].&[xyz];

基本思想是..獲取給定發件人的所有收件人,並篩選其父級列表由發件人父級組成的收件人。

這是行不通的,因為除了兩個不同的維度層次結構之間,我無法做。

嘗試通過關鍵字EXSITING使Set具有更多上下文意識,然后使用Filter比較member_caption

WITH 
  MEMBER [Measures].[SenderName] AS 
    [Sender].CurrentMember.Member_Caption 
  SET [ExistingRecip] AS 
    (EXISTING 
      [Recipient].[Manager].MEMBERS) 
  SET [Others] AS 
    Filter
    (
      [ExistingRecip]
     ,
        [ExistingRecip].Item(
        [ExistingRecip].CurrentOrdinal - 1).Member_Caption
      <> 
        [Measures].[SenderName]
    ) 
SELECT 
  [OTHERS] ON COLUMNS
 ,{[Measures].[Messages]} ON ROWS
FROM [cube]
WHERE 
  [Sender].[Manager].&[xyz];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM