カスタム メンバー式と呼ばれる多次元式 (MDX) 式を定義して、指定した属性のメンバーの値を指定できます。 データ ソース ビューのテーブル内の列は、属性内の各メンバーに対して、そのメンバーの値を指定するために使用される式を提供します。
カスタムメンバー計算式は、メンバーに関連付けられたセルの値を決定し、指標の集計関数を上書きします。 カスタム メンバー式は MDX で記述されます。 各カスタム メンバー式は、1 つのメンバーに適用されます。 カスタム メンバー式は、ディメンション テーブルまたはディメンション テーブルとの外部キー リレーションシップを持つ別のテーブルに格納されます。
属性の CustomRollupColumn プロパティは、属性のメンバーのカスタム メンバー式を含む列を指定します。 列の行が空の場合は、メンバーのセル値が通常どおりに返されます。 列の数式が無効な場合、メンバーを使用するセル値が取得されるたびに実行時エラーが発生します。
属性のカスタム メンバー式を指定する前に、属性を含むディメンション テーブル、または直接関連するテーブルに、カスタム メンバー式を格納する文字列列があることを確認します。 その場合は、属性の CustomRollupColumn プロパティを手動で設定するか、ビジネス インテリジェンス ウィザードのカスタム メンバー式の設定拡張機能を使用して、属性に対してカスタム メンバー式を有効にすることができます。 この拡張機能の使用方法の詳細については、「 ディメンションの属性のカスタム メンバー式を設定する」を参照してください。
カスタム メンバー数式の評価
カスタム メンバー式は、計算されるメンバーとは異なります。 カスタム メンバー式は、ディメンション テーブルに存在するメンバーに適用され、メンバーの値のみを提供します。 これに対し、計算されるメンバーはディメンション テーブルに格納されず、計算されるメンバー式では、ディメンションまたは階層に含まれる追加メンバーのデータとメタデータの両方が定義されます。
カスタム メンバー式は、メジャーに関連付けられている集計関数をオーバーライドします。 たとえば、カスタム メンバー式を指定する前に、 Sum 集計関数を使用するメジャーには、Time ディメンションの次のメンバーに対して次の値があります。
2003: 2100
第 1 四半期: 700
第 2 四半期: 500
第 3 四半期: 100
四半期 4: 800
2004: 1500
第 1 四半期: 600
第 2 四半期: 200
第 3 四半期: 300
四半期 4: 400
カスタム メンバー式では、メンバーの値は、代わりにカスタム ロールアップ式によって提供されます。 たとえば、次のカスタム メンバー式を使用して、Time ディメンションの 2004 メンバーの Quarter 4 子メンバーの値を 450 として指定できます。
Time.[Quarter 3] * 1.5
カスタム メンバー式は、ディメンション テーブルの列に格納されます。 カスタム ロールアップ式を有効にするには、属性に CustomRollupColumn プロパティを設定します。
属性のすべてのメンバーに 1 つの MDX 式を適用するには、MDX 式をリテラル文字列として返す名前付き計算をディメンション テーブルに作成します。 次に、構成する属性の CustomRollupColumn プロパティ設定で名前付き計算を指定します。 名前付き計算は、SQL 式によって定義された行値を返すデータ ソース ビュー テーブル内の列です。 名前付き計算の構築の詳細については、「データ ソース ビューでの名前付き計算の定義 (Analysis Services)」を参照してください。
注
特定の属性に基づくすべてのレベルのメンバーではなく、特定のレベルのメンバーに MDX 式を適用するには、そのレベルで式を MDX スクリプトとして定義します。 詳細については、「 MDX スクリプトの基礎 (Analysis Services)」を参照してください。
属性のメンバーに対して計算メンバーと独自のロールアップ式の両方を使用する場合は、評価される順序に注意する必要があります。 計算されるメンバーは、カスタム ロールアップ式が解決される前に解決されます。