Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Un script MDX (Multidimensional Expressions) définit le processus de calcul d’un cube dans Microsoft SQL Server Analysis Services. Il existe deux types de scripts MDX :
Script MDX par défaut
Au moment où vous créez un cube, Analysis Services crée un script MDX par défaut pour ce cube. Ce script définit une passe de calcul pour l’ensemble du cube.
Script MDX défini par l’utilisateur
Une fois que vous avez créé un cube, vous pouvez ajouter des scripts MDX définis par l’utilisateur qui étendent les fonctionnalités de calcul du cube.
Script MDX par défaut
Le script MDX par défaut créé par Analysis Services lorsque vous définissez un cube contient une instruction CALCULATE unique. Cette instruction CALCULATE unique est au début du script MDX par défaut et indique que l’intégralité du cube doit être calculée pendant la première passe de calcul.
Le script MDX par défaut contient également les commandes de script qui créent des jeux nommés, des affectations et des membres calculés créés dans le Concepteur de cube :
Analysis Services ajoute directement des commandes de script au script MDX par défaut.
Pour chaque jeu nommé dans le cube, une instruction CREATE SET correspondante existe dans le script MDX par défaut.
Pour chaque membre calculé défini dans le cube, une instruction CREATE MEMBER correspondante existe dans le script MDX par défaut.
Vous pouvez contrôler l’ordre des commandes de script, des jeux nommés et des membres calculés dans le script MDX par défaut en utilisant l’onglet Calculs du Concepteur de cube. Pour plus d’informations sur la définition des calculs stockés dans le script MDX par défaut, consultez Calculs dans les modèles multidimensionnels.
S’il n’existe aucun script MDX associé à un cube, le cube suppose le script MDX par défaut. Un cube doit être associé à au moins un script MDX, car un cube s’appuie sur le script MDX pour déterminer le comportement de calcul. En d’autres termes, un cube qui n’était pas associé à un script MDX ou qui était associé à un script MDX vide n’a pas pu et ne serait pas en mesure de calculer des cellules. Si vous créez des cubes par programmation, soit à l’aide de commandes ASSL (Analysis Services Scripting Language) soit à l’aide d’AMO (Analysis Management Objects), il est recommandé de créer un script MDX par défaut contenant une instruction CALCULATE unique pour le cube.
Contenu du script MDX
Un script MDX peut contenir les instructions et expressions suivantes :
Toutes les instructions de script MDX
Dans les scripts MDX, les instructions de script MDX contrôlent le contexte et l’étendue des calculs, et gèrent le comportement d’autres instructions dans le script MDX. Cette catégorie inclut les déclarations suivantes :
Pour plus d’informations sur les instructions de script MDX, consultez MDX Scripting Statements (MDX).
CRÉER MEMBRE
L’instruction CREATE MEMBER crée des membres calculés. Pour plus d’informations sur la création de membres calculés, consultez Génération de membres calculés dans MDX (MDX).
CRÉER ENSEMBLE
L’instruction CREATE SET crée des jeux nommés. Pour plus d’informations sur la création de jeux de noms, consultez Génération de jeux nommés dans MDX (MDX).
Instructions conditionnelles
Les instructions conditionnelles ajoutent une logique conditionnelle aux scripts MDX. Cette catégorie inclut les instructions CASE et IF .
Expressions d’affectation
Une expression d’assignation affecte une expression, telle qu’une valeur, à un sous-cube limité. Une expression de sous-cube contrainte est une collection d'expressions d'ensemble contraint qui définissent les "bords" d'un sous-cube dans un script MDX. Les codes suivants illustrent la syntaxe d’une expression de sous-cube contrainte :
<Constrained subcube> ::= (
( <Constrained set> [<Crossjoin operator> <Constrained set>...] |
<ROOT function> |
<TREE function> |
LEAVES() |
* ) [, <Constrained subcube>...]
<Constrained set> ::=
<Natural hierarchy>.MEMBERS |
<Natural hierarchy>.LEVEL(<numeric expression>).MEMBERS |
{ <Natural hierarchy member> } |
DESCENDANTS( <Natural hierarchy member>, <Level expression>, ( SELF | AFTER | SELF_AND_AFTER ) ) |
DESCENDANTS( <Natural hierarchy member>, , LEAVES )
<Natural hierarchy> ::= <Hierarchy identifier>
<Natural hierarchy member> ::= <Natural hierarchy>.<identifier>[.<identifier>...]
Voir aussi
Référence du langage MDX (MDX)
Principes de base des scripts MDX (Analysis Services)