2012-02-17 83 views
0

我試圖創建一個計算成員返回一個字符串的值,當只有一個不同的孩子,「多」不是一個獨特的孩子,沒有孩子時是「無」。 具體而言,我無法返回具有不同的子名稱的情況。這裏是我的計算度量:MDX - 計數(.children)> 0,但.FirstChild.Name爲空

WITH MEMBER [Measures].[SSN] AS 
    CASE 
    WHEN DISTINCTCOUNT([Item].[Season Code Name].Children) = 0 
     Then 'None' 
    WHEN DISTINCTCOUNT([Item].[Season Code Name].Children) = 1 
     Then [Item].[Season Code Name].FirstChild.Name --.Value is null 
    ELSE 
     'Multi' 
    END 

該否則返回一個空白,但如果我使用[項目] [季節代碼名稱]的交叉連接,孩子出現如預期。

我在做什麼錯?

在此先感謝您的幫助!

+0

好的......我認爲以下工作。但是,事實證明,這只是給我維度中的第一個值,而不是當前成員的第一個孩子。 Hrmph !: [Item]。[Season Code Name] .Children.Item(1).Name – eAlchemist 2012-02-18 01:07:06

回答

1

這是一個經典的,我一直這麼做:-),缺少currentMember之後的層次結構。

WITH MEMBER [Measures].[SSN] AS 
    CASE 
WHEN DISTINCTCOUNT([Item].[Season Code Name].currentmember.Children()) = 0 
    Then 'None' 
WHEN DISTINCTCOUNT([Item].[Season Code Name].currentmember.Children()) = 1 
    Then [Item].[Season Code Name].currentmember.FirstChild.Name --.Value is null 
ELSE 
    'Multi' 
END 
+0

不幸的是,那並沒有做到。我應該注意到,從等級角度來看,你可以將當前成員視爲自行車等級的品牌,而季節代碼的名稱就像是特定模型上的顏色。我想要與第一個模型相關的顏色。希望我解釋得很好。 – eAlchemist 2012-02-19 08:03:46

+0

順便說一句...感謝您的幫助。非常感謝。 – eAlchemist 2012-02-19 08:04:12

+0

我不清楚。建議的更改在= 1上給出了相同的結果 - 空 – eAlchemist 2012-02-19 08:06:58