Propriétés de membre intrinsèques (MDX)
En tant que fournisseur compatible avec la section OLAP de la norme OLE DB de mars 1999 (2.6), Microsoft SQL Server Analysis Services prend en charge les propriétés de membre intrinsèques répertoriées dans cette rubrique.
Notes
Des fournisseurs autres que SQL Server Analysis Services peuvent prendre en charge des propriétés de membre intrinsèques supplémentaires. Pour plus d'informations sur les propriétés de membre intrinsèques prises en charge par d'autres fournisseurs, consultez la documentation qui les accompagne.
Types de propriétés de membre
Les propriétés de membre intrinsèques prises en charge par SQL Server Analysis Services sont de deux types :
Propriétés de membre sensibles au contexte
Ces propriétés de membre doivent être utilisées dans le contexte d'une dimension ou d'un niveau spécifique, et fournissent les valeurs de chaque membre de la dimension ou du niveau en question.Propriétés de membre non sensibles au contexte
Ces propriétés de membre ne peuvent pas être utilisées dans le contexte d'une dimension ou d'un niveau spécifique, et fournissent les valeurs pour tous les membres situés sur un axe.
Que la propriété de membre intrinsèque soit sensible au contexte ou non, les règles d'utilisation suivantes sont d'application :
Vous pouvez spécifier uniquement les propriétés de membre intrinsèques associées aux membres de dimension projetés sur l'axe.
Vous pouvez combiner dans la même requête des propriétés de membre intrinsèques sensibles au contexte et des propriétés de membre intrinsèques non sensibles au contexte.
Vous devez utiliser le mot clé PROPERTIES pour rechercher les propriétés.
Les sections suivantes décrivent à la fois les différentes propriétés de membre intrinsèques sensibles au contexte et non sensibles au contexte disponibles dans SQL Server Analysis Services, ainsi que l'utilisation du mot clé PROPERTIES avec chaque type de propriété.
Propriétés de membre sensibles au contexte
Tous les membres de dimension ou de niveau prennent en charge une série de propriétés de membre intrinsèques sensibles au contexte. Le tableau suivant en dresse la liste.
Propriété |
Description |
---|---|
ID |
Identificateur géré en interne pour le membre. |
Key |
Valeur du membre stockée dans la colonne MEMBER_KEY du jeu de lignes du schéma MEMBERS. |
Name |
Nom du membre. |
Syntaxe PROPERTIES pour les propriétés sensibles au contexte
Ces propriétés de membre doivent être utilisées dans le contexte d'une dimension ou d'un niveau spécifique, et fournissent les valeurs de chaque membre de la dimension ou du niveau en question.
Pour les propriétés de membre de dimension, vous devez faire précéder le nom de la propriété du nom de la dimension à laquelle elle s'applique. L'exemple suivant illustre la syntaxe appropriée :
DIMENSION PROPERTIES Dimension.Property_name
Pour une propriété de membre de niveau, vous pouvez faire précéder le nom de la propriété du nom du niveau uniquement, ou des noms de la dimension et du niveau pour une spécification plus détaillée. L'exemple suivant illustre la syntaxe appropriée :
DIMENSION PROPERTIES [Dimension.]Level.Property_name
Pour illustrer cela, vous pouvez retourner les noms de chaque membre référencé dans la dimension [Sales]. Pour retourner ces noms, vous devez utiliser l'instruction suivante dans une requête MDX (Multidimensional Expressions) :
DIMENSION PROPERTIES [Sales].Name
Propriétés de membre non sensibles au contexte
Tous les membres prennent également en charge une liste de propriétés de membre intrinsèques qui sont identiques quel que soit le contexte. Ces propriétés fournissent des informations supplémentaires pouvant être utilisées par des applications pour améliorer l'expérience de l'utilisateur.
Le tableau suivant répertorie les propriétés intrinsèques non sensibles au contexte prises en charge par SQL Server Analysis Services.
Notes
Les colonnes du jeu de lignes du schéma MEMBERS prennent en charge les propriétés de membre intrinsèques répertoriées dans le tableau suivant. Pour plus d'informations sur l'ensemble de lignes du schéma MEMBERS, consultez Ensemble de lignes MDSCHEMA_MEMBERS.
Propriété |
Description |
---|---|
ACTION_TYPE |
Masque binaire indiquant les types d'actions sur le membre. Cette propriété peut prendre les valeurs suivantes :
|
CAPTION |
Identique à MEMBER_CAPTION. |
CHILDREN_CARDINALITY |
Nombre d'enfants de ce membre. Ce nombre peut être une estimation, et ne doit pas être considéré comme le compte exact. Les fournisseurs doivent renvoyer la meilleure estimation possible. |
CUBE_NAME |
Nom du cube auquel ce membre appartient. |
CUSTOM_ROLLUP |
Expression de membre personnalisée. |
CUSTOM_ROLLUP_PROPERTIES |
Propriétés de membre personnalisées. |
DESCRIPTION |
Description du membre à l'intention des utilisateurs. |
DIMENSION_UNIQUE_NAME |
Nom unique de la dimension à laquelle ce membre appartient. Pour les fournisseurs qui produisent des noms uniques par qualification, chaque composant du nom est délimité. |
HIERARCHY_UNIQUE_NAME |
Nom unique de la hiérarchie. Si le membre appartient à plusieurs hiérarchies, il existe une ligne pour chaque hiérarchie dont il fait partie. Pour les fournisseurs qui produisent des noms uniques par qualification, chaque composant du nom est délimité. |
IS_DATAMEMBER |
Valeur booléenne indiquant si le membre est un membre de données. |
KEYx |
Clé du membre, où x est la valeur ordinale de base zéro de la clé. KEY0 est disponible pour les clés composites et non composites ; KEY1, KEY2, etc. sont disponibles pour les clés composites uniquement. Key0, Key1, Key2, etc. forment collectivement la clé composite. |
LCIDx |
Traduction de la légende du membre dans la valeur hexadécimale de l'ID des paramètres régionaux, où x correspond à la valeur décimale de l'ID des paramètres régionaux (par exemple, LCID1009 pour Anglais - Canada). Uniquement disponible si la colonne de légende de la traduction est liée à la source de données. |
LEVEL_NUMBER |
Distance du membre par rapport à la racine de la hiérarchie. Le niveau de la racine est égal à zéro. |
LEVEL_UNIQUE_NAME |
Nom unique du niveau auquel ce membre appartient. Pour les fournisseurs qui produisent des noms uniques par qualification, chaque composant du nom est délimité. |
MEMBER_CAPTION |
Étiquette ou légende associée au membre. La légende est essentiellement utilisée à des fins d'affichage. En l'absence de légende, la requête retourne MEMBER_NAME. |
MEMBER_KEY |
Valeur de la clé du membre dans le type de données d'origine. MEMBER_KEY est fournie à des fins de compatibilité descendante. MEMBER_KEY a la même valeur que KEY0 pour les clés non composites et la propriété MEMBER_KEY est Null pour les clés composites. |
MEMBER_NAME |
Nom du membre. |
MEMBER_TYPE |
Type du membre. Cette propriété peut prendre les valeurs suivantes :
MDMEMBER_TYPE_FORMULA est prioritaire sur MDMEMBER_TYPE_MEASURE. Par conséquent, si la dimension Measures comprend un membre de formule (calculé), la propriété MEMBER_TYPE du membre calculé est MDMEMBER_TYPE_FORMULA. |
MEMBER_UNIQUE_NAME |
Nom unique du membre. Pour les fournisseurs qui produisent des noms uniques par qualification, chaque composant du nom est délimité. |
MEMBER_VALUE |
Valeur du membre dans le type d'origine. |
PARENT_COUNT |
Nombre de parents de ce membre. |
PARENT_LEVEL |
Distance du parent du membre par rapport au niveau racine de la hiérarchie. Le niveau de la racine est égal à zéro. |
PARENT_UNIQUE_NAME |
Nom unique du parent du membre. La valeur NULL est retournée pour tout membre situé au niveau de la racine. Pour les fournisseurs qui produisent des noms uniques par qualification, chaque composant du nom est délimité. |
SKIPPED_LEVELS |
Nombre de niveaux ignorés pour le membre. |
UNARY_OPERATOR |
Opérateur unaire du membre. |
Syntaxe PROPERTIES pour les propriétés non sensibles au contexte
Utilisez la syntaxe suivante pour spécifier une propriété de membre intrinsèque non sensible au contexte à l'aide du mot clé PROPERTIES :
DIMENSION PROPERTIES Property
Remarquez que cette syntaxe n'autorise pas la qualification de la propriété par une dimension ou un niveau. La propriété ne peut pas être qualifiée, car une propriété de membre intrinsèque non sensible au contexte s'applique à tous les membres d'un axe.
Par exemple, une instruction MDX spécifiant la propriété de membre intrinsèque DESCRIPTION posséderait la syntaxe suivante :
DIMENSION PROPERTIES DESCRIPTION
Cette instruction retourne la description de chaque membre de la dimension de l'axe. Si vous avez tenté de qualifier la propriété avec une dimension ou un niveau, comme dans Dimension.DESCRIPTION ou dans Level.DESCRIPTION, l'instruction n'est pas validée.
Exemple
L'exemple ci-dessous retourne le nombre de revendeurs dont les ventes ont baissé sur la période précédente en se basant sur les valeurs de membres State-Province (état-province) sélectionnées par l'utilisateur et évaluées à l'aide de la fonction Aggregate. Les fonctions Hierarchize (MDX) et DrilldownLevel (MDX) sont utilisées pour retourner des valeurs de ventes en baisse concernant les catégories de produits inscrites dans la dimension Product. La fonction Properties (MDX) permet de retourner le nom unique des membres parents retournés dans l'axe des colonnes.
WITH MEMBER Measures.[Declining Reseller Sales] AS
Count
(Filter
(Existing
(Reseller.Reseller.Reseller)
, [Measures].[Reseller Sales Amount] <
(
[Measures].[Reseller Sales Amount]
,[Date].Calendar.PrevMember
)
)
)
MEMBER [Geography].[State-Province].x AS
Aggregate
(
{[Geography].[State-Province].&[WA]&[US]
, [Geography].[State-Province].&[OR]&[US]
}
)
SELECT NON EMPTY HIERARCHIZE
(AddCalculatedMembers
(
{DrillDownLevel
({[Product].[All Products]})
}
)
) DIMENSION PROPERTIES PARENT_UNIQUE_NAME ON COLUMNS
FROM [Adventure Works]
WHERE
(
[Geography].[State-Province].x
, [Date].[Calendar].[Calendar Quarter].&[2003]&[4]
,[Measures].[Declining Reseller Sales]
)
L'exemple suivant retourne la légende traduite pour le membre de la catégorie de produit dans la dimension Product du cube Adventure Works pour les paramètres régionaux spécifiés.
WITH
MEMBER Measures.CategoryCaption AS Product.Category.CurrentMember.MEMBER_CAPTION
MEMBER Measures.SpanishCategoryCaption AS Product.Category.CurrentMember.Properties("LCID3082")
MEMBER Measures.FrenchCategoryCaption AS Product.Category.CurrentMember.Properties("LCID1036")
SELECT
{ Measures.CategoryCaption, Measures.SpanishCategoryCaption, Measures.FrenchCategoryCaption } ON 0
,[Product].[Category].MEMBERS ON 1
FROM [Adventure Works]