Partager via


Propriétés de cellule MDX - Utilisation des propriétés de cellule

S’applique à : SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Les propriétés de cellule dans les expressions multidimensionnelles (MDX, Multidimensional Expressions) contiennent des informations sur le contenu et le format des cellules appartenant à une source de données multidimensionnelles, par exemple un cube.

La syntaxe MDX prend en charge le mot clé CELL PROPERTIES dans une instruction MDX SELECT pour l'extraction des propriétés de cellule intrinsèques. Ces propriétés sont principalement utilisées pour définir l'affichage des données des cellules.

Syntaxe du mot clé CELL PROPERTIES

Utilisez la syntaxe suivante pour le mot clé CELL PROPERTIES de l’instruction MDX SELECT :

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

La syntaxe suivante représente le format de la valeur <cell_props> et la manière dont elle utilise le mot clé CELL PROPERTIES avec une ou plusieurs propriétés de cellule intrinsèques :

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

Propriétés de cellule intrinsèques prises en charge

Le tableau suivant dresse la liste des propriétés de cellule intrinsèques prises en charge utilisées dans la valeur <property> .

Propriété Description
ACTION_TYPE Masque binaire indiquant les types d'actions qui existent sur la cellule. Cette propriété peut prendre les valeurs suivantes :

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



Remarque : les actions d’extraction des requêtes dont la clause Where contient un jeu ne sont pas comprises.
BACK_COLOR Couleur d’arrière-plan utilisée pour afficher la propriété VALUE ou FORMATTED_VALUE. Pour plus d’informations, consultez contenu FORE_COLOR et BACK_COLOR (MDX).
CELL_ORDINAL Numéro ordinal de la cellule dans le jeu de données.
FONT_FLAGS Masque de bits détaillant les effets sur la police. La valeur de cette propriété est le résultat d'une opération OU au niveau du bit sur une ou plusieurs des constantes suivantes :

MDFF_BOLD = 1

MDFF_ITALIC = 2

MDFF_UNDERLINE = 4

MDFF_STRIKEOUT = 8



Par exemple, la valeur 5 représente la combinaison des effets gras (MDFF_BOLD) et souligné (MDFF_UNDERLINE).
FONT_NAME Police à utiliser pour afficher la propriété VALUE ou FORMATTED_VALUE .
FONT_SIZE Taille de police à utiliser pour afficher la propriété VALUE ou FORMATTED_VALUE .
FORE_COLOR Couleur d’avant-plan utilisée pour afficher la propriété VALUE ou FORMATTED_VALUE. Pour plus d’informations, consultez contenu FORE_COLOR et BACK_COLOR (MDX).
FORMAT Identique à FORMAT_STRING.
FORMAT_STRING Chaîne de format utilisée pour créer la valeur de la propriété FORMATTED_VALUE. Pour plus d’informations, consultez contenu FORMAT_STRING (MDX).
FORMATTED_VALUE Chaîne de caractères représentant un affichage avec mise en forme de la propriété VALUE .
LANGUAGE Paramètre régional auquel FORMAT_STRING sera appliqué. LANGUAGE est généralement utilisé pour la conversion de devises.
UPDATEABLE Valeur indiquant si la cellule peut être mise à jour. Cette propriété peut prendre les valeurs suivantes :
MD_MASK_ENABLED (0x00000000) La cellule peut être mise à jour.
MD_MASK_NOT_ENABLED (0x10000000) Impossible de mettre à jour la cellule.
CELL_UPDATE_ENABLED (0x00000001) La cellule peut être mise à jour dans l’ensemble de cellules.
CELL_UPDATE_ENABLED_WITH_UPDATE (0x00000002) La cellule peut être mise à jour avec une instruction update. La mise à jour peut échouer si une cellule feuille non activée en écriture est mise à jour.
CELL_UPDATE_NOT_ENABLED_FORMULA (0x10000001) La cellule ne peut pas être mise à jour, car elle a un membre calculé parmi ses coordonnées ; la cellule a été récupérée avec un jeu dans la clause where. Une cellule peut être mise à jour même si une formule affecte sa valeur (se trouve à un certain endroit sur le chemin d'agrégation) ou si une cellule calculée se trouve dessus. Dans ce scénario, la valeur finale de la cellule ne peut pas être la valeur mise à jour, car le calcul affectera le résultat.
CELL_UPDATE_NOT_ENABLED_NONSUM_MEASURE (0x10000002) La cellule ne peut pas être mise à jour, car les mesures autres que la somme (count, min, max, distinct count, semi-additive) ne peuvent pas être mises à jour.
CELL_UPDATE_NOT_ENABLED_NACELL_VIRTUALCUBE (0x10000003) La cellule ne peut pas être mise à jour, car elle n’existe pas car elle se trouve à l’intersection d’une mesure et d’un membre de dimension non lié au groupe de mesures de la mesure.
CELL_UPDATE_NOT_ENABLED_SECURE (0x10000005) La cellule ne peut pas être mise à jour, car elle est sécurisée.
CELL_UPDATE_NOT_ENABLED_CALCLEVEL (0x10000006) réservé pour une utilisation ultérieure.
CELL_UPDATE_NOT_ENABLED_CANNOTUPDATE (0x10000007) La cellule ne peut pas être mise à jour pour des raisons internes.
CELL_UPDATE_NOT_ENABLED_INVALIDDIMENSIONTYPE (0x10000009) La cellule ne peut pas être mise à jour, car la mise à jour n’est pas prise en charge dans les dimensions de modèle d’exploration de données, indirectes ou d’exploration de données.
VALUE Valeur sans mise en forme de la cellule.

Seules les propriétés de cellule CELL_ORDINAL, FORMATTED_VALUEet VALUE sont obligatoires. Toutes les propriétés de cellule, intrinsèques ou propres aux fournisseurs, sont définies dans le jeu de lignes du schéma PROPERTIES , notamment les types de données et la prise en charge par un fournisseur.

Par défaut, si le mot clé CELL PROPERTIES n’est pas utilisé, les propriétés de cellule retournées sont VALUE, FORMATTED_VALUEet CELL_ORDINAL (dans cet ordre). Si le mot clé CELL PROPERTIES est utilisé, seules les propriétés de cellule explicitement spécifiées avec le mot clé sont retournées.

L’exemple suivant illustre l’utilisation du mot clé CELL PROPERTIES dans une requête MDX :

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  

Les requêtes MDX qui retournent des jeux de lignes réduits ne retournent pas de propriétés de cellule ; dans ce cas, chaque cellule est représentée comme si seule la propriété de cellule FORMATTED_VALUE était retournée.

Définition de propriétés de cellule

Les propriétés de cellule peuvent être définies dans Microsoft SQL Server SQL Server Analysis Services à différents endroits. Par exemple, la propriété Format String peut être définie pour les mesures régulières sous l’onglet Structure du cube de l’éditeur de cube dans SQL Server Data Tools ; la même propriété peut être définie pour les mesures calculées définies sur le cube sous l’onglet Calculs de l’éditeur de cube ; les mesures calculées définies dans la clause WITH d’une requête ont également leur chaîne de format définie là-bas. La requête suivante montre comment les propriétés de cellule peuvent être définies sur une mesure calculée :

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  

Voir aussi

Principes de base des requêtes MDX (Analysis Services)