MDXプロパティ式
PROPERTY_EXPRを使用して、関連するEssbaseメンバーのプロパティを問い合せるためにMDXを使用する方法について説明します。
メンバーの固有プロパティとカスタム・プロパティの問合せに加えて、PROPERTY_EXPR関数を使用してMDXプロパティの問合せを実行することもできます。この関数を使用すると、メンバー値の式に基づいて、関連するメンバーのプロパティを問い合せられます。
構文
PROPERTY_EXPR (dimension name, property_name, member_value_expression, display_name)
表4-18 PROPERTY_EXPRパラメータ
パラメータ | 説明 |
---|---|
dimension name |
ディメンション名、またはキーワードALL。ディメンション名を指定すると、プロパティ式は、そのディメンションのメンバーに対してのみ評価されます。キーワードALLを指定すると、プロパティ式は、軸上のすべてのメンバーに対して評価されます。 |
property_name |
プロパティ仕様。固有プロパティの1つ(MEMBER_NAME、MEMBER_ALIAS、LEVEL_NUMBER、GEN_NUMBER、IS_EXPENSE、COMMENTS、MEMBER_UNIQUE_NAME)、またはカスタム・プロパティの1つ(属性ディメンション名、別名表名、またはUDA仕様)。 |
member_value_expression |
メンバー値の式。 |
display_name |
文字列リテラル。問合せ出力で問合せされたプロパティ情報に使用する表示名。 |
説明
ディメンション名からの軸上のすべてのメンバーについて、member_value_expressionは、コンテキスト内のディメンション名からの現在のメンバーを使用して評価されます。property_nameは、member_value_expressionの出力で評価されます。指定したdisplay_nameは、問い合されたプロパティの出力に使用するラベルを示します。
CurrentAxisMemberを使用して、軸上の現在のメンバーを参照できます。
例
SELECT
{[100]}
ON COLUMNS,
Market.Levels(0).Members
DIMENSION PROPERTIES
PROPERTY_EXPR
(
Market,
MEMBER_NAME,
Ancestor
(
Currentaxismember(),
Currentaxismember().Dimension.Levels(1)
),
"Parent_level_1"
),
PROPERTY_EXPR
(
Market,
MEMBER_NAME,
Ancestor
(
Currentaxismember(),
Currentaxismember().Dimension.Levels(2)
),
"Parent_level_2"
)
ON ROWS
FROM Sample.Basic;
これは、次のグリッド(切捨て)を返します。
表4-19 MDX例からの出力グリッド
(軸) | Axis-1.properties | 100 |
---|---|---|
[New York] | Parent_level_1 = East, Parent_level_2 = market | 3498 |
[Massachusetts] | Parent_level_1 = East, Parent_level_2 = market | 5105 |
[Florida] | Parent_level_1 = East, Parent_level_2 = market | 2056 |
... | ... | ... |