0

ユーザー定義の階層があります。

A > B

ディメンション キーは、A と B の合成キーです。

キューブを参照して階層をフィルターとして使用すると、機能しません (メジャーに何も表示されません)。

しかし、階層を行フィールドとして使用すると、うまく機能し、階層メンバーがうまく表示されます。

何か案は?

.

4

2 に答える 2

0

SSMS および SSRS クエリ エディターの GUI キューブ ブラウザーは、MDX クエリを作成します。先に進むには、MDX の基礎を学び始める必要があります。

X 軸にディメンションを配置し、いくつかの項目のチェックを外した場合、生成された MDX はそれらの項目を Select 句にリストするだけです。

select 
{[Measures].[Measure1]} on 0,
{[A].&[ID1], [A].&[ID2], [A].&[ID3]} on 1
From mycube

グリッドのすぐ上のフィルター領域にディメンションを配置すると、フィルターが WHERE 句に追加されるため、ディメンション メンバーは表示されませんが、メジャーは表示されます。結果を得るには、X 軸または Y 軸に何かを追加する必要があります。

select 
From mycube
Where {[A].&[ID1], [A].&[ID2], [A].&[ID3]}

ついに。ウィンドウの上部にあるフィルター フィールドを使用すると、自動生成された MDX によってサブキューブが作成されます。繰り返しますが、何かを測定するために、少なくとも 1 つの軸に表示するものを指定する必要があります。

Select 
From 
( Select {[A].&[ID1], [A].&[ID2], [A].&[ID3]} on 0 From mycube)
于 2012-12-06T02:16:38.680 に答える
0

それが何であるかを発見しました。

ディメンションは、メジャーが作成されるテーブルよりも多くのメンバーを持つ別のテーブルから作成されます。(メジャー メンバーよりも約 50% 多いディメンション メンバー)

そのため、ディメンションをフィルターとして使用すると多くの空の行が表示され、設計どおりに機能します。すべてのメジャー キーがディメンション内にあるため、キューブの処理時に失敗することはありません。

于 2012-12-07T08:18:00.490 に答える