次の方法で共有


セルのプロパティの使用 (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> 値の形式と、この値が 1 つ以上の組み込みセル プロパティと共に CELL PROPERTIES キーワードを使用する方法を示しています。

<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 フォントに対するビットマスクの詳細効果。 たとえば、値 5 は太字 (MDFF_BOLD) と下線 (MDFF_UNDERLINE) のフォント効果の組み合わせを表します。 値は、次の定数の 1 つ以上のビットごとの OR 演算の結果です。

MDFF_BOLD = 1

MDFF_ITALIC = 2

MDFF_UNDERLINE = 4

MDFF_STRIKEOUT = 8
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 ステートメントで更新できます。 書き込みが有効になっていないリーフ セルが更新されると、更新が失敗する可能性があります。

CELL_UPDATE_NOT_ENABLED_FORMULA (0x10000001) セルの座標間に計算されるメンバーがあるため、セルを更新できません。セルは where 句のセットを使用して取得されました。 数式がセルの値 (集計パスのどこか) に影響を与えたり、計算されたセルがオンになっている場合でも、セルを更新できます。 このシナリオでは、計算が結果に影響を与えるため、セルの最終的な値が更新された値にならない可能性があります。

CELL_UPDATE_NOT_ENABLED_NONSUM_MEASURE (0x10000002) 非合計メジャー (count、min、max、distinct count、semi-additive) を更新できないため、非合計メジャーを含むセルを更新することができません。

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_ORDINALFORMATTED_VALUE、およびVALUEセルのプロパティのみが必要です。 組み込みまたはプロバイダー固有のすべてのセル プロパティは、データ型やプロバイダーのサポートを含め、 PROPERTIES スキーマ行セットで定義されます。 PROPERTIES スキーマ行セットの詳細については、「MDSCHEMA_PROPERTIES行セット」を参照してください。

既定では、 CELL PROPERTIES キーワードを使用しない場合、返されるセルプロパティは VALUEFORMATTED_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 のさまざまな場所で設定できます。 たとえば、SQL Server Data Tools (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)