2012-02-17 10 views
0

個別の子が1つしかない場合は値の文字列を返す計算メンバーを作成しようとしています。子どもがいない場合は「なし」、子供がいない場合は「なし」です。 具体的には、別個の子の名前がある場合を返すのに問題があります。ここに私の計算された指標は、次のとおりです。MDX - Count(.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 

他には空白を返しますが、私はCROSSJOINで[項目] [季節コード名]を使用している場合、子供たちは期待通りに表示されます。。

私は間違っていますか?

ご協力いただきありがとうございます。

+0

OK ...次のように働いたと思いました。しかし、これは、現在のメンバーの最初の子ではなく、次元の最初の値を私に与えていることが判明しました。 Hrmph !: [Item]。[Season Code Name] .Children.Item(1).Name – eAlchemist

答えて

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

+0

ところで...助けてくれてありがとう。非常に感謝しています。 – eAlchemist

+0

私ははっきりしていませんでした。提案された変更は、同じ結果を= 1 - Nullに与える – eAlchemist

関連する問題