Secuencia de comandos MDX básica (MDX)
Una secuencia de comandos de expresiones multidimensionales (MDX) define el proceso de cálculo de un cubo en Microsoft SQL Server 2005 Analysis Services (SSAS). Hay dos tipos de secuencias de comandos MDX:
- Secuencia de comandos MDX predeterminada
Al crear un cubo, Analysis Services crea una secuencia de comandos MDX predeterminada para el mismo. Esta secuencia de comandos define un paso de cálculo para todo el cubo.
- Secuencia de comandos MDX definida por el usuario
Después de crear el cubo, se pueden agregar secuencias de comandos MDX definidas por el usuario que amplían las capacidades de cálculo del cubo.
Secuencia de comandos MDX predeterminada
La secuencia de comandos MDX predeterminada que crea Analysis Services al definir un cubo contiene una sola instrucción CALCULATE. Esta única instrucción CALCULATE se ubica al comienzo de la secuencia de comandos MDX predeterminada e indica que todo el cubo debe calcularse durante el primer paso de cálculo.
La secuencia de comandos MDX predeterminada también incluye los comandos que crean conjuntos con nombre, asignaciones y miembros calculados creados en el Diseñador de cubos:
- Analysis Services agrega directamente comandos a la secuencia de comandos MDX predeterminada.
- Para cada conjunto con nombre del cubo existe una instrucción CREATE SET correspondiente en la secuencia de comandos MDX predeterminada.
- Para cada miembro calculado definido en el cubo existe una instrucción CREATE MEMBER correspondiente en la secuencia de comandos MDX predeterminada.
Para controlar el orden de los comandos de secuencias de comandos, conjuntos con nombre y miembros calculados de la secuencia de comandos MDX predeterminada puede utilizar la pestaña Cálculos del Diseñador de cubos. Para obtener más información sobre cómo definir los cálculos almacenados en la secuencia de comandos MDX predeterminada, vea Definir y configurar un cálculo.
Si no se asocia ninguna secuencia de comandos MDX a un cubo, éste asume la secuencia de comandos MDX predeterminada. Es necesario asociar los cubos a una secuencia de comandos MDX como mínimo, ya que los cubos se basan en estas secuencias de comandos para determinar el comportamiento del cálculo. Es decir, un cubo que no se haya asociado a ninguna secuencia de comandos MDX o que se haya asociado a una secuencia de comandos MDX vacía no podría calcular ninguna celda. Si crea los cubos mediante programación, mediante comandos ASSL (Analysis Services Scripting Language) o mediante los Objetos de administración de análisis (AMO), se recomienda crear una secuencia de comandos MDX predeterminada que contenga una única instrucción CALCULATE para el cubo.
Contenido de las secuencias de comandos MDX
Una secuencia de comandos MDX puede incluir las siguientes instrucciones y expresiones:
Todas las instrucciones de secuencias de comandos MDX
En las secuencias de comandos MDX, las instrucciones de las secuencias MDX controlan el contexto y el ámbito de los cálculos y administran el comportamiento de otras instrucciones de la secuencia de comandos MDX. Esta categoría incluye las siguientes instrucciones:Para obtener más información acerca de las instrucciones de las secuencias de comandos MDX, vea Instrucciones para secuencias de comandos de MDX (MDX).
- CREATE MEMBER
La instrucción CREATE MEMBER crea miembros calculados. Para obtener más información acerca de cómo crear miembros calculados, vea Generar miembros calculados en MDX (MDX).
- CREATE SET
La instrucción CREATE SET crea conjuntos con nombre. Para obtener más información acerca de cómo crear conjuntos con nombre, vea Crear conjuntos con nombre en MDX (MDX).
- Instrucciones condicionales
Las instrucciones condicionales agregan lógica condicional a las secuencias de comandos MDX. En esta categoría se incluyen las instrucciones CASE e IF.
Expresiones de asignación
Las expresiones de asignación asignan una expresión, como un valor, a los subcubos restringidos. Una expresión de subcubo restringido es una colección de expresiones de conjunto restringidas que definen los "bordes" de un subcubo de una secuencia de comandos MDX. En los siguientes ejemplos de código se muestra la sintaxis de una expresión de subcubo restringido:<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>...]
Vea también
Conceptos
Referencia del lenguaje MDX (MDX)
Aspectos básicos de las secuencias de comandos MDX (MDX)