Definición de datos MDX: CREATE SESSION CUBE

Crea y llena un cubo de sesión desde un cubo de servidor existente. El cubo de sesión solo es visible dentro de la sesión actual; No puede ser navegada ni consultada desde ninguna otra sesión. El cubo de sesión se elimina implícitamente cuando la sesión se cierra.

Sintaxis

  
CREATE SESSION CUBE session_cube_name FROM <cube list> (<param list>)  
  
<cube list>::= source_cube_name [,<cube list>]  
  
<param list>::= <param> ,<param list> | <param>  
  
<param>::= <dims list> | <measures list>  
  
<measures list>::= <measure>[, <measures list>]   
  
<dims list>::= <dim def> [, <dims list>]  
  
<measure>::= MEASURE source_cube_name.measure_name [<visibility qualifier>] [AS measure_name]   
  
<dim def>::= <source dim def> | <derived dim def>  
  
<source dim def>::= DIMENSION source_cube_name.dimension_name [<dim flags>] [<visibility qualifier>] [AS dimension_name>] [FROM <dim from clause> ] [<dim content def>]  
  
<dim flags>::= NOT_RELATED_TO_FACTS   
  
<dim from clause>::= <reg dim from clause>   
  
<dim reg from clause>::= dimension_name  
  
<dim content def>::= ( <level list> [,<grouping list>] [,<member slice list>] [,<default member>] )  
  
<level list>::= <level def> [, <level list>]  
  
<level def>::= LEVEL level_name [<level type> ] [AS level_name] [<level content def>]  
  
<level content def>::= ( <property list> ) | NO_PROPERTIES  
  
<level type>::= GROUPING  
  
<property list>::= <property def> [, <property list>]  
  
<property def>::= PROPERTY property_name   
  
<grouping list>::= <grouping entity> [,<grouping list>]  
  
<grouping entity>::= GROUP group_level_name.group_name (<mixed list>)  
  
<grp mixed list>::= <grp mixed element> [,<grp mixed list>]  
  
<grp mixed element>::= <grouping entity> | <member def>  
  
<member slice list>::= <member list>  
  
<member list>::= <member def> [, <member list>]  
  
<member def>::= MEMBER member_name  
  
<default member>::= DEFAULT_MEMBER AS MDX_expression  
  
<visibility qualifier>::= HIDDEN  
  

Elementos sintácticos

session_cube_name
El nombre del cubo de sesión.

source_cube_name
El nombre del cubo en el que se basa el cubo de sesión.

source_cube_name.nombre_de_medida
El nombre completamente calificado de la medida fuente está incluido en el cubo de sesión. No se permiten miembros calculados de la dimensión de Medidas.

measure_name
El nombre del compás en el cubo de sesión.

source_cube_name.nombre_dimensión
El nombre completamente calificado de la dimensión fuente se incluye en el cubo de sesión.

dimension_name
El nombre de la dimensión en el cubo de sesión.

DESDE <dim desde cláusula>
Especificación válida solo para la definición de dimensión derivada.

NOT_RELATED_TO_FACTS
Especificación válida solo para la definición de dimensión derivada.

<Tipo de nivel>
Especificación válida solo para la definición de dimensión derivada.

Remarks

A diferencia de los cubos servidor y locales, un cubo de sesión no se mantiene más allá de la sesión que creó el cubo de sesión. Un cubo de sesión se define en términos de las medidas y definiciones que lo definen. Hay dos tipos de dimensiones.

  • Dimensiones fuente: son dimensiones que formaban parte de uno o varios cubos fuente.

  • Dimensiones derivadas: son dimensiones que proporcionan nuevas capacidades de análisis. Una dimensión derivada puede ser una dimensión regular definida en función de una dimensión fuente que está cortada vertical u horizontalmente, o que contiene agrupación personalizada de miembros de dimensión. Una dimensión derivada también puede ser una dimensión de minería de datos basada en un modelo de minería de datos.

Note

La palabra clave Dimensión puede referirse tanto a dimensiones como a jerarquías.

Los cubos de sesión se utilizan principalmente para agrupar dinámicamente los miembros de atributos en grupos personalizados por aplicaciones cliente, como Microsoft Excel. En un cubo de sesión, puedes realizar las siguientes tareas:

  • Elimina las dimensiones que existen en el cubo fuente.

  • Añadir o eliminar jerarquías de una dimensión.

  • Eliminar grupos de medidas o medidas específicas.

  • Añadir un nuevo atributo, basado en la vinculación de atributos, para crear grupos contra un atributo existente...

Importante

La seguridad en los objetos de cubo de sesión se hereda de los objetos fuente subyacentes. Otros objetos, como acciones y scripts de cálculo, también son heredados por el cubo de sesión.

La instrucción CREATE SESSION CUBE sigue estas reglas:

  • No se puede agrupar en jerarquías padre-hijo.

  • No puedes hacer agrupación en dimensiones ROLAP.

  • No puedes realizar agrupaciones en dimensiones enlazadas.

  • No puedes hacer agrupaciones en niveles con rollups personalizados.

  • No puedes hacer agrupaciones sobre jerarquías de atributos discretizadas.

  • No puedes agrupar sobre jerarquías antinaturales, que son jerarquías con relaciones de muchos a muchos entre niveles (como edad y género).

  • Las referencias explícitas a un nombre de cubo en el script MDX se rompen agrupando porque el cubo de sesión tiene un nombre diferente. Utiliza la palabra clave CURRENTCUBE en su lugar.

  • No puedes agrupar en dimensiones con miembros explícitos por defecto.

  • Al realizar agrupamientos, se eliminan los miembros calculados con alcance de sesión en el cubo del servidor original.

  • Al realizar agrupaciones en una dimensión de cubo en un cubo servidor, la agrupación afecta a todas las dimensiones del cubo basadas en la misma dimensión.

Example

El siguiente ejemplo demuestra cómo crear una versión con alcance de sesión del cubo Adventure Works que contiene la medida de Cantidad de Ventas de Revendedor, la dimensión de Revendedor, la dimensión de Producto, la dimensión de Geografía y la dimensión de Fecha. Dentro de este cubo de sesión, se crean dos grupos; un grupo incluye países/regiones de Europa y otro grupo de Norteamérica. Este ejemplo es una versión simplificada de una declaración CREATE SESSION CUBE emitida por Microsoft Excel cuando un usuario crea un grupo personalizado de miembros.

CREATE SESSION CUBE [Adventure Works_XL_GROUPING1]   
   FROM [Adventure Works]   
   ( MEASURE [Adventure Works].[Internet Sales Amount]  
   ,MEASURE [Adventure Works].[Reseller Sales Amount]  
   ,DIMENSION [Adventure Works].[Date].[Calendar]  
   ,DIMENSION [Adventure Works].[Date].[Calendar Year]  
   ,DIMENSION [Adventure Works].[Date].[Calendar Semester]  
   ,DIMENSION [Adventure Works].[Date].[Calendar Quarter]  
   ,DIMENSION [Adventure Works].[Date].[Month Name]  
   ,DIMENSION [Adventure Works].[Date].[Date]  
   ,DIMENSION [Adventure Works].[Geography].[Country]   
      HIDDEN AS _XL_GROUPING81  
   ,DIMENSION [Adventure Works].[Geography].[State-Province]  
   ,DIMENSION [Adventure Works].[Geography].[City]  
   ,DIMENSION [Adventure Works].[Geography].[Postal Code]  
   ,DIMENSION [Adventure Works].[Geography].[Geography]  
   ,DIMENSION [Adventure Works].[Product].[Product Categories]  
   ,DIMENSION [Adventure Works].[Product].[Category]  
   ,DIMENSION [Adventure Works].[Product].[Subcategory]  
   ,DIMENSION [Adventure Works].[Product].[Product]  
   ,DIMENSION [Adventure Works].[Product].[Product Key]  
   ,DIMENSION [Adventure Works].[Reseller].[Reseller]  
   ,DIMENSION [Adventure Works].[Reseller].[Geography Key]  
   ,DIMENSION [Geography].[Country]   
      NOT_RELATED_TO_FACTS FROM _XL_GROUPING81   
          ( LEVEL [(All)]  
         ,LEVEL [Country1] GROUPING  
         ,LEVEL [Country]  
            ,GROUP [Country1].[CountryXl_Grp_1]   
                ( MEMBER [Geography].[Country].&[Canada]  
                  ,MEMBER [Geography].[Country].&[United States] )  
            ,GROUP [Country1].[CountryXl_Grp_2]   
                ( MEMBER [Geography].[Country].&[France]  
                  ,MEMBER [Geography].[Country].&[Germany]  
                  ,MEMBER [Geography].[Country].&[United Kingdom] )   
            )   
   )