次の方法で共有


セル プロパティの使用 (MDX)

多次元式 (MDX) でのセル プロパティには、キューブなどの多次元データ ソース内のセルの内容や書式に関する情報が含まれます。

MDX では、固有のセル プロパティを取得するために MDX SELECT ステートメント内で CELL PROPERTIES キーワードを使用できます。 固有セル プロパティは、主にセル データを視覚的に表示するために利用されます。

CELL PROPERTIES キーワードの構文

MDX SELECT ステートメントの CELL PROPERTIES キーワードには、次の構文を使用します。

SELECT [<axis_specification>
       [, <axis_specification>...]]
  FROM [<cube_specification>]
[WHERE [<slicer_specification>]]
[<cell_props>]

次の構文は、<cell_props> 値の形式、およびこの値の中で CELL PROPERTIES キーワードと 1 つまたは複数の固有セル プロパティを使用する方法を示しています。

<cell_props> ::= CELL PROPERTIES <property> [, <property>...]

サポートされる固有セル プロパティ

次の表は、<property> 値の中で使用可能な固有セル プロパティを示しています。

プロパティ

説明

ACTION_TYPE

セルに対するアクションの種類を示すビットマスク。 このプロパティの値は、次のいずれか 1 つです。

  • MDACTION_TYPE_URL

  • MDACTION_TYPE_HTML

  • MDACTION_TYPE_STATEMENT

  • MDACTION_TYPE_DATASET

  • MDACTION_TYPE_ROWSET

  • MDACTION_TYPE_COMMANDLINE

  • MDACTION_TYPE_PROPRIETARY

  • MDACTION_TYPE_REPORT

  • MDACTION_TYPE_DRILLTHROUGH

注意

WHERE 句内にセットを含むクエリの場合、ドリルスルー アクションは含まれません。

BACK_COLOR

VALUE または FORMATTED_VALUE プロパティを表示するときの背景色。 詳細については、「FORE_COLOR および BACK_COLOR の内容 (MDX)」を参照してください。

CELL_ORDINAL

データセット内のセルの序数。

FONT_FLAGS

フォントの詳細な文字飾りを示すビットマスク。 この値は、次の 1 つ以上の定数に対するビットごとの OR 演算の結果です。

  • MDFF_BOLD = 1

  • MDFF_ITALIC = 2

  • MDFF_UNDERLINE = 4

  • MDFF_STRIKEOUT = 8

たとえば、値 5 は、太字の (MDFF_BOLD) フォントと下線付きの (MDFF_UNDERLINE) フォントの文字飾りの組み合わせを表します。

FONT_NAME

VALUE または FORMATTED_VALUE プロパティの表示に使用するフォント。

FONT_SIZE

VALUE または FORMATTED_VALUE プロパティの表示に使用するフォント サイズ。

FORE_COLOR

VALUE または FORMATTED_VALUE プロパティを表示するときの前景色。 詳細については、「FORE_COLOR および BACK_COLOR の内容 (MDX)」を参照してください。

FORMAT

FORMAT_STRING と同じ。

FORMAT_STRING

FORMATTED_VALUE プロパティ値の作成に使用する書式文字列。 詳細については、「FORMAT_STRING の内容 (MDX)」を参照してください。

FORMATTED_VALUE

VALUE プロパティの表示の書式設定を表す文字列。

LANGUAGE

FORMAT_STRING を適用するロケール。 LANGUAGE は通常、通貨変換のために使用されます。

UPDATEABLE

セルが更新可能かどうかを示す値。 このプロパティの値は、次のいずれか 1 つです。

  • MD_MASK_ENABLED (0x00000000)   セルは更新可能です。

  • MD_MASK_NOT_ENABLED (0x10000000)   セルは更新できません。

  • CELL_UPDATE_ENABLED (0x00000001)   セルはセル セット内で更新可能です。

  • CELL_UPDATE_ENABLED_WITH_UPDATE (0x00000002)   セルは UPDATE ステートメントによって更新可能です。 書き込み可能でないリーフ セルが更新される場合、UPDATE は失敗する可能性があります。

  • CELL_UPDATE_NOT_ENABLED_FORMULA (0x10000001)   セルの座標の中に計算されるメンバーが含まれているため、セルを更新できません。WHERE 句内のセットと共にセルが取得されました。 数式がセルの値に影響を与える、あるいは計算されるセルが集計パス上にあるとしても、セルの更新は行われます。 この場合、結果が計算に影響されるため、セルの最終的な値は更新後の値にならない可能性があります。

  • CELL_UPDATE_NOT_ENABLED_NONSUM_MEASURE (0x10000002)   合計でないメジャー (カウント数、最小値、最大値、個別カウント、および準加法) は更新できないため、セルは更新できません。

  • CELL_UPDATE_NOT_ENABLED_NACELL_VIRTUALCUBE (0x10000003)   セルが存在しない (メジャーと、そのメジャーが属するメジャー グループとは無関係なディメンション メンバーの交差部分にセルがある) ため、セルは更新できません。

  • CELL_UPDATE_NOT_ENABLED_SECURE (0x10000005)    セルが保護されているため、セルは更新できません。

  • CELL_UPDATE_NOT_ENABLED_CALCLEVEL (0x10000006)   将来の使用のために予約されています。

  • CELL_UPDATE_NOT_ENABLED_CANNOTUPDATE (0x10000007)   内部的な理由のため、セルは更新できません。

  • CELL_UPDATE_NOT_ENABLED_INVALIDDIMENSIONTYPE (0x10000009)   マイニング モデル ディメンション、間接ディメンション、データ マイニング ディメンションでは更新がサポートされないため、セルは更新できません。

VALUE

書式設定されていないセルの値。

必須のセル プロパティは、CELL_ORDINAL、FORMATTED_VALUE、および VALUE だけです。 固有またはプロバイダー固有を問わず、すべてのセル プロパティは、そのデータ型およびプロバイダーのサポートを含めて、PROPERTIES スキーマ行セットで定義します。 PROPERTIES スキーマ行セットの詳細については、「MDSCHEMA_PROPERTIES 行セット」を参照してください。

既定では、CELL PROPERTIES キーワードが使用されていない場合、返されるセル プロパティは VALUE、FORMATTED_VALUE、および CELL_ORDINAL です (この順番で返されます)。 CELL PROPERTIES キーワードが使用されている場合は、キーワードで明示的に記述されたセル プロパティだけが返されます。

次の例は、MDX クエリでの CELL PROPERTIES キーワードの使用法を示しています。

SELECT
   {[Measures].[Reseller Gross Profit]} ON COLUMNS,
   {[Reseller].[Reseller Type].[Reseller Name].Members} ON ROWS
FROM [Adventure Works]
CELL PROPERTIES VALUE, FORMATTED_VALUE, FORMAT_STRING, FORE_COLOR, BACK_COLOR

平面的な行セットを返す MDX クエリの場合、セル プロパティは返されません。この場合、各セルは FORMATTED_VALUE セル プロパティだけが返されたかのように表示されます。

セル プロパティの設定

セル プロパティは、Microsoft SQL Server Analysis Services のさまざまな場所で設定できます。 たとえば、Format String プロパティは、SQL Server データ ツール (SSDT) のキューブ エディターの [キューブ構造] タブで、標準メジャーに対して設定できます。同じプロパティをキューブ エディターの [計算] タブで、キューブで定義されている計算されるメジャーに対して設定できます。クエリの WITH 句で定義されている計算されるメジャーも、その書式設定文字列をそこで定義されます。次のクエリでは、計算されるメジャーに対してセル プロパティを設定する方法を示しています。

WITH MEMBER MEASURES.CELLPROPERTYDEMO AS [Measures].[Internet Sales Amount]
, FORE_COLOR=RGB(0,0,255)
, BACK_COLOR=IIF([Measures].[Internet Sales Amount]>7000000, RGB(255,0,0), RGB(0,255,0))
, FONT_SIZE=10
, FORMAT_STRING='#,#.000'
SELECT MEASURES.CELLPROPERTYDEMO ON 0,
[Date].[Calendar Year].[Calendar Year].MEMBERS ON 1
FROM [Adventure Works]
CELL PROPERTIES VALUE, FORMATTED_VALUE, FORE_COLOR, BACK_COLOR, FONT_SIZE

関連項目

その他の技術情報

MDX クエリの基礎 (Analysis Services)