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 MDX (Multidimensional Expressions) contiennent des informations sur le contenu et le format des cellules dans une source de données multidimensionnelle, comme un cube.

MDX prend en charge le mot clé CELL PROPERTIES dans une instruction MDX SELECT pour récupérer les propriétés intrinsèques des cellules. Les propriétés intrinsèques des cellules sont les plus couramment utilisées pour faciliter la présentation visuelle des données de cellule.

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 montre le format de la <cell_props> valeur et la façon dont cette valeur 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 intrinsèques des cellules prises en charge

Le tableau suivant répertorie les propriétés intrinsèques prises en charge qui sont utilisées dans la <property> valeur.

Propriété Descriptif
ACTION_TYPE Masque de bits qui indique quels types d’actions 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 Drillthrough ne sont pas incluses pour les requêtes contenant un jeu dans la clause WHERE.
BACK_COLOR Couleur d’arrière-plan pour afficher la propriété VALUE ou FORMATTED_VALUE . Pour plus d’informations, consultez FORE_COLOR et BACK_COLOR Contenus (MDX).
CELL_ORDINAL Numéro ordinal de la cellule dans le jeu de données.
FONT_FLAGS Effets détaillés du masque de bits sur la police. La valeur est le résultat d’une opération OR au niveau du bit d’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 d’effets de police gras (MDFF_BOLD) et souligné (MDFF_UNDERLINE).
FONT_NAME La 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 de premier plan pour l’affichage de la propriété VALUE ou FORMATTED_VALUE . Pour plus d’informations, consultez FORE_COLOR et BACK_COLOR Contenus (MDX).
FORMAT Identique à FORMAT_STRING.
FORMAT_STRING Chaîne de format utilisée pour créer la valeur de propriété FORMATTED_VALUE . Pour plus d’informations, consultez FORMAT_STRING Contenu (MDX).
FORMATTED_VALUE Chaîne de caractères qui représente un affichage mis en forme de la propriété VALUE .
LANGUAGE Le lieu où le FORMAT_STRING sera appliqué. LANGUAGE est généralement utilisé pour la conversion monétaire.
MISE À JOUR Valeur qui indique 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 le cellset.
CELL_UPDATE_ENABLED_WITH_UPDATE (0x00000002) La cellule peut être mise à jour avec une instruction de mise à jour. La mise à jour peut échouer si une cellule feuille est modifiée, alors qu'elle n’est pas activée pour l'écriture.
CELL_UPDATE_NOT_ENABLED_FORMULA (0x10000001) Impossible de mettre à jour la cellule, car elle a un membre calculé parmi ses coordonnées ; la cellule a été récupérée avec un ensemble dans la clause WHERE. Une cellule peut être mise à jour même si une formule influe sur elle ou si une cellule calculée dépend de sa valeur (se trouvant quelque part le long du chemin d’agrégation). Dans ce scénario, la valeur finale de la cellule peut ne pas être la valeur mise à jour, car le calcul affecte le résultat
CELL_UPDATE_NOT_ENABLED_NONSUM_MEASURE (0x10000002 ) Impossible de mettre à jour la cellule, car les mesures non-somme (nombre, min, max, nombre distinct, semi-additif) ne peuvent pas être mises à jour.
CELL_UPDATE_NOT_ENABLED_NACELL_VIRTUALCUBE (0x10000003 ) Impossible de mettre à jour la cellule, 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 ) Impossible de mettre à jour la cellule, car elle est sécurisée.
CELL_UPDATE_NOT_ENABLED_CALCLEVEL (0x10000006) réservé à une utilisation ultérieure.
CELL_UPDATE_NOT_ENABLED_CANNOTUPDATE (0x10000007 ) Impossible de mettre à jour la cellule pour des raisons internes.
CELL_UPDATE_NOT_ENABLED_INVALIDDIMENSIONTYPE (0x10000009 ) Impossible de mettre à jour la cellule, car la mise à jour n’est pas prise en charge dans le modèle d’exploration de données, les dimensions indirectes ou d’exploration de données.
VALUE Valeur non mise en forme de la cellule.

Seules les propriétés de cellule CELL_ORDINAL, FORMATTED_VALUE et VALUE sont requises. Toutes les propriétés de cellule, intrinsèques ou spécifiques au fournisseur, sont définies dans l’ensemble de lignes de schéma PROPERTIES , y compris leurs types de données et la prise en charge du 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_VALUE et CELL_ORDINAL (dans cet ordre). Si le mot clé CELL PROPERTIES est utilisé, seules ces propriétés de cellule explicitement indiqué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 propriétés de cellule ne sont pas retournées pour les requêtes MDX qui retournent des ensembles de lignes aplaties ; dans ce cas, chaque cellule est représentée comme si seule la propriété de cellule FORMATTED_VALUE a été retournée.

Définition des 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 des 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. La requête suivante montre comment définir les propriétés de cellule 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

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