2

マスター Customer ディメンションがあります (これは維持していません)。私のファクト テーブルには顧客情報が含まれています。キューブをコンパイルすると、すべて問題ないように見えます。キューブを参照すると、メジャー値を持つ顧客のみを含むファクト行が表示されます。

私がやろうとしていることはかなり単純なはずですが、行き詰まっています。私がやりたいことは、有効な顧客 のみが表示されるようにディメンションをフィルター処理することだけです。

たとえば、Excel で顧客名とファクト値を選択すると、値を含む顧客のリストが表示されますが、顧客リストのフィルター オプションをクリックすると、すべての顧客が表示されます。正当な顧客だけを見たい!

顧客ディメンションには、有効な顧客のみを表示するために使用したい IsValid フラグがあります。

では、IsValid = true の顧客のみを表示するように Customer ディメンション リストをフィルター処理するにはどうすればよいでしょうか? MDX クエリ?

どんな助けでも大歓迎です。
ありがとう - アレックス

4

2 に答える 2

3

目的の回答を返す MDX クエリを次に示します。

SELECT [Measures].[Measure 1] ON 0,
EXISTS(
[Customer].[Customer Name].[Customer Name].MEMBERS
, [Customer].[Is Valid].[True]
, "Measure Group") ON 1 
FROM [Cube]

[Measures].[Measure 1] を表示する値に置き換え、"Measure Group" をフィルター処理するメジャー グループの名前に置き換えます。

クエリは、"メジャー グループ" に関連付けられた値を持つ [Is Valid] が TRUE である [メジャー 1] から顧客名と関連付けられた値を返します。

メジャー グループ引数はオプションであるため、最後の引数を省略した場合、それらの顧客に関連するメジャーがあるかどうかに関係なく、有効な顧客名のリストを取得できます。

既存の MDX 関数情報へのリンク: http://technet.microsoft.com/en-us/library/ms144936.aspx

[...]を使用することもできます

于 2013-06-25T03:03:18.007 に答える
1

アレックス、

ピボットにメジャーが含まれることに基づいて、顧客テーブルはファクト テーブルに関連付けられ、フィルターするメジャーは [Values] と呼ばれ、次のようになります。

[Valid Customer Values] = CALCULATE([Values],dimCustomer[IsValid]="Y")

ジェイコブ

于 2013-03-28T04:43:22.277 に答える