CellValue
EssbaseのMDX CellValue関数は、現在のセルの数値を返します。
構文
CellValue
ノート
-
この関数は、メンバーのフォーマット文字列を定義するときに活用できます。ほとんどのMDX式は、フォーマット文字列を指定するために使用できます。ただし、フォーマット文字列には、フォーマットされる現在のセル値以外のデータ・セルの値への参照を含めることはできません。この関数を使用して、現在のセル値を参照します。
-
例に示すように、すべてのフォーマット文字列はMdxFormat( )ディレクティブで囲みます。
例
例1
次のフォーマット文字列は、現在の[AccountTypes]メンバーのタイプが"Expense"の場合、現在のメジャーの負の値を表示します。CellValueは、フォーマットされる現在のセル値を参照します。式のCurrentMember関数は、フォーマットされるセルのコンテキストを参照します。
/* Display negative values if current Account is an Expense type account */
MdxFormat(
IIF(IsUda(AccountTypes.CurrentMember, "Expense"),
NumToStr(-CellValue()),
NumToStr(CellValue()))
)
例2
次のフォーマット文字列は、負のセル値をカッコで囲まれた正の値として表示します。
MdxFormat(
IIF(
CellValue() < 0,
Concat(Concat("(", numtostr(-CellValue())), ")" ),
numtostr(CellValue())
)
)
例3
この例は、[Scenario]ディメンションと一緒に動的メンバー[Variance %]を示しています。[Variance %]には、[Actual]と[Budget]から値を計算する方法を指定する次の式があります。
[Variance %]式
IIF(Is(Measures.CurrentMember, Title) OR
Is(Measures.CurrentMember, Performance),
(Actual – Budget) * 10, (Actual – Budget)*100/Budget)
[Variance %]には、値の表示方法を指定する次のフォーマット文字列もあります。この場合、[Variance %]セルに対して計算されたパーセンテージ値に基づいて、数値の重要性を伝えるテキスト値が表示されます。
[Variance %]フォーマット文字列
MdxFormat(
CASE
WHEN CellValue() <= 5 THEN “Low”
WHEN CellValue() <= 10 THEN “Medium”
WHEN CellValue() <= 15 THEN “High”
ELSE “Very High”
END
)