Manual - SQL Server Analysis Services
Manual - SQL Server Analysis Services
Tabla de contenido
Tutorial de SQL Server Analysis Services............................................................................................................5
Lección 1: Definir una vista de origen de datos en un proyecto de Analysis Services.........................................7
Crear un proyecto de Analysis Services...............................................................................................................8
Para crear un nuevo proyecto de Analysis Services....................................................................................8
Definir un origen de datos..................................................................................................................................... 8
Para definir un origen de datos nuevo.....................................................................................................8
Definir una vista de origen de datos..................................................................................................................... 9
Para definir una vista de origen de datos nueva....................................................................................9
Modificar los nombres de tabla predeterminados...............................................................................................11
Para modificar el nombre predeterminado de una tabla......................................................................11
Lección 3: Modificar medidas, atributos y jerarquías..........................................................................................13
Modificar medidas............................................................................................................................................... 14
Para modificar las medidas del cubo.........................................................................................................14
Modificar la dimensión Customer........................................................................................................................ 14
Para cambiar el nombre de un atributo.................................................................................................15
Para crear una jerarquía.......................................................................................................................... 15
Para agregar un cálculo con nombre.....................................................................................................15
Para utilizar el cálculo con nombre para los nombres de miembro...................................................16
Para definir carpetas para mostrar.........................................................................................................16
Para definir KeyColumns compuestas para el atributo City................................................................17
Para definir KeyColumns compuestas para el atributo State-Province.............................................18
Para definir relaciones de atributo.........................................................................................................18
Para implementar los cambios, procesar los objetos y ver los cambios...........................................19
Modificar la dimensión Product........................................................................................................................... 19
Para agregar un cálculo con nombre.....................................................................................................19
Para modificar el valor de la propiedad NameColumn de un atributo................................................20
Para crear una jerarquía.......................................................................................................................... 20
Para especificar los nombres de carpeta y de los miembros..............................................................21
Para definir relaciones de atributo.........................................................................................................22
Para revisar los cambios de la dimensión Product..............................................................................22
Modificar la dimensión Date................................................................................................................................ 22
Para agregar un cálculo con nombre.....................................................................................................23
Para utilizar el cálculo con nombre para los nombres de miembro...................................................23
Para crear una jerarquía.......................................................................................................................... 24
Para definir relaciones de atributo.........................................................................................................24
Para proporcionar nombres de miembros de dimensión únicos........................................................25
Para definir KeyColumns compuestas para el atributo English Month Name...................................26
Para definir KeyColumns compuestas para el atributo Calendar Quarter.........................................26
Para definir KeyColumns compuestas para el atributo Calendar Semester......................................26
Para implementar y ver los cambios......................................................................................................27
Para modificar el orden de los miembros de clave compuesta..........................................................27
Examinar el cubo implementado......................................................................................................................... 28
Para examinar el cubo implementado....................................................................................................29
Página 1 de 154
Sql server 2008 - Analisis Services
Página 2 de 154
Sql server 2008 - Analisis Services
Página 3 de 154
Sql server 2008 - Analisis Services
Página 4 de 154
Sql server 2008 - Analisis Services
Aprendizaje
Definir orígenes de datos, vistas del origen de datos, dimensiones, atributos, relaciones
de atributo, jerarquías y cubos en un proyecto de Analysis Services en BI Development
Studio.
Ver los datos de dimensiones y cubos implementando el proyecto de Analysis Services
en una instancia de Analysis Services y a procesar los objetos implementados para
rellenarlos con datos del origen de datos subyacente.
Modificar las medidas, las dimensiones, las jerarquías, los atributos y los grupos de
medida del proyecto de Analysis Services, así como a implementar cambios
incrementales en el cubo implementado en el servidor de desarrollo.
Definir cálculos, indicadores de claves de rendimiento (KPI), acciones, perspectivas,
traducciones y funciones de seguridad en un cubo.
Requisitos
Para completar este tutorial, necesita los siguientes componentes, ejemplos y herramientas:
Para obtener más información sobre cómo instalar estos componentes, ejemplos y
herramientas, vea Instalar SQL Server 2008 R2 e Consideraciones para instalar ejemplos y
bases de datos de ejemplo de SQL Server.
Debe ser un miembro del grupo local Administradores del equipo Analysis Services o
ser un miembro de la función Servidor de la instancia de Analysis Services.
Debe tener permisos de lectura en la base de datos AdventureWorks2008R2 DW de
SQL Server.
Contenido
Página 5 de 154
Sql server 2008 - Analisis Services
En esta lección, debe definir una vista de origen de datos en un proyecto de Analysis
Services utilizando BI Development Studio.
En esta lección, debe definir un cubo y sus dimensiones utilizando el Asistente para
cubos y luego implementar el cubo en la instancia local de Analysis Services.
En esta lección, debe mejorar la facilidad de uso del cubo e implementar de forma
incremental los cambios relacionados, procesando el cubo y sus dimensiones según
sea necesario.
En esta lección, debe definir una relación de hechos para una dimensión degenerada y
definir una relación de varios a varios.
En esta lección, debe definir miembros calculados, conjuntos con nombre y secuencias
de comandos.
Importante
Para consultar los tutoriales, se recomienda agregar los botones Siguiente y Anterior a la barra
de herramientas del visor de documentos. Para obtener más información, vea Agregar los
botones Siguiente y Anterior a la Ayuda.
Página 6 de 154
Sql server 2008 - Analisis Services
Para diseñar una aplicación de Business Intelligence en SQL Server, primero debe crear un
proyecto de Analysis Services en Business Intelligence Development Studio. En este proyecto,
debe definir todos los elementos de la solución, empezando por una vista de origen de datos.
En esta tarea, debe crear el proyecto Tutorial de Analysis Services, basado en una
plantilla de Analysis Services.
En esta tarea, debe definir una única vista unificada de los metadatos de tablas
seleccionadas en la base de datos AdventureWorks2008R2DW.
En esta tarea, debe modificar los nombres de las tablas de cada vista de origen de
datos, de modo que los nombres de los objetos subsiguientes de Analysis Services que
definirá sean más descriptivos.
Página 7 de 154
Sql server 2008 - Analisis Services
En la tarea siguiente, debe usar Business Intelligence Development Studio para crear un nuevo
proyecto de Microsoft Analysis Services denominado Tutorial de Analysis Services, basado en
la plantilla del proyecto de Analysis Services. Un proyecto es una colección de objetos
relacionados. Los proyectos existen en una solución, que incluye uno o más proyectos. Para
obtener más información, vea Definir un proyecto de Analysis Services.
1. Haga clic en Inicio, seleccione Todos los programas, Microsoft SQL Server 2008 y,
después, haga clic en SQL Server Business Intelligence Development Studio.
4. Cambie el nombre del proyecto por Tutorial de Analysis Services, que cambia también
el nombre de la solución, y haga clic en Aceptar.
Tras crear un proyecto de Analysis Services, generalmente se empieza a trabajar con el mismo
definiendo uno o más orígenes de datos que el proyecto utilizará. Al definir un origen de datos,
se define la información de cadena de conexión que se utilizará para establecer la conexión
con el origen de datos. Para obtener más información, vea Definir un origen de datos usando el
Asistente para orígenes de datos (Analysis Services).
Página 8 de 154
Sql server 2008 - Analisis Services
2. En la página de inicio del Asistente para orígenes de datos, haga clic en Siguiente para
abrir la página Seleccionar cómo definir la conexión.
3. En la página Seleccionar cómo definir la conexión, puede definir un origen de datos
basado en una conexión nueva, en una conexión existente o en un objeto de origen de
datos definido con anterioridad. En este tutorial, va a definir un origen de datos basado
en una conexión nueva. Compruebe que está seleccionada la opción Crear un origen
de datos basado en una conexión nueva o existente y, a continuación, haga clic en
Nueva.
4. En el cuadro de diálogo Administrador de conexiones se definen las propiedades de
conexión para el origen de datos. En la lista Proveedor, compruebe que está
seleccionada la opción Native OLE DB\SQL Server Native Client 10.0.
Para conectarse a una instancia con nombre del equipo local, escriba localhost\
<nombre de instancia>. Para conectarse al equipo especificado en lugar de al equipo
local, escriba el nombre del equipo o la dirección IP.
Nota
Para modificar las propiedades del origen de datos una vez creado éste, haga doble clic en el
origen de datos de la carpeta Orígenes de datos para mostrar las propiedades del origen de
datos en el Diseñador de origen de datos.
Tras definir los orígenes de datos que utilizará en un proyecto de Analysis Services, el paso
siguiente generalmente consiste en definir una vista del origen de datos para el proyecto. Una
vista del origen de datos es una sola vista unificada de metadatos de las tablas y vistas
especificadas que el origen de datos define en el proyecto. Almacenar metadatos en la vista de
origen de datos permite trabajar con los metadatos durante el proceso de desarrollo sin
ninguna conexión abierta con ningún origen de datos subyacente. Para obtener más
información, vea Diseñar vistas de origen de datos (Analysis Services).
En la tarea siguiente, definirá una vista de origen de datos que incluye cinco tablas del origen
de datos Adventure Works DW.
Página 9 de 154
Sql server 2008 - Analisis Services
Nota
Para crear una vista de origen de datos que se base en varios orígenes de datos,
primero debe definir una vista de origen de datos que se base en un único origen de
datos. Este origen de datos luego se llama origen de datos principal. A continuación,
puede agregar tablas y vistas a partir de un origen de datos secundario. Al diseñar
dimensiones que contengan atributos basados en tablas relacionadas en varios
orígenes de datos, puede que necesite definir un origen de datos de Microsoft SQL
Server como el origen de datos principal para usar sus capacidades del motor de
consultas distribuidas.
Nota
Haga clic en el botón Maximizar situado en la esquina superior derecha para que la
ventana ocupe toda la pantalla. Así resultará más fácil ver la lista completa de objetos
disponibles.
La vista del origen de datos Adventure Works DW aparece en la carpeta Vistas del
origen de datos del Explorador de soluciones. El contenido de la vista del origen de
datos también se muestra en el Diseñador de vistas del origen de datos de Business
Intelligence Development Studio. Este diseñador contiene los elementos siguientes:
Página 10 de 154
Sql server 2008 - Analisis Services
Ahora puede ver las tablas y sus relaciones en el panel Diagrama. Observe que hay
tres relaciones entre la tabla FactInternetSales y la tabla DimDate. Cada venta tiene
tres fechas asociadas: de pedido, de vencimiento y de envío. Para ver los detalles de
cualquier relación, haga doble clic en la flecha de relación del panel Diagrama.
Si lo desea, puede cambiar el valor de la propiedad FriendlyName de los objetos de la vista del
origen de datos para que sus nombres sean más descriptivos. También puede cambiar los
nombres de estos objetos tras definirlos.
En la tarea siguiente, cambiará el nombre descriptivo de cada tabla de la vista del origen de
datos Adventure Works DW quitando los prefijos "Dim" y "Fact" de dichas tablas. De este modo
los objetos de cubo y dimensión que definirá en la siguiente lección serán más descriptivos.
Nota
También puede cambiar los nombres descriptivos de las columnas, definir columnas calculadas
y combinar tablas o vistas en la vista del origen de datos para que sean más descriptivos.
1. En el panel Tablas del Diseñador de vistas de origen de datos, haga clic con el botón
secundario en la tabla FactInternetSales y, a continuación, haga clic en Propiedades
para mostrar las propiedades del objeto FactInternetSales en la vista del origen de
datos del Tutorial de Adventure Works.
2. Haga clic en Ocultar automáticamente en la barra de título de la ventana Propiedades
de modo que esta ventana permanezca visible.
Es más fácil cambiar las propiedades de cada tabla en la vista de origen de datos
cuando la ventana Propiedades permanece abierta. Si no fija la ventana abierta
mediante el botón Ocultar automáticamente, la ventana se cerrará al hacer clic en un
objeto distinto del panel Diagrama.
Página 11 de 154
Sql server 2008 - Analisis Services
Página 12 de 154
Sql server 2008 - Analisis Services
Una vez definido el cubo inicial, estará listo para mejorar la utilidad y la facilidad de uso del
cubo.
Nota
Para disponer de un proyecto completado de la lección 2, descargue e instale los ejemplos.
Para obtener más información, vea Consideraciones para instalar ejemplos y bases de datos de
ejemplo de SQL Server.
Modificar medidas
En esta tarea, debe especificar las propiedades de formato para las medidas de
moneda y de porcentaje en el cubo Tutorial de Analysis Services.
En esta tarea, debe crear una jerarquía de usuario, crear cálculos con nombre,
modificar atributos para utilizarlos en cálculos con nombre, y agrupar atributos de grupo
y jerarquías de usuario en carpetas para mostrar.
En esta tarea, debe definir una jerarquía de usuarios, crear cálculos con nombre, definir
el nombre de miembro Todos y definir carpetas para mostrar.
En esta tarea, debe definir una jerarquía de usuario, modificar nombres de miembros
de atributo y utilizar claves compuestas para especificar miembros de atributo únicos.
En esta tarea, debe explorar los datos del cubo usando el explorador del Diseñador de
cubos.
Página 13 de 154
Sql server 2008 - Analisis Services
Modificar medidas
Puede usar la propiedad FormatString para definir parámetros de formato que controlen cómo
se presentan las medidas a los usuarios. En esta tarea, debe especificar las propiedades de
formato para las medidas de moneda y porcentaje del cubo Tutorial de Analysis Services.
1. Pase a la ficha Estructura de cubo del Diseñador de cubos para el cubo Tutorial de
Analysis Services, expanda el grupo de medida Internet Sales del panel Medidas, haga
clic con el botón secundario en Order Quantity y haga clic en Propiedades.
2. En la ventana Propiedades, haga clic en Ocultar automáticamente para fijar la ventana
Propiedades y dejarla abierta.
Es más fácil cambiar las propiedades para varios elementos del cubo cuando la
ventana Propiedades permanece abierta.
5. Seleccione una de las medidas siguientes. Para seleccionar varias medidas, haga clic
en cada una de ellas mientras mantiene presionada la tecla CTRL:
o Unit Price
o Extended Amount
o Discount Amount
o Product Standard Cost
o Total Product Cost
o Sales Amount
o Tax Amt
o Freight
6. En la ventana Propiedades, en la lista FormatString, seleccione Currency.
7. En la lista desplegable de la parte superior de la ventana Propiedades, seleccione la
medida Unit Price Discount Pct y, a continuación, seleccione Porcentaje en la lista
FormatString.
8. En la ventana Propiedades, cambie la propiedad Name de la medida Unit Price
Discount Pct por Unit Price Discount Percentage.
9. En el panel Medidas, haga clic en Tax Amt y cambie el nombre de esta medida a Tax
Amount.
10. En la ventana Propiedades, haga clic en Ocultar automáticamente para ocultar la
ventana Propiedades y, a continuación, haga clic en Mostrar el árbol de medidas en la
barra de herramientas de la ficha Estructura de cubo.
11. En el menú Archivo, haga clic en Guardar todo.
Existen varios métodos para hacer que las dimensiones de un cubo sean más fáciles de usar y
tengan más funciones. En las tareas de este tema, debe modificar la dimensión Customer.
Página 14 de 154
Sql server 2008 - Analisis Services
Use la ficha Estructura de dimensión del Diseñador de dimensiones para cambiar los nombres
de los atributos.
Puede crear una nueva jerarquía si arrastra un atributo desde el panel Atributos hasta el panel
Jerarquías.
Puede agregar un cálculo con nombre, que es una expresión SQL representada como columna
calculada en una tabla de la vista de origen de datos. Aparece la expresión y se comporta
como columna en la tabla. Los cálculos con nombre permiten ampliar el esquema relacional de
las tablas existentes de la vista del origen de datos sin modificar la tabla en el origen de datos
subyacente. Para obtener más información, vea Definir cálculos con nombre en una vista de
origen de datos (Analysis Services)
1. Abra la vista del origen de datos Adventure Works DW; para ello, haga doble clic en
ella en la carpeta Vistas de origen de datos del Explorador de soluciones.
2. En el panel Tablas, haga clic con el botón secundario en Customer y luego en Nuevo
cálculo con nombre.
Página 15 de 154
Sql server 2008 - Analisis Services
Copiar
CASE
WHEN MiddleName IS NULL THEN
FirstName + ' ' + LastName
ELSE
FirstName + ' ' + MiddleName + ' ' + LastName
END
Una vez que ha creado un cálculo con nombre en la vista del origen de datos, puede utilizar
dicho cálculo como propiedad de un atributo.
Página 16 de 154
Sql server 2008 - Analisis Services
Puede utilizar carpetas para mostrar para agrupar jerarquías de usuario y de atributo en
estructuras de carpeta con el fin de facilitar el uso de dichas estructuras.
Página 17 de 154
Sql server 2008 - Analisis Services
Si los datos subyacentes lo permiten, debería definir relaciones de atributo entre atributos. La
definición de relaciones de atributo acelera el procesamiento de las dimensiones, las
particiones y las consultas. Para obtener más información, vea Definir una relación de atributo y
Relaciones de atributo.
El tipo de relación es Rígida porque las relaciones entre los miembros no cambiarán
con el tiempo. Por ejemplo, es poco habitual que una ciudad pase a formar parte de
otro estado o provincia.
Página 18 de 154
Sql server 2008 - Analisis Services
Una vez que ha cambiado los atributos y las jerarquías, debe implementar los cambios y
procesar de nuevo los objetos relacionados antes de ver los cambios.
Para implementar los cambios, procesar los objetos y ver los cambios
4. Cambie al Diseñador de cubos para el cubo Tutorial de Analysis Services. Para ello,
haga doble clic en el cubo Tutorial de Analysis Services en el nodo Cubos del
Explorador de soluciones.
5. Haga clic en la ficha Explorador y haga clic en el icono para volver a conectar en la
barra de herramientas del diseñador.
6. En el panel Grupo de medida, expanda Customer.
Observe que, en lugar de una lista larga de atributos, bajo Customer sólo aparecen las
carpetas para mostrar y los atributos que no tienen valores de carpeta para mostrar.
En las tareas de este tema, usará un cálculo con nombre para proporcionar nombres más
descriptivos a las líneas de producto, definir una jerarquía en la dimensión Product y especificar
el nombre de miembro (Todos) para dicha jerarquía. También agrupará los atributos en
carpetas para mostrar.
Puede agregar un cálculo con nombre a una tabla de una vista del origen de datos. En la tarea
siguiente, creará un cálculo con nombre que mostrará el nombre completo de la línea de
producto.
Página 19 de 154
Sql server 2008 - Analisis Services
1. Abra la vista del origen de datos Adventure Works DW; para ello, haga doble clic en
ella en la carpeta Vistas del origen de datos del Explorador de soluciones.
2. En el panel de diagramas, haga clic con el botón secundario en la tabla Product y luego
haga clic en Nuevo cálculo con nombre.
3. En el cuadro de diálogo Crear cálculo con nombre, escriba ProductLineName en el
cuadro Nombre de columna.
4. En el cuadro Expresión, escriba la siguiente instrucción CASE:
Copiar
CASE ProductLine
WHEN 'M' THEN 'Mountain'
WHEN 'R' THEN 'Road'
WHEN 'S' THEN 'Accessory'
WHEN 'T' THEN 'Touring'
ELSE 'Components'
END
Esta instrucción CASE crea nombres descriptivos para cada línea de producto del
cubo.
Página 20 de 154
Sql server 2008 - Analisis Services
Página 21 de 154
Sql server 2008 - Analisis Services
Si los datos subyacentes lo permiten, debería definir relaciones de atributo entre atributos. La
definición de relaciones de atributo acelera el procesamiento de las dimensiones, las
particiones y las consultas. Para obtener más información, vea Definir una relación de atributo y
Relaciones de atributo.
En la lista Tipo de relación, deje establecido el tipo de relación en Flexible, ya que las
relaciones entre los miembros pueden cambiar con el tiempo. Por ejemplo, un modelo
de producto podría moverse a otra línea de producto.
Observe que el nombre del miembro Todos aparece como All Products. Esto es debido
a que cambió la propiedad AllMemberName de la jerarquía por All Products
anteriormente en esta lección. Además, los miembros del nivel Product Line ahora
tienen nombres descriptivos, en lugar de abreviaturas de una sola letra.
Página 22 de 154
Sql server 2008 - Analisis Services
En las tareas de este tema, debe crear una jerarquía definida por el usuario y cambiar los
nombres de miembro que se muestran para los atributos Date, Month, Calendar Quarter y
Calendar Semester. También definirá claves compuestas para los atributos, controlará el
criterio de ordenación de los miembros de dimensión y definirá las relaciones de atributo.
Puede agregar un cálculo con nombre, que es una expresión SQL representada como columna
calculada, a una tabla de la vista del origen de datos. La expresión aparece como una columna
en la tabla y se comporta como tal. Los cálculos con nombre permiten ampliar el esquema
relacional de las tablas existentes de la vista del origen de datos sin modificar la tabla en el
origen de datos subyacente. Para obtener más información, vea Definir cálculos con nombre en
una vista de origen de datos (Analysis Services)
1. Abra la vista del origen de datos Adventure Works DW; para ello, haga doble clic en
ella en la carpeta Vistas del origen de datos en el Explorador de soluciones.
2. En el panel Tablas, haga clic con el botón secundario del mouse en Date y, a
continuación, haga clic en Nuevo cálculo con nombre.
3. En el cuadro de diálogo Crear cálculo con nombre, escriba SimpleDate en el cuadro
Nombre de columna y, a continuación, escriba la siguiente instrucción DATENAME en
el cuadro Expresión:
Copiar
Una vez que ha creado un cálculo con nombre en la vista del origen de datos, puede utilizar
dicho cálculo como propiedad de un atributo.
Página 23 de 154
Sql server 2008 - Analisis Services
Puede crear una nueva jerarquía arrastrando un atributo desde el panel Atributos al panel
Jerarquías.
Si los datos subyacentes lo permiten, debería definir relaciones de atributo entre atributos. La
definición de relaciones de atributo acelera el procesamiento de las dimensiones, las
particiones y las consultas.
Página 24 de 154
Sql server 2008 - Analisis Services
El tipo de relación es Rígida porque las relaciones entre los miembros no cambiarán
con el tiempo.
En esta tarea, creará columnas con nombres descriptivos que usarán los atributos
EnglishMonthName, CalendarQuarter y CalendarSemester.
1. Cambie a la vista del origen de datos Adventure Works DW; para ello, haga doble clic
en ella en la carpeta Vistas del origen de datos en el Explorador de soluciones.
2. En el panel Tablas, haga clic con el botón secundario del mouse en Date y, a
continuación, haga clic en Nuevo cálculo con nombre.
3. En el cuadro de diálogo Crear cálculo con nombre, escriba MonthName en el cuadro
Nombre de columna y, a continuación, escriba la siguiente instrucción en el cuadro
Expresión:
Copiar
Esta instrucción concatena el mes y el año de cada mes de la tabla una nueva
columna.
Copiar
Este script SQL concatena el trimestre natural y el año de cada trimestre de la tabla en
una nueva columna.
Página 25 de 154
Sql server 2008 - Analisis Services
8. En el panel Tablas, haga clic con el botón secundario del mouse en Date y, a
continuación, haga clic en Nuevo cálculo con nombre.
9. En el cuadro de diálogo Crear cálculo con nombre, escriba CalendarSemesterDesc en
el cuadro Nombre de columna y, a continuación, escriba el script SQL siguiente en el
cuadro Expresión:
Copiar
CASE
WHEN CalendarSemester = 1 THEN 'H1' + ' ' + 'CY' + ' '
+ CONVERT(CHAR(4), CalendarYear)
ELSE
'H2' + ' ' + 'CY' + ' ' + CONVERT(CHAR(4), CalendarYear)
END
Este script SQL concatena el semestre natural y el año de cada semestre de la tabla en
una nueva columna.
Página 26 de 154
Sql server 2008 - Analisis Services
5. Para establecer la propiedad NameColumn del atributo Calendar Quarter, haga clic en
el campo NameColumn en la ventana de propiedades y, a continuación, haga clic en el
botón Examinar (...).
6. En el cuadro de diálogo Columna de nombre, en la lista Columna de origen, seleccione
CalendarQuarterDesc y a continuación, haga clic en Aceptar.
7. En el menú Archivo, haga clic en Guardar todo.
Una vez que ha cambiado los atributos y las jerarquías, debe implementar los cambios y
procesar de nuevo los objetos relacionados antes de ver los cambios.
Observe que los nombres de los miembros de la jerarquía de atributo Calendar Quarter
son más descriptivos porque se ha creado un cálculo con nombre que se usa como
nombre. Ahora existen miembros en la jerarquía de atributo Calendar Quarter para
cada trimestre de cada año. Dichos miembros no están ordenados cronológicamente.
En lugar de ello, están ordenados por trimestre y luego por año. En la siguiente tarea
de este tema, modificará este comportamiento para ordenar los miembros de la
jerarquía de este atributo por año y luego por trimestre.
4. Revise los miembros de las jerarquías de los atributos English Month Name y Calendar
Semester.
Página 27 de 154
Sql server 2008 - Analisis Services
En esta tarea, modificará el criterio de ordenación cambiando el orden de las claves que forman
la clave compuesta.
3. En la ventana Propiedades, haga clic en el botón de puntos suspensivos (...) del valor
de la propiedad KeyColumns.
4. En la lista Columnas de clave del cuadro de diálogo Columnas de clave, compruebe
que CalendarSemester está seleccionado, y, a continuación, haga clic en la flecha
abajo para invertir el orden de los miembros de esta clave compuesta. Haga clic en
Aceptar.
Los miembros de la jerarquía de atributo ahora aparecen ordenados primero por año y
luego por semestre.
Los miembros de la jerarquía de atributo ahora aparecen ordenados primero por año y
luego por trimestre.
Los miembros de la jerarquía de atributo ahora aparecen ordenados primero por año y
luego por mes.
Página 28 de 154
Sql server 2008 - Analisis Services
Observe que los miembros de estas jerarquías ahora están clasificados por orden
cronológico, por año y luego por trimestre o semestre, respectivamente.
En el panel izquierdo del diseñador se muestran los metadatos del cubo Tutorial de
Analysis Services. Observe que las opciones Perspectiva e Idioma están disponibles
en la barra de herramientas de la ficha Explorador. Observe también que la ficha
Explorador incluye dos paneles a la derecha del panel de metadatos: el superior es el
panel de filtros y el inferior es el panel de datos.
Página 29 de 154
Sql server 2008 - Analisis Services
Página 30 de 154
Sql server 2008 - Analisis Services
5. Arrastre la jerarquía de usuario Product Model Lines al área Coloque campos de columna
aquí del panel de datos y expanda el miembro Road del nivel Product Line de esta
jerarquía de usuario.
Observe que la jerarquía de usuario proporciona una ruta al nivel de nombre del producto.
De este modo, se muestran las ventas realizadas por Internet por región y por línea de
productos en el mes de febrero de 2002, como se muestra en la imagen siguiente.
Página 31 de 154
Sql server 2008 - Analisis Services
Commute Distance aparece en el panel de filtros, encima del panel de datos. Los valores
mostrados en el panel de datos se filtrarán para mostrar los datos de los clientes que viajan
más de 16 kilómetros. Esto es efectivamente igual a la cláusula WHERE de una instrucción
de consulta de expresiones multidimensionales (MDX). Para obtener más información, vea
Aspectos básicos de las consultas MDX (MDX).
Página 32 de 154
Sql server 2008 - Analisis Services
Ahora que ha definido una vista del origen de datos en un proyecto de Microsoft Analysis Services,
está preparado para definir el cubo inicial de Analysis Services.
Puede definir un cubo y sus dimensiones en un solo paso mediante el Asistente para cubos.
También puede definir una o más dimensiones y usar el Asistente para cubos con objeto de definir
un cubo que use dichas dimensiones. Si está diseñando una solución compleja, generalmente
empezará definiendo las dimensiones. Para obtener más información, vea Diseñar dimensiones o
Diseñar los cubos.
Nota
Para disponer de un proyecto completado de la lección 1, descargue e instale los ejemplos. Para
obtener más información, vea Consideraciones para instalar ejemplos y bases de datos de ejemplo
de SQL Server.
En esta tarea, debe usar el Asistente para dimensiones con objeto de definir una
dimensión.
Definir un cubo
En esta tarea, debe usar el Asistente para cubos con objeto de definir un cubo de Analysis
Services inicial.
En esta tarea, debe revisar la estructura del cubo que definió utilizando el Asistente para
cubos.
Examinar el cubo
En esta tarea, debe examinar el cubo y los datos de dimensión utilizando los exploradores
del Diseñador de cubos y del Diseñador de dimensiones.
Página 33 de 154
Sql server 2008 - Analisis Services
En la tarea siguiente, usará el Asistente para dimensiones con objeto de generar una dimensión
Date.
Nota
Para realizar esta lección es necesario haber completado todos los procedimientos de la lección 1 o
haber abierto el proyecto finalizado para dicha lección disponible al descargar e instalar los
ejemplos actualizados. Para obtener más información, vea Obtener ejemplos actualizados en
Consideraciones para instalar ejemplos y bases de datos de ejemplo de SQL Server. Una vez
instalado, la ubicación predeterminada para este archivo de proyecto es C:\Archivos de programa\
Microsoft SQL Server\100\Samples\Analysis Services\Tutorials\Lesson 1 Complete.
Página 34 de 154
Sql server 2008 - Analisis Services
Definir un cubo
El Asistente para cubos le ayuda a definir los grupos de medida y las dimensiones de un cubo. En
la tarea siguiente, usará el Asistente para cubos para generar un cubo.
El asistente examinará las tablas y sugerirá InternetSales como tabla de grupos de medida.
Las tablas de grupos de medida, también denominadas tablas de hechos, contienen las
medidas que son de su interés, como el número de unidades vendidas.
Página 35 de 154
Sql server 2008 - Analisis Services
14. En la barra de herramientas del Diseñador de cubos, cambie el nivel de Zoom al 50 por
ciento de modo que pueda ver mejor las tablas de dimensiones y de hechos del cubo.
Observe que la tabla de hechos es amarilla y las tablas de dimensiones son azules.
15. En el menú Archivo, haga clic en Guardar todo.
En las tareas siguientes, usará el Diseñador de dimensiones para agregar atributos a las
dimensiones Customer y Product.
1. Abra el Diseñador de dimensiones para la dimensión Customer. Para ello, haga doble clic
en la dimensión Customer del nodo Dimensiones del Explorador de soluciones.
2. En el panel Atributos, observe los atributos Customer Key y Geography Key creados
mediante el Asistente para cubos.
3. En la barra de herramientas de la ficha Estructura de dimensión, utilice el icono Zoom para
ver las tablas del panel Vista de origen de datos al 100 por cien.
4. Arrastre las columnas siguientes de la tabla Customer del panel Vista de origen de datos al
panel Atributos:
o BirthDate
o MaritalStatus
o Gender
o EmailAddress
o YearlyIncome
o TotalChildren
o NumberChildrenAtHome
o EnglishEducation
o EnglishOccupation
o HouseOwnerFlag
o NumberCarsOwned
o Phone
o DateFirstPurchase
o CommuteDistance
5. Arrastre las columnas siguientes de la tabla Geography del panel Vista de origen de datos
al panel Atributos:
o City
o StateProvinceName
o EnglishCountryRegionName
o PostalCode
6. En el menú Archivo, haga clic en Guardar todo.
Página 36 de 154
Sql server 2008 - Analisis Services
Después de definir un cubo, se pueden revisar los resultados mediante el Diseñador de cubos. En
la tarea siguiente, revisará la estructura del cubo del proyecto Tutorial de Analysis Services.
1. Para abrir el Diseñador de cubos, haga doble clic en el cubo Tutorial de Analysis Services
en el nodo Cubos del Explorador de soluciones.
2. En el panel Medidas de la ficha Estructura de cubo del Diseñador de cubos, expanda el
grupo de medida Internet Sales para ver las medidas definidas.
Si desea cambiar el orden de dichas medidas, arrástrelas para obtener el orden que desee.
El orden afectará al modo en que determinadas aplicaciones ordenarán las medidas. El
grupo de medida y cada una de sus medidas tienen propiedades que pueden modificarse
en la ventana Propiedades.
3. En el panel Dimensiones de la ficha Estructura de cubo del Diseñador de cubos, revise las
dimensiones de cubo que se encuentran en el cubo Tutorial de Analysis Services.
Página 37 de 154
Sql server 2008 - Analisis Services
Observe que, si bien sólo se crearon tres dimensiones en el nivel de base de datos, como
se muestra en el Explorador de soluciones, hay cinco dimensiones de cubo en el cubo
Tutorial de Analysis Services. El cubo contiene más dimensiones que la base de datos
porque la dimensión de base de datos Date se utiliza como base para tres dimensiones de
cubo independientes relacionadas con fechas, basadas en los hechos relacionados con
fechas de la tabla de hechos. Estas dimensiones relacionadas con fechas también se
denominan dimensiones realizadoras de funciones. Las tres dimensiones del cubo
relacionadas con fechas permiten a los usuarios dimensionar el cubo en tres hechos
independientes relativos a la venta de cada producto: la fecha de pedido del producto, la
fecha de vencimiento del cumplimiento del pedido y la fecha de entrega del pedido. Si se
reutiliza una única dimensión de base de datos para las dimensiones de cubo, Analysis
Services simplifica la administración de las dimensiones, utiliza menos espacio en el disco
y reduce el tiempo general de procesamiento.
5. Para cambiar al Diseñador de cubos, haga clic con el botón secundario en el cubo Tutorial
de Analysis Services del nodo Cubos en el Explorador de soluciones y, a continuación,
haga clic en Diseñador de vistas.
6. En el Diseñador de cubos, haga clic en la ficha Uso de dimensiones.
En esta vista del cubo Tutorial de Analysis Services, puede ver las dimensiones de cubo
que se utilizan en el grupo de medida Internet Sales. Asimismo, puede definir el tipo de
relación entre cada dimensión y cada grupo de medida en el que se utiliza.
El Diseñador de cubos definió una única partición para el cubo, utilizando el modo de
almacenamiento de procesamiento analítico en línea multidimensional (MOLAP) sin
agregaciones. Con MOLAP, todos los datos de nivel hoja y todas las agregaciones se
almacenan en el cubo para maximizar el rendimiento. Las agregaciones son resúmenes de
datos precalculados que mejoran el tiempo de respuesta de las consultas ya que tienen las
respuestas preparadas antes de que se planteen las preguntas. Puede definir particiones
adicionales, parámetros de almacenamiento y parámetros de reescritura en la ficha
Particiones. Para obtener más información, vea Particiones (Analysis Services - Datos
multidimensionales), Agregaciones y diseños de agregaciones, Diseñar el almacenamiento
y las agregaciones de una partición.
Página 38 de 154
Sql server 2008 - Analisis Services
objetos definidos en una instancia de Analysis Services y rellenar los objetos con datos de
los orígenes de datos subyacentes.
El código XML del cubo Tutorial de Analysis Services se muestra en la ficha Tutorial.cube
[XML] de Analysis Services. Es el código real que se utiliza para crear el cubo en una
instancia de Analysis Services durante la implementación. Para obtener más información,
vea: Cómo ver el XML de un proyecto de Analysis Services
Para ver los datos de dimensión y de cubo de los objetos del cubo Tutorial de Analysis Services del
proyecto Tutorial de Analysis Services, debe implementar el proyecto en una instancia determinada
de Analysis Services y luego procesar el cubo y sus dimensiones. Al implementar un proyecto de
Analysis Services se crean y definen objetos en una instancia de Analysis Services. Cuando se
procesan los objetos en una instancia de Analysis Services, se copian los datos de los orígenes de
datos subyacentes en los objetos del cubo. Para obtener más información, vea Implementar
proyectos de Analysis Services y Configurar las propiedades de un proyecto de Analysis Services.
En la tarea siguiente, revisará las propiedades de implementación del proyecto Analysis Services
Tutorial y luego implementará el proyecto en la instancia local de Analysis Services.
Página 39 de 154
Sql server 2008 - Analisis Services
Nota
Si desea implementar el proyecto en una instancia con nombre de Analysis Services del
equipo local o en una instancia de un servidor remoto, cambie la propiedad Servidor por el
nombre de instancia apropiado, como <nombreDeServidor>\<nombreDeInstancia>.
Examinar el cubo
Una vez que se ha implementado un cubo, los datos de éste pueden verse en la ficha Explorador
del Diseñador de cubos y los datos de dimensión pueden verse en la ficha Explorador del
Diseñador de dimensiones.
Página 40 de 154
Sql server 2008 - Analisis Services
2. Haga clic en la ficha Explorador para mostrar el miembro All de la jerarquía de atributo
Product Key. En la lección tres, definirá una jerarquía de usuario para la dimensión Product
que le permitirá examinar la dimensión.
3. Cambie a Diseñador de cubos en Business Intelligence Development Studio. Para ello,
haga doble clic en el cubo Tutorial de Analysis Services en el nodo Cubos del Explorador
de soluciones.
4. Seleccione la ficha Explorador y haga clic en el icono para volver a conectar en la barra de
herramientas del diseñador.
En el panel izquierdo del diseñador se muestran los objetos del cubo Tutorial de Analysis
Services. En el lado derecho de la ficha Explorador hay dos paneles: el superior es el panel
Filtro y el inferior es el panel Datos. En una próxima lección, utilizará el explorador de cubo
para realizar el análisis.
Página 41 de 154
Sql server 2008 - Analisis Services
En esta lección, aprenderá a utilizar algunas de las propiedades avanzadas de atributos, jerarquías
de atributos y propiedades de dimensiones.
Nota
Esta lección se basa en una versión mejorada del proyecto Tutorial de Analysis Services que
completó en las tres primeras lecciones de este tutorial. En la primera tarea de esta lección se
describe dónde buscar el proyecto de ejemplo adecuado que debe utilizar para la lección, así como
la diferencia existente entre este proyecto y el proyecto que ha creado en las tres primeras
lecciones.
En esta tarea, debe abrir, revisar e implementar una versión modificada del proyecto
Tutorial de Analysis Services, que tiene varios grupos de medida y dimensiones
adicionales.
En esta tarea, debe definir los nombres de nivel de una dimensión primario-secundario y
especificar si se mostrarán los datos relacionados con los miembros primarios. Para
obtener más información, vea Definir una jerarquía de elementos primarios y secundarios y
Trabajar con atributos en jerarquías de elementos primarios y secundarios.
Especificar relaciones de atributo entre los atributos de una jerarquía definida por el usuario
En esta tarea, se muestra cómo definir las propiedades de miembro de los atributos para
especificar relaciones de agregación entre ellos. Para obtener más información, vea Definir
una relación de atributo y Propiedades de jerarquía de usuario.
Página 42 de 154
Sql server 2008 - Analisis Services
Las lecciones restantes de este tutorial se basan en una versión mejorada del proyecto Tutorial de
Analysis Services que completó en las tres primeras lecciones. Se han agregado tablas y cálculos
con nombre adicionales a la vista del origen de datos Adventure Works DW; se han agregado más
dimensiones al proyecto y estas dimensiones se han agregado al cubo Tutorial de Analysis
Services. Además, se ha agregado un segundo grupo de medidas, que contiene medidas de una
segunda tabla de hechos. Este proyecto mejorado le permitirá continuar aprendiendo a agregar
funciones adicionales a la aplicación de Business Intelligence sin necesidad de tener que repetir las
técnicas ya aprendidas.
Antes de continuar con el tutorial, debe cargar y procesar la versión mejorada del proyecto Tutorial
de Analysis Services.
Nota
Para obtener la versión actualizada de este proyecto de tutorial mejorado necesario para continuar
con este tutorial, debe descargar los ejemplos. Para obtener más información, vea Consideraciones
para instalar ejemplos y bases de datos de ejemplo de SQL Server.
Cargar y procesar el proyecto mejorado
La versión mejorada del proyecto es distinta de la versión del proyecto Tutorial de Analysis
Services que completó en las tres primeras lecciones. Las diferencias se describen en las
siguientes secciones: Revise esta información antes de continuar con las lecciones restantes del
tutorial.
La vista del origen de datos del proyecto mejorado contiene una tabla de hechos adicional y cuatro
tablas de dimensiones adicionales de la base de datos AdventureWorksDW2008.
Observe que, con diez tablas en la vista del origen de datos, el diagrama <Todas las tablas> pasa
a estar demasiado lleno. Esto dificulta la comprensión de las relaciones entre las tablas y la
Página 43 de 154
Sql server 2008 - Analisis Services
localización de tablas específicas. Para resolver este problema, las tablas están organizadas en
dos diagramas lógicos, el diagrama Internet Sales y el diagrama Reseller Sales. Estos diagramas
están organizados cada uno en una única tabla de hechos. Crear diagramas lógicos permite ver y
utilizar un subconjunto específico de tablas de la vista del origen de datos en lugar de ver siempre
todas las tablas y sus relaciones en un único diagrama.
El diagrama Internet Sales contiene las tablas que están relacionadas con la venta directa de
productos de Adventure Works a los clientes a través de Internet. Las tablas del diagrama son las
cuatro tablas de dimensiones y la tabla de hechos que agregó a la vista del origen de datos del
tutorial de Analysis Services de la lección 1. Estas tablas son:
Geography
Customer
Date
Product
InternetSales
El diagrama Reseller Sales contiene las tablas relacionadas con la venta de productos de
Adventure Works realizadas por los distribuidores. Este diagrama contiene las siete tablas de
dimensiones siguientes y una tabla de hechos de la base de datos AdventureWorksDW2008:
Reseller
Promotion
SalesTerritory
Geography
Date
Product
Employee
ResellerSales
Como puede observar, las tablas DimGeography, DimDate y DimProduct se utilizan en el diagrama
Internet Sales y el diagrama Reseller Sales. Las tablas de dimensiones pueden vincularse a varias
tablas de hechos.
El proyecto Tutorial de Analysis Services contiene cinco dimensiones de base de datos nuevas, y
el cubo Tutorial de Analysis Services contiene las mismas cinco dimensiones que las dimensiones
del cubo. Estas dimensiones se han definido de modo que contengan jerarquías de usuario y
atributos que se modificaron mediante cálculos con nombre, claves de miembro de composición y
carpetas para mostrar. Las nuevas dimensiones se describen en la siguiente lista.
Dimensión Reseller
Dimensión Promotion
Página 44 de 154
Sql server 2008 - Analisis Services
Dimensión Employee
Dimensión Geography
El cubo Tutorial de Analysis Services ahora contiene dos grupos de medida, el grupo de medida
original basado en la tabla InternetSales y un segundo grupo de medida basado en la tabla
ResellerSales en la vista del origen de datos Adventure Works DW.
Una jerarquía de elementos primarios y secundarios es una jerarquía de una dimensión que está
basada en dos columnas de tabla. La combinación de estas columnas define las relaciones
jerárquicas entre los miembros de la dimensión. La primera columna, denominada columna de
clave de miembro, identifica a cada miembro de la dimensión. La otra columna, denominada
columna primaria, identifica el elemento primario de cada miembro de la dimensión. La propiedad
NamingTemplate de un atributo primario determina el nombre de cada nivel en la jerarquía de
elementos primarios y secundarios, y la propiedad MembersWithData determina si deben
mostrarse los datos de los miembros primarios.
Para obtener más información, vea Definir una jerarquía de elementos primarios y secundarios y
Trabajar con atributos en jerarquías de elementos primarios y secundarios.
Nota
Cuando se utiliza el Asistente para dimensiones con objeto de crear una dimensión, el asistente
reconoce las tablas que incluyen relaciones de elementos primarios y secundarios, y define
automáticamente la jerarquía de elementos primarios y secundarios.
En las tareas de este tema, creará una plantilla de asignación de nombres que define el nombre
para cada nivel en la jerarquía de elementos primarios y secundarios de la dimensión Employee. A
continuación, configurará el atributo primario para ocultar todos los datos primarios, de modo que
sólo se muestren las ventas de los miembros del nivel de hoja.
Página 45 de 154
Sql server 2008 - Analisis Services
Observe que el nombre de nivel para este miembro es Level 02. (El nombre de nivel
aparece después de Nivel actual:, justo encima del miembro All Employees.) En esta tarea,
definirá nombres más descriptivos para cada nivel.
4. Expanda Ken J. Sánchez para ver los nombres de los empleados que informan a este
director y, a continuación, seleccione Brian S. Welcker para ver el nombre de este nivel.
Todos los miembros de la jerarquía Employees se agregan al panel Datos en una vista
contraída.
Página 46 de 154
Sql server 2008 - Analisis Services
Observe que las ventas realizadas por cada director del nivel 04 también se muestran en el
nivel 05. Esto es así porque cada director también es un empleado de otro director. En la
tarea siguiente, ocultará estos importes de ventas.
Observe el icono único de este atributo. Este icono significa que el atributo es la clave
principal de una jerarquía de elementos primarios y secundarios. Observe también que, en
la ventana Propiedades, la propiedad Usage del atributo está definida como primaria. Esta
propiedad se estableció con el Asistente para dimensiones cuando se diseñó la dimensión.
El asistente detectó automáticamente la relación de elementos primarios y secundarios.
Página 47 de 154
Sql server 2008 - Analisis Services
Observe que, bajo Resultado, cada nivel ahora se denominará "Employee Level" seguido
por un número que aumenta de forma secuencial.
Página 48 de 154
Sql server 2008 - Analisis Services
De este modo se ocultarán los datos relacionados con los miembros de la jerarquía de
elementos primarios y secundarios que no son de hoja.
Observe que los nombres de nivel ahora son más descriptivos y que los valores de las
ventas para cada director ya no se muestran. No obstante, observe también que el total
para cada nivel muestra el total para cada empleado, incluido el importe oculto del director.
En la lección 10 aprenderá a habilitar los totales visuales de modo que el total para
Employee Level 05 refleje únicamente los valores que en realidad puede ver el usuario.
Página 49 de 154
Sql server 2008 - Analisis Services
EqualAreas
Analysis Services crea intervalos de grupos de modo que la población total de los
miembros de la dimensión quede distribuida de forma homogénea en los grupos.
Clusters
Una vez que haya especificado un método de agrupación, debe especificar el número de grupos
mediante la propiedad DiscretizationBucketCount. Para obtener más información, vea Agrupar
miembros de atributo (Discretización).
En las tareas de este tema, habilitará distintos tipos de agrupaciones para lo siguiente: valores de
los ingresos anuales en la dimensión Customer, número de horas de baja por enfermedad del
empleado en la dimensión Employees, y número de horas de vacaciones del empleado en la
dimensión Employees. A continuación procesará y examinará el cubo Tutorial de Analysis Services
para ver el efecto de los grupos de miembro. Por último, modificará las propiedades del grupo de
miembro para ver el efecto del cambio en el tipo de agrupación.
Página 50 de 154
Sql server 2008 - Analisis Services
Página 51 de 154
Sql server 2008 - Analisis Services
Los miembros de la jerarquía de atributo Yearly Income ahora están agrupados en seis
depósitos, incluyendo un depósito para las ventas a los clientes cuyos ingresos anuales se
desconocen. No se muestran todos los depósitos.
7. Elimine la jerarquía de atributo Yearly Income del área de columnas y quite la medida
Internet Sales-Sales Amount del panel Datos.
8. Agregue la medida Reseller Sales-Sales Amount al área de datos.
9. En el panel de metadatos, expanda la dimensión Employee, expanda Organization, haga
clic con el botón secundario en Sick Leave Hours y, a continuación, seleccione Agregar a
área de datos.
Observe que todas las ventas las realizan los empleados de uno de los dos grupos. (Si
desea ver los tres grupos que no tienen ventas, haga clic con el botón secundario en el
área de datos y, a continuación, haga clic en Mostrar celdas vacías.) Observe también que
Página 52 de 154
Sql server 2008 - Analisis Services
los empleados que tienen de 32 a 42 horas de baja por enfermedad han realizado más
ventas que los que tienen de 20 a 31 horas de baja por enfermedad.
En la imagen siguiente se muestran las ventas dimensionadas por horas de baja por
enfermedad de los empleados.
10. Elimine la jerarquía de atributo Sick Leave Hours del área de columnas del panel Datos.
11. Agregue Vacation Hours al área de columnas del panel Datos.
Observe que aparecen dos grupos, basados en el método de agrupación por áreas iguales
(EqualAreas). Hay otros tres grupos ocultos porque no contienen valores de datos.
Observe que ahora hay tres grupos de miembros del atributo Vacation Hours que tienen
valores de ventas para los productos. Los otros siete grupos contienen miembros sin datos
de ventas.
Página 53 de 154
Sql server 2008 - Analisis Services
De forma predeterminada, se crea una jerarquía de atributo para cada uno de los atributos de una
dimensión, y cada jerarquía está disponible para los datos de hechos de dimensionamiento. Esta
jerarquía consta de un nivel "Todos" y un nivel de detalle que contiene todos los miembros de la
jerarquía. Como ha aprendido, puede organizar los atributos en jerarquías definidas por el usuario
para proporcionar rutas de exploración en un cubo. En determinadas circunstancias, le interesará
deshabilitar u ocultar algunos atributos y sus jerarquías. Por ejemplo, determinados atributos, como
los números de seguridad social o números de identificación nacional, sueldos, las fechas de
nacimiento e información sobre el inicio de sesión, no son atributos que los usuarios vayan a
utilizar para dimensionar la información del cubo. En lugar de ello, generalmente esta información
sólo se visualiza como detalles de un miembro de atributo en concreto. Puede ocultar estas
jerarquías de atributo, dejando los atributos visibles sólo como propiedades de miembro de un
atributo específico. También puede hacer que los miembros de otros atributos, como los nombres
de cliente o los códigos postales, sólo estén visibles cuando se visualizan a través de una jerarquía
de usuario en lugar de visualizarse de forma independiente a través de una jerarquía de atributo.
Un motivo para hacerlo puede ser el número total de miembros distintos de la jerarquía de atributo.
Por último, para mejorar el rendimiento del procesamiento, debe deshabilitar las jerarquías de
atributos que los usuarios no utilizarán para examinar.
Cuando una jerarquía de atributo está habilitada, puede especificar valores para las tres
propiedades adicionales siguientes:
IsAggregatable
De forma predeterminada se define un nivel (Todos) para todas las jerarquías de atributo.
Para deshabilitar el nivel (Todos) de una jerarquía de atributo habilitada, establezca el valor
de esta propiedad en False.
Nota
Un atributo que tiene su propiedad IsAggregatable establecida en False sólo puede usarse
como la raíz de una jerarquía definida por el usuario y debe tener un miembro
predeterminado especificado (en caso contrario, el motor de Analysis Services elegirá uno).
AttributeHierarchyOrdered
AttributeHierarchyOptimizedState
Página 54 de 154
Sql server 2008 - Analisis Services
En las tareas de este tema, inhabilitará los números de seguridad social y otros atributos en la
dimensión Employee que no se utilizarán para examinar. Luego ocultará las jerarquías de atributo
de nombre de cliente y código postal en la dimensión Customer. Debido al elevado número de
miembros de atributo de estas jerarquías, examinarlas será un proceso muy lento,
independientemente de la jerarquía de usuario que utilice.
Observe que, en el panel Atributos, el icono de cada atributo ha cambiado para indicar que
el atributo no está habilitado.
Página 55 de 154
Sql server 2008 - Analisis Services
Observe que los miembros de los atributos modificados no están disponibles para
examinar como jerarquías de atributo en la lista Jerarquía. Si intenta agregar una de las
jerarquías de atributo deshabilitadas como nivel en una jerarquía de usuario, recibirá un
error en el que se le notificará que debe habilitar la jerarquía de atributo para que ésta
pueda participar en una jerarquía definida por el usuario.
Página 56 de 154
Sql server 2008 - Analisis Services
Puesto que los miembros de estas jerarquías de atributo se utilizarán para dimensionar
datos de hechos, si ordena y optimiza dichos miembros, mejorará el rendimiento. Por
consiguiente, las propiedades de estos atributos no deben cambiarse.
Página 57 de 154
Sql server 2008 - Analisis Services
5. Arrastre el atributo Postal Code del panel Atributos a la jerarquía de usuario Customer
Geography en el panel Jerarquías y niveles que se encuentra justo en el nivel City.
Observe que el atributo oculto puede seguir convirtiéndose en un nivel de una jerarquía de
usuario.
9. En la lista Jerarquía, seleccione Customer Geography y examine cada nivel del panel del
explorador.
Página 58 de 154
Sql server 2008 - Analisis Services
Observe que los niveles ocultos, Postal Code y Full Name, están visibles en la jerarquía
definida por el usuario.
Las relaciones de atributo definen las relaciones o dependencias que existen entre los atributos. En
una dimensión que se basa en una única tabla relacional, todos los atributos están generalmente
relacionados entre sí a través del atributo de clave. Esto es así porque todos los atributos de una
dimensión proporcionan información sobre los miembros vinculados por el atributo de clave de la
dimensión a los hechos de la tabla de hechos de cada grupo de medida relacionado. En una
dimensión que se basa en varias tablas, los atributos generalmente están vinculados en función de
la clave de combinación entre las tablas.
No obstante, es posible que los usuarios estén interesados en información adicional sobre los
miembros de un nivel determinado de una jerarquía. El Diseñador de dimensiones permite definir
relaciones adicionales entre atributos o cambiar las relaciones predeterminadas para incrementar
el rendimiento. La limitación principal que existe al crear una relación de atributo es asegurarse de
que el atributo al que se hace referencia no tiene más de un valor para ningún miembro del atributo
con el que está relacionado. Cuando se define una relación entre dos atributos, se puede definir la
relación como rígida o flexible, en función de si las relaciones entre los miembros cambiarán con el
tiempo. Por ejemplo, un empleado podría cambiar de región de venta, pero una ciudad nunca
pasará a formar parte de una provincia distinta. Si se define una relación como rígida, las
agregaciones de atributos no se calculan de nuevo cada vez que se procesa la dimensión de forma
incremental. No obstante, si la relación entre los miembros cambia, la dimensión debe procesarse
por completo. Para obtener más información, vea Relaciones de atributo, Definir una relación de
atributo, Configurar propiedades de relación de los atributos y Especificar relaciones de atributo
entre los atributos de una jerarquía definida por el usuario.
En las tareas de este tema, definirá un atributo nuevo en la dimensión Date basado en una
columna existente de la tabla de dimensiones subyacente. Utilizará este atributo nuevo para
ordenar los miembros del mes natural cronológicamente en lugar de ordenarlos alfabéticamente.
También definirá un atributo nuevo en la dimensión Customer en función del cálculo con nombre
que utilizará para ordenar los miembros del atributo Commute Distance. En las tareas del tema
siguiente, aprenderá a utilizar las relaciones de atributo para incrementar el rendimiento de las
consultas.
Página 59 de 154
Sql server 2008 - Analisis Services
Observe que los miembros del atributo Month Name están ordenados por sus valores de
clave.
2. Cambie a la ficha Explorador, compruebe que Calendar Date está seleccionado en la lista
Jerarquía y, a continuación, expanda los niveles de la jerarquía definida por el usuario para
revisar el criterio de ordenación de los meses naturales.
Observe que los miembros de la jerarquía de atributo están ordenados en función de los
valores ASCII de las claves de sus miembros, que son el mes y el año. En este caso, si se
ordena por el nombre o la clave del atributo, los meses naturales no se ordenan
cronológicamente. Para resolver este problema, ordenará los miembros de la jerarquía de
atributo en función de un atributo nuevo, el atributo MonthNumberOfYear. Creará este
atributo tomando como base una columna de la tabla de dimensiones Date.
3. Cambie a la ficha Estructura de dimensión de la dimensión Date, haga clic con el botón
secundario del mouse en MonthNumberOfYear en el panel Vista del origen de datos y, a
continuación, haga clic en Nuevo atributo de la columna.
4. En el panel Atributos, seleccione Month Number Of Year y, a continuación, establezca la
propiedad AttributeHierarchyEnabled en False en la ventana Propiedades, la propiedad
AttributeHierarchyOptimizedState en NotOptimized y la propiedad
AttributeHierarchyOrdered en False.
Nota
Al ordenar alfabéticamente las propiedades de la ventana Propiedades se simplificará esta
tarea ya que las tres propiedades aparecerán una al lado de la otra.
Observe que todos los atributos de la dimensión Date están relacionados directamente con
el atributo Date, que es el miembro de clave que relaciona los miembros de dimensión con
los hechos de los grupos de medida relacionados. No hay ninguna relación definida entre
el atributo Month Name y el atributo Month Number Of Year.
6. En el diagrama, haga clic con el botón secundario en el atributo Month Name y seleccione
Nueva relación de atributo.
7. En el cuadro de diálogo Crear relación de atributo, el Atributo de origen es Month Name.
Establezca el Atributo relacionado en Month Number Of Year.
8. En la lista Tipo de relación, establezca el tipo de relación en Rígida.
Las relaciones entre los miembros del atributo Month Name y del atributo Month Number
Of Year no cambiarán con el tiempo. Como resultado, Analysis Services no quitará las
Página 60 de 154
Sql server 2008 - Analisis Services
Observe que los meses ahora aparecen en orden cronológico, como se muestra en la
imagen siguiente.
Observe que los miembros de la jerarquía de atributo están ordenados en función de los
valores ASCII de la clave de miembro. En este caso, si se ordena por el nombre o la clave
del atributo, las distancias para ir al trabajo no se ordenan de menor a mayor. En esta
tarea, debe ordenar los miembros de la jerarquía de atributo en función del cálculo con
nombre CommuteDistanceSort que atribuye el número de orden apropiado a cada valor
distinto de la columna. Para ahorrar tiempo, este cálculo con nombre ya se ha agregado a
la tabla Customer de la vista del origen de datos Adventure Works DW. Puede cambiar a
esta vista del origen de datos para ver el script SQL que se usa en este cálculo con
nombre. Para obtener más información, vea Definir cálculos con nombre en una vista de
origen de datos (Analysis Services).
Página 61 de 154
Sql server 2008 - Analisis Services
La relación entre los miembros del atributo Commute Distance y del atributo Commute
Distance Sort no cambiará con el tiempo.
Página 62 de 154
Sql server 2008 - Analisis Services
Observe que los miembros de la jerarquía de atributo ahora están clasificados en un orden
lógico en función de una distancia cada vez mayor, como es muestra en la imagen
siguiente.
Especificar relaciones de atributo entre los atributos de una jerarquía definida por el
usuario
Como ya ha visto en este tutorial, es posible organizar jerarquías de atributo en niveles dentro de
jerarquías de usuario para proporcionar rutas de exploración a los usuarios de un cubo. Una
jerarquía de usuario puede representar una jerarquía natural, como una ciudad, un estado o un
país, o simplemente representar una ruta de exploración, como el nombre de un empleado, su
cargo y el nombre de departamento. Para el usuario que explora una jerarquía, estos dos tipos de
jerarquía de usuario son el mismo.
Con una jerarquía natural, si define relaciones de atributo entre los atributos que forman los
niveles, Analysis Services puede utilizar una agregación de un atributo para obtener los resultados
de un atributo relacionado. Si no hay ninguna relación definida entre los atributos, Analysis
Services agregará todos los atributos que no sean de clave del atributo de clave. Por lo tanto, si los
datos subyacentes lo permiten, debería definir relaciones de atributo entre atributos. La definición
de relaciones de atributo mejora el rendimiento del procesamiento de las dimensiones, las
particiones y las consultas. Para obtener más información, vea Definir una relación de atributo y
Relaciones de atributo.
Cuando se definen relaciones de atributo, se puede especificar que la relación sea flexible o rígida.
Si define una relación rígida, Analysis Services retiene las agregaciones cuando se actualiza la
dimensión. Si la relación que se define como rígida cambia, Analysis Services genera un error
durante el proceso, a menos que la dimensión se procese por completo. El rendimiento de la
consulta y del procesamiento aumenta si se especifican las relaciones y las propiedades de
relación apropiadas. Para obtener más información, vea Definir una relación de atributo y
Propiedades de jerarquía de usuario.
En las tareas de este tema, debe definir relaciones de atributo para los atributos de las jerarquías
de usuario naturales del proyecto Tutorial de Analysis Services. Estas jerarquías son la jerarquía
Customer Geography de la dimensión Customer, la jerarquía Sales Territory de la dimensión Sales
Territory, la jerarquía Product Model Lines de la dimensión Product y las jerarquías Fiscal Date y
Calendar Date de la dimensión Date. Todas estas jerarquías de usuario son jerarquías naturales.
Página 63 de 154
Sql server 2008 - Analisis Services
Observe las cuatro relaciones de atributo que vinculan los atributos que no son de clave de
la tabla Geography con el atributo de clave de la tabla Geography. El atributo Geography
está relacionado con el atributo Full Name. El atributo Postal Code está vinculado de forma
indirecta al atributo Full Name a través del atributo Geography, porque el atributo Postal
Code está vinculado al atributo Geography y el atributo Geography está vinculado al
atributo Full Name. A continuación, cambiaremos las relaciones de atributo para que no
usen el atributo Geography.
3. En el diagrama, haga clic con el botón secundario en el atributo Full Name y seleccione
Nueva relación de atributo.
4. En el cuadro de diálogo Crear relación de atributo, el Atributo de origen es Full Name.
Establezca el Atributo relacionado en Postal Code. En la lista Tipo de relación, deje
establecido el tipo de relación en Flexible, ya que las relaciones entre los miembros
pueden cambiar con el tiempo.
5. Haga clic en Aceptar.
11. En el panel Relaciones de atributo, haga clic con el botón secundario en Geography-> City
y, a continuación, haga clic en Eliminar.
12. Cuando aparezca el cuadro de diálogo Eliminar objetos, haga clic en Aceptar.
13. En el diagrama, haga clic con el botón secundario en el atributo City y seleccione Nueva
relación de atributo.
Página 64 de 154
Sql server 2008 - Analisis Services
14. En el cuadro de diálogo Crear relación de atributo, el Atributo de origen es City. Establezca
el Atributo relacionado en State-Province. En la lista Tipo de relación, establezca el tipo de
relación en Rígida, ya que la relación entre una ciudad y un estado no cambiará en el
futuro.
15. Haga clic en Aceptar.
16. Haga clic con el botón secundario en la flecha situada entre Geography y State-Province y,
a continuación, haga clic en Eliminar.
17. Cuando aparezca el cuadro de diálogo Eliminar objetos, haga clic en Aceptar.
18. En el diagrama, haga clic con el botón secundario en el atributo State-Province y
seleccione Nueva relación de atributo.
19. En el cuadro de diálogo Crear relación de atributo, el Atributo de origen es State-Province.
Establezca el Atributo relacionado en Country-Region. En la lista Tipo de relación,
establezca el tipo de relación en Rígida, ya que la relación entre un estado-provincia y un
país-región no cambiará con el tiempo.
20. Haga clic en Aceptar.
21. En el panel Relaciones de atributo, haga clic con el botón secundario en Geography->
Country-Region y, a continuación, haga clic en Eliminar.
22. Cuando aparezca el cuadro de diálogo Eliminar objetos, haga clic en Aceptar.
23. Haga clic en la ficha Estructura de dimensión.
24. En el panel Atributos, haga clic con el botón secundario en el atributo Geography y, a
continuación, haga clic en Eliminar.
25. Cuando aparezca el cuadro de diálogo Eliminar objetos, haga clic en Aceptar.
26. En el menú Archivo, haga clic en Guardar todo.
1. Abra el Diseñador de dimensiones para la dimensión Sales Territory y haga clic en la ficha
Relaciones de atributo.
2. En el diagrama, haga clic con el botón secundario en el atributo Sales Territory Country y,
a continuación, seleccione Nueva relación de atributo.
3. En el cuadro de diálogo Crear relación de atributo, el Atributo de origen es Sales Territory
Country. Establezca el Atributo relacionado en Sales Territory Country. En la lista Tipo de
relación, deje establecido el tipo de relación en Flexible.
4. Haga clic en Aceptar.
Sales Territory Group ahora está vinculado a Sales Territory Country, y Sales Territory
Country está vinculado a Sales Territory Region. La propiedad RelationshipType de cada
una de estas relaciones se establece en Flexible porque las agrupaciones de las regiones
dentro de un país y las agrupaciones de los países en grupos pueden cambiar con el
tiempo.
Página 65 de 154
Sql server 2008 - Analisis Services
1. En el diagrama, haga clic con el botón secundario en el atributo Month Name y seleccione
Nueva relación de atributo.
2. En el cuadro de diálogo Crear relación de atributo, el Atributo de origen es Month Name.
Establezca el Atributo relacionado en Calendar Quarter. En la lista Tipo de relación,
establezca el tipo de relación en Rígida.
3. Haga clic en Aceptar.
4. En el diagrama, haga clic con el botón secundario en el atributo Calendar Quarter y, a
continuación, seleccione Nueva relación de atributo.
5. En el cuadro de diálogo Crear relación de atributo, el Atributo de origen es Calendar
Quarter. Establezca el Atributo relacionado en Calendar Semester. En la lista Tipo de
relación, establezca el tipo de relación en Rígida.
6. Haga clic en Aceptar.
7. En el diagrama, haga clic con el botón secundario en el atributo Calendar Semester y, a
continuación, seleccione Nueva relación de atributo.
Página 66 de 154
Sql server 2008 - Analisis Services
Cuando Analysis Services procesa una dimensión, todos los valores distintos de las columnas
subyacentes de las tablas o las vistas de la vista del origen de datos rellenan los atributos de la
dimensión. Si Analysis Services encuentra una valor NULL durante el procesamiento, de forma
predeterminada, convierte este valor NULL en un cero en las columnas numéricas o en una cadena
vacía en las columnas de cadena. Puede modificar estas opciones predeterminadas o convertir los
valores NULL en el proceso de extracción, transformación y carga (si existe) del almacén de datos
relacional subyacente. También puede hacer que Analysis Services convierta el valor NULL en un
valor determinado configurando tres propiedades: las propiedades UnknownMember y
UnknownMemberName de la dimensión y la propiedad NullProcessing del atributo clave de la
dimensión.
Página 67 de 154
Sql server 2008 - Analisis Services
En las tareas de este tema, agregará los atributos de categoría de producto y subcategoría de
producto en la dimensión Product de las tablas de copo de nieve que agregará a la vista de origen
de datos Adventure Works DW. Luego habilitará la propiedad UnknownMember para la dimensión
Product, especificará Assembly Components como valor de la propiedad UnknownMemberName,
relacionará los atributos de Subcategory y Category con el atributo de nombre del producto y, por
último, definirá el control de errores personalizado para el atributo clave de miembro que vincula las
tablas de copo de nieve.
Nota
Si ha agregado los atributos Subcategory y Category al definir originalmente el cubo del Tutorial de
Analysis Services con el Asistente para cubos, estos pasos deberían haberse ejecutado
automáticamente.
Revisar las propiedades de control de errores y de miembro desconocido en la dimensión Product
De este modo, podrá ver y modificar las propiedades de la dimensión propiamente dicha.
4. Revise las propiedades de configuración de error de clave y clave NULL, pero no realice
ningún cambio.
Página 68 de 154
Sql server 2008 - Analisis Services
5. Haga clic en la ficha Explorador, compruebe que Product Model Lines está seleccionado
en la lista Jerarquía y expanda All Products.
6. Expanda Components y, a continuación, expanda el miembro sin etiqueta del nivel Model
Name.
Este nivel contiene los componentes de ensamblado que se usan al crear otros
componentes, empezando por el producto Adjustable Race, como se muestra en la imagen
siguiente.
Página 69 de 154
Sql server 2008 - Analisis Services
Definir los atributos de tablas de copo de nieve y una jerarquía definida por el usuario Product
Category
Para definir los atributos de tablas de copo de nieve y una jerarquía definida por el
usuario Product Category
1. Abra el diseñador de vistas de origen de datos para la vista de origen de datos Adventure
Works DW, seleccione Reseller Sales en el panel Organizador de diagramas y, a
continuación, haga clic en Agregar o quitar tablas en el menú Vista de origen de datos de
Business Intelligence Development Studio.
2. Se abre el cuadro de diálogo Agregar o quitar tablas.
3. En la lista Objetos incluidos, seleccione dbo.DimProduct y luego haga clic en Agregar
tablas relacionadas.
4. La tabla dbo.DimProductSubcategory se agrega a la lista Objetos incluidos.
5. Con la tabla dbo.DimProductSubcategory seleccionada de forma predeterminada como
tabla que se agrega con más frecuencia, haga clic de nuevo en Agregar tablas
relacionadas.
6. La tabla dbo.DimProductCategory se agrega a la lista Objetos incluidos.
7. Haga clic en Aceptar.
8. En el menú Formato de BI Development Studio, seleccione Diseño automático y haga clic
en Diagrama.
9. Observe que las tablas dbo.DimProductSubcategory y dbo.DimProductCategory están
vinculadas entre sí, y también a la tabla ResellerSales a través de la tabla Product.
10. Cambie al Diseñador de dimensiones para la dimensión Product y haga clic en la ficha
Estructura de dimensión.
11. Haga clic con el botón secundario en el panel Vista de origen de datos y luego haga clic en
Mostrar todas las tablas.
12. En el panel Vista de origen de datos, busque la tabla DimProductCategory, haga clic con el
botón secundario en ProductCategoryKey en dicha tabla y, luego, haga clic en Nuevo
atributo de la columna.
13. En el panel Atributos, cambie el nombre de este nuevo atributo por Category.
14. En la ventana Propiedades, haga clic en el campo de la propiedad NameColumn y, a
continuación, haga clic en el botón Examinar (…) para abrir el cuadro de diálogo Columna
de nombre.
15. Select EnglishProductCategoryName in the Source column list and then click OK.
16. En el panel Vista de origen de datos, busque la tabla DimProductSubcategory, haga clic
con el botón secundario en ProductSubcategoryKey en dicha tabla y, luego, haga clic en
Nuevo atributo de la columna.
17. En el panel Atributos, cambie el nombre de este nuevo atributo por Subcategory.
18. En la ventana Propiedades, haga clic en el campo de la propiedad NameColumn y, a
continuación, haga clic en el botón Examinar (…) para abrir el cuadro de diálogo Columna
de nombre.
19. Seleccione EnglishProductSubcategoryName en la lista Columna de origen y, a
continuación, haga clic en Aceptar.
20. Cree una nueva jerarquía definida por el usuario Product Categories con los siguientes
niveles, en orden descendente: Category, Subcategory y Product Name.
21. Especifique All Products como valor para la propiedad AllMemberName de la jerarquía
definida por el usuario Product Categories.
Página 70 de 154
Sql server 2008 - Analisis Services
Observe que se ha agregado una cláusula WHERE a la cláusula SELECT DISTINCT que
elimina los productos que no tienen ningún valor en la columna ProductSubcategoryKey,
como se muestra en la imagen siguiente.
5. Haga clic en Cerrar tres veces para cerrar todos los cuadros de diálogo de procesamiento.
Página 71 de 154
Sql server 2008 - Analisis Services
Página 72 de 154
Sql server 2008 - Analisis Services
Observe que aparece Assembly Components como nuevo miembro del nivel Category.
Observe que todos los componentes de ensamblado ahora aparecen en el nivel Product
Name, como se muestra en la imagen siguiente.
Página 73 de 154
Sql server 2008 - Analisis Services
5. Seleccione Product Model Lines en la lista Hierarchy, expanda All Products, expanda el
miembro Assembly Components del nivel Product Line y, a continuación, el miembro
Assembly Components del nivel Model Name.
Observe que todos los componentes de ensamblado ahora aparecen en el nivel Product
Name.
Página 74 de 154
Sql server 2008 - Analisis Services
En las lecciones anteriores de este tutorial, ha aprendido que las dimensiones de base de datos
que se agregan a un cubo pueden utilizarse como base para una o más dimensiones de cubo. En
esta lección, aprende a definir distintos tipos de relaciones entre dimensiones de cubo y grupos de
medida, así como a especificar las propiedades de estas relaciones.
Para obtener más información, vea Relaciones de dimensión y Definir relaciones de uso de
dimensiones.
Nota
Para disponer de un proyecto completado de la lección 4, descargue e instale los ejemplos. Para
obtener más información, vea Consideraciones para instalar ejemplos y bases de datos de ejemplo
de SQL Server.
En esta tarea, aprende a vincular una dimensión a una tabla de hechos de forma indirecta
a través de una dimensión que está vinculada de forma directa a través de una relación
clave principal–clave externa. Tema relacionado:Definir relaciones referenciadas y
propiedades de las relaciones referenciadas
En esta tarea, aprende a definir una dimensión basada en datos de la tabla de hechos, y a
definir la relación de la dimensión como una relación de hechos. Tema relacionado: Definir
relaciones de hechos y propiedades de las relaciones de hechos.
En esta tarea, aprende a relacionar un hecho con varios miembros de dirección a través de
la definición de una relación de varios a varios entre tablas de dimensiones y tablas de
hechos. Tema relacionado: Definir una relación de varios a varios y las propiedades de las
relaciones de varios a varios.
Hasta este punto del tutorial, cada dimensión de cubo que definió se basaba en una tabla que
estaba directamente vinculada a la tabla de hechos para un grupo de medida a través de una
relación de clave principal a clave externa. En las tareas de este tema, debe vincular la dimensión
Página 75 de 154
Sql server 2008 - Analisis Services
Observe que la medida Reseller Sales-Sales Amount no aparece bien dimensionada por
los miembros del atributo Country-Region de la jerarquía Regions, como se muestra en la
imagen siguiente.
6. Haga doble clic en la flecha que representa la relación de clave principal y clave externa
entre las tablas Geography y Reseller.
7. Haga clic en Cancelar, cambie al Diseñador de cubos para el cubo Tutorial de Analysis
Services y, a continuación, haga clic en la ficha Uso de dimensiones.
Observe que la dimensión del cubo Geography actualmente no tiene ninguna relación con
el grupo de medida Internet Sales ni con el grupo de medida Reseller Sales.
Página 76 de 154
Sql server 2008 - Analisis Services
8. Haga clic en el botón de puntos suspensivos (…) de la celda Full Name de la intersección
de la dimensión Customer y el grupo de medida Internet Sales.
En el cuadro de diálogo Definir relación, observe que hay una relación Regular definida
entre la tabla de dimensiones DimCustomer y la tabla de grupos de medida
FactInternetSales basada en la columna CustomerKey de cada una de estas tablas. Todas
las demás relaciones que ha definido en este tutorial hasta este punto han sido relaciones
regulares.
En la imagen siguiente se muestra el cuadro de diálogo Definir relación con una relación
regular entre la tabla de dimensiones DimCustomer y la tabla de grupos de medida
FactInternetSales.
En el cuadro de diálogo Definir relación, observe que actualmente no hay ninguna relación
definida entre la dimensión del cubo Geography y el grupo de medida Reseller Sales. No
se puede definir una relación regular porque no existe ninguna relación directa entre la
tabla de dimensiones de la dimensión Geography y la tabla de hechos del grupo de medida
Reseller Sales.
Para definir una relación referenciada, debe especificar una dimensión que esté conectada
directamente con la tabla del grupo de medida, denominada dimensión intermedia, que
Analysis Services pueda utilizar para vincular la dimensión de referencia a la tabla de
Página 77 de 154
Sql server 2008 - Analisis Services
13. En la lista Atributo de dimensión de referencia, seleccione Geography Key y, luego, intente
seleccionar Geography Key en la lista Atributo de dimensión intermedia.
Observe que Geography Key no aparece en la lista Atributo de dimensión intermedia. Esto
es así porque la columna GeographyKey no está definida como atributo en la dimensión
Reseller.
En la imagen siguiente se muestra que Geography Key no está disponible como atributo de
una dimensión intermedia en el cuadro de diálogo Definir relación para la dimensión
intermedia Reseller.
En la tarea siguiente, resolverá este problema definiendo un atributo que se basa en la columna
GeographyKey de la dimensión Reseller.
Página 78 de 154
Sql server 2008 - Analisis Services
Observe que, aunque GeographyKey está definida como columna en la tabla Reseller, no
se ha definido ningún atributo en la dimensión Reseller basado en esta columna.
Geography se ha definido como atributo de dimensión en la dimensión Geography porque
es la columna de clave que vincula la tabla subyacente para dicha dimensión a la tabla de
hechos.
2. Para agregar un atributo Geography Key a la dimensión Reseller, haga clic con el botón
secundario del mouse en GeographyKey en el panel Vista del origen de datos y, a
continuación, haga clic en Nuevo atributo de la columna.
3. En el panel Atributos, seleccione Geography Key y, a continuación, en la ventana de
propiedades, establezca la propiedad AttributeHierarchyOptimizedState en NotOptimized,
la propiedad AttributeHierarchyOrdered en False y la propiedad AttributeHierarchyVisible
en False.
4. Cambie al Diseñador de cubos para el cubo Tutorial de Analysis Services, haga clic en la
ficha Uso de dimensiones y, a continuación, haga clic en el botón de puntos suspensivos
(…) que se encuentra en la intersección del grupo de medida Reseller Sales y la dimensión
de cubo Geography.
5. En la lista Seleccionar tipo de relación, seleccione Referenciada.
6. En la lista Dimensión intermedia, seleccione Reseller.
7. En la lista Atributo de dimensión de referencia, seleccione Geography Key y, a
continuación, seleccione Geography Key en la lista Atributo de dimensión intermedia.
Observe que la dimensión de cubo Geography ahora está vinculada al grupo de medida
Reseller Sales. El icono indica que la relación es una relación de dimensión referenciada.
9. En la lista Dimensiones de la ficha Uso de dimensiones, haga clic con el botón secundario
en Geography y, a continuación, haga clic en Cambiar nombre.
10. Cambie el nombre de esta dimensión de cubo por Reseller Geography.
Puesto que esta dimensión de cubo ahora está vinculada al grupo de medida Reseller
Sales, los usuarios se beneficiarán de definir explícitamente su uso en el cubo, con el fin
de evitar una posible confusión de los usuarios.
Página 79 de 154
Sql server 2008 - Analisis Services
Observe que la medida Reseller Sales-Sales Amount no aparece bien dimensionada por el
atributo Country-Region de la jerarquía definida por el usuario Geographies, como se
muestra en la imagen siguiente.
A veces, los usuarios desean poder dimensionar las medidas según los elementos de datos que se
encuentran en la tabla de hechos o realizar consultas en la tabla de hechos sobre determinada
información relacionada adicional, como números de factura o números de pedidos de compra
relacionados con hechos de venta específicos. Cuando se define una dimensión basada en un
elemento de tabla de hechos de este tipo, la dimensión se conoce como dimensión de hechos. Las
dimensiones de hechos también se denominan dimensiones degeneradas. Las dimensiones de
hechos son útiles para agrupar filas de tablas de hechos relacionadas, como todas las filas que
están relacionadas con un número de factura determinado. Aunque esta información puede
colocarse en una tabla de dimensiones independiente de la base de datos relacional, crear una
tabla de dimensiones independiente para la información no supone ninguna ventaja, ya que la tabla
de dimensiones crecerá al mismo ritmo que la tabla de hechos, y simplemente crearía datos
duplicados y una complejidad innecesaria.
En Analysis Services, puede determinar si los datos de las dimensiones de hechos deben
duplicarse en una estructura de dimensiones MOLAP para incrementar el rendimiento de las
Página 80 de 154
Sql server 2008 - Analisis Services
consultas o si es necesario definir una dimensión de hechos como dimensión ROLAP para ahorrar
espacio a costa del rendimiento de las consultas. Cuando se almacena una dimensión en modo de
almacenamiento MOLAP, todos los miembros de la dimensión se almacenan en la instancia de
Analysis Services en una estructura MOLAP muy comprimida, además de almacenarse en las
particiones del grupo de medida. Cuando se almacena una dimensión con el modo de
almacenamiento ROLAP, en la estructura MOLAP sólo se almacena la definición de la dimensión,
y, en el momento de la consulta, los miembros de la dimensión propiamente dichos se consultan
desde la tabla de hechos relacionales subyacente. El modo de almacenamiento adecuado se
decide en función de la frecuencia con la que se consultan las dimensiones de hechos, el número
de filas que devuelve una consulta típica, el rendimiento de la consulta y el costo de
procesamiento. Para definir una dimensión como ROLAP, no es necesario almacenar todos los
cubos que utilizan la dimensión con el mismo modo de almacenamiento ROLAP. Esto es distinto
de SQL Server 2000 Analysis Services.
Cuando define una dimensión de hechos, puede definir la relación entre la dimensión de hechos y
el grupo de medida como relación de hechos. Las relaciones de hechos presentan estas
limitaciones:
Nota
Las dimensiones de hechos deben actualizarse de forma incremental después de cada
actualización realizada en el grupo de medida al que hace referencia la relación de hechos.
Para obtener más información, vea Relaciones de dimensión y Definir relaciones de hechos y
propiedades de las relaciones de hechos.
En las tareas de este tema, debe agregar una nueva dimensión de cubo basada en la columna
CustomerPONumber de la tabla de hechos FactInternetSales. A continuación, debe definir la
relación entre esta nueva dimensión de cubo y el grupo de medida Internet Sales como relación de
hechos.
Página 81 de 154
Sql server 2008 - Analisis Services
10. En la página Seleccionar los atributos de la dimensión, haga clic dos veces en la casilla del
encabezado para desactivar todas las casillas. El atributo Sales Order Number seguirá
seleccionado porque es el atributo clave.
11. Seleccione el atributo Customer PO Number y, a continuación, haga clic en Siguiente.
12. En la página Finalización del asistente, cambie el nombre por Internet Sales Order Details
y, a continuación, haga clic en Finalizar para completar el asistente.
13. En el menú Archivo, haga clic en Guardar todo.
14. En el panel Atributos del Diseñador de dimensiones para la dimensión Internet Sales Order
Details, seleccione Sales Order Number y, a continuación, cambie la propiedad Nombre de
la ventana de propiedades por Item Description.
15. En la celda de la propiedad NameColumn, haga clic en el botón Examinar (…). En el
cuadro de diálogo Columna de nombre, seleccione Product en la lista Tabla de origen,
seleccione EnglishProductName en Columna de origen y, a continuación, haga clic en
Aceptar.
16. Agregue el atributo Sales Order Number a la dimensión arrastrando la columna
SalesOrderNumber de la tabla InternetSales del panel Vista de origen de datos al panel
Atributos.
17. Cambie la propiedad Nombre del nuevo atributo Sales Order Number por Order Number y
cambie la propiedad OrderBy por Key.
18. En el panel Jerarquías, cree una jerarquía de usuario Internet Sales Orders que contenga
los niveles Order Number e Item Description, en este orden.
19. En el panel Atributos, seleccione Internet Sales Order Details y luego revise el valor de la
propiedad StorageMode de la ventana Propiedades.
Observe que, de forma predeterminada, esta dimensión está almacenada como dimensión
MOLAP. Aunque cambiar el modo de almacenamiento por ROLAP supondrá un ahorro de
tiempo de procesamiento y espacio de almacenamiento, esto es así a costa del
rendimiento de las consultas. Para este tutorial, utilizará MOLAP como modo de
almacenamiento.
20. Para agregar la dimensión que acaba de crear al cubo Tutorial de Analysis Services como
una dimensión de cubo, cambie al Diseñador de cubos. En la ficha Estructura de cubo,
haga clic con el botón secundario del mouse en el panel Dimensiones y seleccione Agregar
dimensión de cubo.
21. En el cuadro de diálogo Agregar dimensión de cubo, seleccione Internet Sales Order
Details y, a continuación, haga clic en Aceptar.
1. En el Diseñador de cubos del cubo Tutorial de Analysis Services, haga clic en la ficha Uso
de dimensiones.
Observe que la dimensión de cubo Internet Sales Order Details está configurada
automáticamente con una relación de hechos, como indica el icono único.
2. Haga clic en el botón Examinar (…) de la celda Item Description, situada en la intersección
del grupo de medida Internet Sales con la dimensión Internet Sales Order Details, para
revisar las propiedades de la relación de hecho.
Se abre el cuadro de diálogo Definir relación. Observe que no puede configurar ninguna de
las propiedades.
Página 82 de 154
Sql server 2008 - Analisis Services
La aplicación de un filtro para limitar los pedidos de venta que se devuelven a un único
cliente permite al usuario obtener detalles en una tabla de hechos de gran tamaño sin tener
que sufrir una notable pérdida en el rendimiento de las consultas.
5. Agregue la jerarquía definida por el usuario Internet Sales Orders de la dimensión Internet
Sales Order Details al área de filas del panel de datos.
Página 83 de 154
Sql server 2008 - Analisis Services
Observe que en el panel de datos aparecen los números de pedidos de venta y los
importes correspondientes de ventas por Internet para Adam Powell.
6. Expanda cada número de pedido de venta del área de filas para ver los detalles de cada
artículo de línea de dichos pedidos.
Generalmente, cuando se define una dimensión cada hecho se combina con un único miembro de
la dimensión, mientras que un mismo miembro puede estar asociado a varios hechos distintos. Por
ejemplo, cada cliente puede tener varios pedidos, pero cada pedido pertenece a un solo cliente. En
terminología de bases de datos relacionales, esto se conoce como relación de uno a varios. No
obstante, algunas veces un único hecho puede combinarse con varios miembros de la dimensión.
En terminología de bases de datos relacionales, esto se conoce como relación de varios a varios.
Por ejemplo, un cliente puede tener varios motivos para realizar una compra, y un motivo de
compra puede estar asociado a varias compras. Para definir los motivos de venta que se
relacionan con cada compra, se utiliza una tabla de combinación. Una dimensión de motivo de
venta creada a partir de relaciones de este tipo tendría varios miembros que estarían relacionados
a una única transacción de venta. Las dimensiones de varios a varios amplían el modelo
dimensional más allá del esquema de estrella y admiten análisis complejos cuando las
dimensiones no están directamente relacionadas con una tabla de hechos.
En Analysis Services, para definir una relación de varios a varios entre una dimensión y un grupo
de medida se especifica una tabla de hechos intermedia que está combinada con la tabla de
dimensiones. Una tabla de hechos intermedia, a su vez, se combina con una tabla de dimensiones
intermedia con la que la tabla de hechos está combinada. Las relaciones de varios a varios entre la
tabla de hechos intermedia y las tablas de dimensiones de la relación y la dimensión intermedia
crean las relaciones de varios a varios entre los miembros de la dimensión primaria y las medidas
del grupo de medida especificado por la relación. Para definir una relación de varios a varios entre
una dimensión y un grupo de medida a través de un grupo de medida intermedio, el grupo de
medida intermedio debe compartir una o varias dimensiones con el grupo de medida original.
Con una dimensión de varios a varios, los valores distintos se suman, lo que significa que no se
agregan más de una vez al miembro Todos.
Página 84 de 154
Sql server 2008 - Analisis Services
Nota
Para poder admitir una relación de dimensiones de varios a varios, debe definir una relación de
clave principal a clave externa en la vista de origen de datos entre todas las tablas implicadas. De lo
contrario, no podrá seleccionar el grupo de medida intermedio correcto cuando establezca la
relación en la ficha Uso de dimensiones del Diseñador de cubos.
Para obtener más información, vea Relaciones de dimensión y Definir una relación de varios a
varios y las propiedades de las relaciones de varios a varios.
En las tareas de este tema, debe definir la dimensión Sales Reasons y el grupo de medida Sales
Reasons, y definir una relación de varios a varios entre la dimensión Sales Reasons y el grupo de
medida Internet Sales a través del grupo de medida Sales Reasons.
Observe que las relaciones de clave principal a clave externa entre las tablas que están
implicadas se establecen automáticamente, ya que dichas relaciones están definidas en la
base de datos relacional subyacente. Si dichas relaciones no se hubiesen definido en la
base de datos relacional subyacente, tendría que definirlas en la vista de origen de datos.
Observe que los datos de las otras dos columnas de esta tabla son de tipo numérico.
Página 85 de 154
Sql server 2008 - Analisis Services
Observe que, para cada número de línea de cada pedido, un valor clave identifica el motivo
de venta para la compra del artículo de la línea, como se muestra en la imagen siguiente.
1. Cambie al Diseñador de cubos para el cubo Tutorial de Analysis Services y haga clic en la
ficha Estructura de cubo.
2. Haga clic con el botón secundario en cualquier punto del panel Medidas y, después, haga
clic en Nuevo grupo de medida. Para obtener más información, vea Eliminar grupos de
medida.
3. En el cuadro de diálogo Nuevo grupo de medida, seleccione InternetSalesReason en la
lista Seleccione una tabla en la vista de origen de datos y haga clic en Aceptar.
Observe que el grupo de medida Internet Sales Reason ahora aparece en el panel
Medidas.
Como puede observar, sólo hay una medida definida para este nuevo grupo de medida, la
medida Internet Sales Reason Count.
5. Seleccione Internet Sales Reason Count y revise las propiedades de esta medida en la
ventana Propiedades.
Observe que la propiedad AggregateFunction para esta medida está definida como
Recuento en vez de como Suma. Analysis Services seleccionó Recuento porque el tipo de
datos subyacente es un tipo de datos de cadena. Las otras dos columnas de la tabla de
Página 86 de 154
Sql server 2008 - Analisis Services
hechos subyacente no estaban seleccionadas como medias porque Analysis Services las
detectó como claves numéricas y no como medidas reales. Para obtener más información,
vea Definir el comportamiento de suma parcial.
Esta medida sólo podrá utilizarse para combinar la dimensión Sales Reason que definirá
junto al grupo de medida Internet Sales. Los usuarios no examinarán esta medida
directamente.
Página 87 de 154
Sql server 2008 - Analisis Services
1. Pase al Diseñador de cubos para el cubo Tutorial de Analysis Services y haga clic en la
ficha Uso de dimensiones.
Observe que la dimensión Sales Reason tiene una relación regular definida con el grupo
de medida Internet Sales Reason, pero no tiene ninguna relación definida con los grupos
de medida Internet Sales ni Reseller Sales. Observe también que la dimensión Internet
Sales Order Details tiene una relación normal definida con la dimensión Internet Sales
Reason, que a su vez tiene una relación de hechos con el grupo de medida Internet Sales.
Si esta dimensión no estaba presente (u otra dimensión con una relación con Internet
Sales Reason y el grupo de medida Internet Sales no estaban presentes), no se podría
definir la relación de varios a varios.
2. Haga clic en la celda en la intersección del grupo de medida Internet Sales y la dimensión
Sales Reasons y, a continuación, haga clic en el botón Examinar (…).
Página 88 de 154
Sql server 2008 - Analisis Services
Debe definir el grupo de medida intermedio que conecta la dimensión Sales Reason al
grupo de medida Internet Sales.
Observe el icono de varios a varios que representa la relación existente entre la dimensión
Sales Reason y el grupo de medida Internet Sales.
Página 89 de 154
Sql server 2008 - Analisis Services
5. Agregue la jerarquía definida por el usuario Sales Reason de la dimensión Sales Reason al
área de filas del panel de datos.
6. En el panel de metadatos, expanda Customer, Location, Customer Geography, Members,
All Customers, expanda Australia, haga clic con el botón secundario en Queensland y, a
continuación, haga clic en Agregar a área de subcubo.
7. Expanda cada miembro del nivel Sales Reason Type para revisar los valores en dólares
que están asociados a cada motivo que un cliente de Queensland indicó para su compra
de un producto de Adventure Works a través de Internet.
Observe que los totales que están asociados con cada motivo de ventas se suman y dan
lugar a un valor superior a las ventas totales. Esto es así porque algunos clientes citaron
varios motivos para su compra.
En la imagen siguiente se muestran los paneles Filtro y Datos del Diseñador de cubos.
Los usuarios desearán dimensionar los datos de hechos con una granularidad o especificidad
distinta para distintos objetivos. Por ejemplo, los datos de venta para las ventas de proveedor o
ventas por Internet pueden registrarse cada día, mientras que es posible que la información sobre
cuotas de venta solo exista en el nivel de mes o trimestre. En estos casos, los usuarios desearán
una dimensión de tiempo con otra granularidad o un nivel de detalle distinto para cada una de las
distintas tablas de hechos. Si bien puede definirse una nueva dimensión de base de datos como
una dimensión de tiempo con esta granularidad diferente, hay una forma más fácil de hacerlo con
Analysis Services.
Página 90 de 154
Sql server 2008 - Analisis Services
Para especificar un nivel de detalle para una dimensión de cubo que no sea el predeterminado,
debe modificar el atributo de granularidad para una dimensión de cubo como se utiliza en un grupo
de medida determinado en la pestaña Uso de dimensiones del Diseñador de cubos. Si cambia el
nivel de detalle de una dimensión de un grupo de medida específico por un atributo distinto del
atributo clave de dicha dimensión, debe garantizar que todos los demás atributos del grupo de
mensaje estén directa o indirectamente relacionados con el nuevo atributo de granularidad. Para
ello, debe especificar las relaciones de atributo entre todos los demás atributos y el atributo que se
ha especificado como atributo de granularidad en el grupo de medida. En este caso, se definen
relaciones de atributo adicionales en vez de mover relaciones de atributo. El atributo que se
especifica como atributo de granularidad se convierte efectivamente en el atributo clave del grupo
de medida para el resto de atributos de la dimensión. Si no especifica correctamente las relaciones
de atributo, Analysis Services no podrá agregar los valores de forma correcta, como verá en las
tareas de este tema.
Para obtener más información, vea Relaciones de dimensión y Definir relaciones normales y
propiedades de las relaciones normales.
En las tareas de este tema, debe agregar un grupo de medida Sales Quotas y definir la
granularidad de la dimensión Date en este grupo de modo que sea mensual. Luego debe definir las
relaciones de atributo existentes entre el atributo de mes y otros atributos de dimensión para
garantizar que Analysis Services agregue los valores correctamente.
1. Cambie al Diseñador de vistas del origen de datos de la vista del origen de datos
Adventure Works DW.
2. Haga clic con el botón secundario en cualquier punto del panel Organizador de diagramas,
haga clic en Nuevo diagrama y, a continuación, especifique Sales Quotas como nombre
del nuevo diagrama. Para obtener más información, vea Trabajar con diagramas en una
vista de origen de datos (Analysis Services).
3. Arrastre las tablas Employee, Sales Territory y Date del panel Tablas al panel Diagrama.
4. Agregue la tabla FactSalesQuota al panel Diagrama haciendo clic con el botón secundario
en cualquier punto del panel Diagrama y seleccionando Agregar o quitar tablas.
Observe que el nivel de detalle de los datos de esta tabla es trimestre natural, que es el
nivel más bajo de detalle de la tabla FactSalesQuota.
Página 91 de 154
Sql server 2008 - Analisis Services
Aparece el grupo de medida Sales Quotas en el panel Medidas. Observe que, en el panel
Dimensiones, también se define una dimensión de cubo Date nueva, basada en la
dimensión Date de la base de datos. Se define una dimensión de cubo nueva relacionada
con el tiempo porque Analysis Services no sabe qué dimensión de las existentes en el
cubo y relacionada con el tiempo debe relacionar con la columna DateKey de la tabla de
hechos FactSalesQuota subyacente del grupo de medida Sales Quotas. Cambiará este
valor más adelante en otra tarea de este tema.
13. En el panel Medidas, haga clic con el botón secundario en el grupo de medida Sales
Quotas y luego haga clic en Nueva medida. Para obtener más información, vea Definir
medidas.
Se abre el cuadro de diálogo Nueva medida, que contiene las columnas de origen
disponibles para una medida con un tipo de uso Suma.
14. En el cuadro de diálogo Nueva medida, seleccione Recuento distinto en la lista Uso,
compruebe que SalesQuotas está seleccionado en la lista Tabla de origen, seleccione
EmployeeKey en la lista Columna de origen y haga clic en Aceptar.
Observe que la medida se crea en un grupo de medida nuevo denominado Sales Quotas
1. A fin de maximizar el rendimiento del procesamiento, en SQL Server se crean medidas
de recuento distintas en los grupos de medida correspondientes.
15. Cambie el valor de la propiedad Nombre de la medida Employee Key Distinct Count por
Sales Person Count y, a continuación, escriba #,# como el valor para la propiedad
FormatString.
Examinar las medidas del grupo de medida Sales Quota por fecha
Para examinar las medidas del grupo de medida Sales Quota por fecha
Página 92 de 154
Sql server 2008 - Analisis Services
En la tarea siguiente de este tema definirá una relación de dimensión de referencia entre
esta dimensión y esta tabla de hechos.
6. En el panel Datos, haga clic en la flecha abajo que aparece junto a Sales Territory Group y,
a continuación, desactive todas las casillas excepto la que aparece junto a North America,
para cambiar los miembros de dimensión que aparecen en Sales Territory Group a North
America.
7. En el panel de metadatos, expanda Date.
8. Agregue la jerarquía de usuario Date.Fiscal Date al área de filas y, a continuación, haga
clic en la flecha abajo que aparece junto a Fiscal Year en el panel Datos y desactive todas
las casillas excepto FY 2004 para mostrar solamente el año fiscal 2004.
9. En el panel Datos, expanda FY 2004, H1 FY 2004, Q1 FY 2004 y July 2003.
Observe que solo aparece el miembro July 2003 del nivel Month, en lugar de los miembros
July, 2003, August, 2003 y September, 2003 del nivel Month, y que solo aparece el
miembro July 1, 2003 del nivel Date, en lugar de todos los 31 días. Este comportamiento
se produce porque el nivel de detalle de los datos de la tabla de hechos es el nivel
trimestral y el nivel de detalle de la dimensión Date es el nivel diario. Cambiará este
comportamiento en la siguiente tarea de este tema.
Observe también que el valor de Sales Amount Quota para los niveles de mes y día es el
mismo valor que aparece en el nivel de trimestre, $13.733.000,00. Esto es así porque el
nivel más bajo de datos del grupo de medida Sales Quotas se encuentra en el nivel de
trimestre. Cambiará este comportamiento en la lección 6.
Página 93 de 154
Sql server 2008 - Analisis Services
Definir las propiedades de uso de dimensiones para el grupo de medida Sales Quotas
Para definir las propiedades de uso de dimensiones para el grupo de medida Sales
Quotas
1. Abra el Diseñador de dimensiones para la dimensión Employee, haga clic con el botón
secundario en SalesTerritoryKey en el panel Vista del origen de datos y, a continuación,
haga clic en Nuevo atributo de la columna.
2. En el panel Atributos, seleccione SalesTerritoryKey y, a continuación, establezca la
propiedad AttributeHierarchyVisible en False en la ventana de propiedades, la propiedad
AttributeHierarchyOptimizedState en NotOptimized y la propiedad
AttributeHierarchyOrdered en False.
Este atributo es necesario para vincular la dimensión Sales Territory con los grupos de
medida Sales Quotas y Sales Quotas 1 como dimensión referenciada.
Observe que las dimensiones de cubo Employee y Date están vinculadas a los grupos de
medida Sales Quotas y Sales Quotas 1 a través de relaciones normales. Observe también
que la dimensión de cubo Sales Territory no está vinculada a ninguno de estos grupos de
medida.
Página 94 de 154
Sql server 2008 - Analisis Services
19. En la lista Dimensiones, cambie el nombre de la dimensión de cubo Order Date por Date.
Cambiar el nombre de la dimensión de cubo Order Date por Date facilita a los usuarios
comprender su función como dimensión de fecha principal del cubo.
20. Haga clic en el botón Examinar (…) de la celda que se encuentra en la intersección del
grupo de medida Sales Quotas y la dimensión Date.
21. En el cuadro de diálogo Definir relación, seleccione Regular en la lista Seleccionar tipo de
relación.
22. En la lista Atributo de granularidad, seleccione Calendar Quarter.
Observe que aparece un mensaje de advertencia para notificarle que, puesto que ha
seleccionado un atributo sin clave como atributo de granularidad, debe especificar todos
los demás atributos como propiedades de miembro para asegurarse de que estén
relacionados directa o indirectamente con el atributo de granularidad.
23. En el área Relación del cuadro de diálogo Definir relación, vincule las columnas de
dimensión CalendarYear y CalendarQuarter de la tabla que subyace en la dimensión de
cubo Date con las columnas CalendarYear y CalendarQuarter de la tabla que subyace en
el grupo de medida Sales Quota y, a continuación, haga clic en Aceptar.
Nota
Calendar Quarter se define como atributo de granularidad de la dimensión de cubo Date en
el grupo de medida Sales Quotas, pero el atributo Date sigue siendo el atributo de
granularidad para los grupos de medida Internet Sales y Reseller Sales.
24. Repita los cuatro pasos anteriores para el grupo de medida Sales Quotas 1.
Definir las relaciones de atributo entre el atributo Calendar Quarter y otros atributos de dimensión
de la dimensión Date
Para definir las relaciones de atributo entre el atributo Calendar Quarter y otros
atributos de dimensión de la dimensión Date
Página 95 de 154
Sql server 2008 - Analisis Services
Observe que, aunque Calendar Year está vinculado a Calendar Quarter a través del
atributo Calendar Semester, los atributos de calendario fiscal están vinculados solamente
el uno al otro; no están vinculados al atributo Calendar Quarter y, por consiguiente, no se
agregan correctamente al grupo de medida Sales Quotas.
2. En el diagrama, haga clic con el botón secundario del mouse en el atributo Calendar
Quarter y, a continuación, seleccione Nueva relación de atributo.
3. En el cuadro de diálogo Crear relación de atributo, el Atributo de origen es Calendar
Quarter. Establezca el Atributo relacionado en Fiscal Quarter.
4. Haga clic en Aceptar.
Observe que aparece un mensaje de advertencia para indicarle que la dimensión Date
contiene una o varias relaciones de atributo redundantes que pueden impedir que se
agreguen datos cuando se usa un atributo sin clave como atributo de granularidad.
5. Elimine la relación de atributo entre los atributos Month Name y Fiscal Quarter.
6. En el menú Archivo, haga clic en Guardar todo.
Examinar las medidas del grupo de medida Sales Quota por fecha
Para examinar las medidas del grupo de medida Sales Quota por fecha
Observe que la medida Sales Amount Quota ahora está bien dimensionada por Sales
Territory, porque la dimensión Sales Territory ahora está definida como dimensión a la que
se hace referencia.
Observe que las medidas del grupo de medida Sales Quotas están bien dimensionadas.
Observe también que se muestra cada miembro del nivel de trimestre fiscal, y que el valor
de cada miembro es el valor del nivel de trimestre. Este comportamiento se produce
porque el nivel de detalle de los datos de la tabla de hechos es el nivel trimestral y el nivel
de detalle de la dimensión Date también es el nivel de trimestre. En la lección 6, aprenderá
a asignar el importe trimestral proporcionalmente a cada mes.
Página 96 de 154
Sql server 2008 - Analisis Services
En esta lección, aprenderá a definir cálculos, que son scripts o expresiones de Expresiones
multidimensionales (MDX). Los cálculos le permiten definir miembros calculados, conjuntos con
nombre y ejecutar otros comandos de script para ampliar las capacidades de un cubo de Analysis
Services. Por ejemplo, puede ejecutar un comando de script para definir un subcubo y, a
continuación, asignar un cálculo a las celdas del subcubo.
En la ficha Cálculos, puede agregar nuevos cálculos y ver o editar cálculos existentes en las vistas
siguientes del panel de las expresiones de cálculo:
Página 97 de 154
Sql server 2008 - Analisis Services
Para cambiar de una vista a otra en el panel de las expresiones de cálculo, haga clic en Vista de
formulario o Vista de script en la barra de herramientas de la ficha Cálculos.
Nota
Si Analysis Services detecta un error de sintaxis en algún cálculo, la vista de formulario no
aparecerá hasta que el error se haya corregido en la vista de script.
También puede utilizar el Asistente de Business Intelligence para agregar determinados cálculos a
un cubo. Por ejemplo, puede utilizar este asistente para agregar inteligencia de tiempo a un cubo,
lo que significa definir miembros calculados para cálculos relacionados con el tiempo como, por
ejemplo, períodos hasta fecha, medias móviles o crecimiento entre períodos. Para obtener más
información, vea Definir cálculos de inteligencia de tiempo mediante el Asistente de Business
Intelligence.
Importante
En la ficha Cálculos, el script de cálculo empieza por el comando CALCULATE. El comando
CALCULATE controla la agregación de las celdas en el cubo y sólo debería editar este comando si
intenta especificar manualmente la forma en que se deberían agregar las celdas del cubo.
Nota
Para disponer de un proyecto completado de la lección 5, descargue e instale los ejemplos. Para
obtener más información, vea Consideraciones para instalar ejemplos y bases de datos de ejemplo
de SQL Server.
En esta tarea, aprenderá a utilizar comandos de script para definir subcubos y asignar
cálculos al espacio del subcubo mediante cálculos MDX.
Página 98 de 154
Sql server 2008 - Analisis Services
Los miembros calculados son miembros de una dimensión o un grupo de medida que se definen
según una combinación de datos del cubo, operadores aritméticos, números y funciones. Por
ejemplo, puede crear un miembro calculado que calcule la suma de dos medidas físicas en el cubo.
Las definiciones de miembros calculados se almacenan en cubos pero sus valores se calculan en
el momento de la consulta.
Para crear un miembro calculado, utilice el comando Nuevo miembro calculado en la ficha Cálculos
del Diseñador de cubos. Puede crear un miembro calculado dentro de cualquier dimensión, incluida
la dimensión de medidas. También puede colocar un miembro calculado en una carpeta para
mostrar en el cuadro de diálogo Propiedades de cálculo. Para obtener más información, vea
Cálculos, Definir cálculos y Crear miembros calculados.
En las tareas de este tema se definen medidas calculadas para permitir que los usuarios vean el
porcentaje de margen de beneficio bruto y el ratio de ventas para ventas por Internet, para ventas
del distribuidor y para todas las ventas.
1. Abra el Diseñador de cubos para el cubo Analysis Services Tutorial y, a continuación, haga
clic en la ficha Cálculos.
Página 99 de 154
Sql server 2008 - Analisis Services
3. En el cuadro Nombre, cambie el nombre de la medida calculada por [Total Sales Amount].
Nota
Si no puede ver los metadatos en el panel Herramientas de cálculo, haga clic en Volver a
conectar en la barra de herramientas. Si esto no funciona, puede que tenga que procesar el
cubo o iniciar la instancia de Analysis Services.
10. En la barra de herramientas de la ficha Cálculos, haga clic en Vista de script y revise la
script del cálculo en el panel de las expresiones de cálculo.
Observe que el nuevo cálculo se agrega a la expresión CALCULATE inicial; los cálculos
individuales se separan con un punto y coma. Observe también que aparece un
comentario al principio de la script del cálculo. Se recomienda la agregación de
comentarios dentro de la script de cálculo para grupos de cálculos para ayudarle a usted y
a otros programadores a comprender las scripts de cálculo complejas.
11. Agregue una nueva línea a la script de cálculo después del comando Calculate; y antes de
la script de cálculo recientemente agregada y, a continuación, agregue el siguiente texto a
la script en su propia línea:
Copiar
La siguiente imagen muestra las secuencias de cálculo tal como deberían aparecer en el
panel de las expresiones de cálculo en este punto del tutorial.
Copiar
Ahora ha definido dos miembros calculados y ambos son visibles en el panel Organizador
de scripts. Estos miembros calculados pueden ser utilizados por otros cálculos definidos
posteriormente en la script de cálculo. Puede ver la definición de cualquier miembro
calculado seleccionando el miembro calculado en el panel Organizador de scripts; la
definición del miembro calculado aparecerá en el panel de las expresiones de cálculo de la
vista Formulario. Los miembros calculados recientemente definidos no aparecerán en el
panel Herramientas de cálculo hasta que se hayan implementado estos objetos. Los
cálculos no requieren procesamiento.
1. Compruebe que [Total Product Cost] está seleccionado en el panel Organizador de scripts
y, a continuación, haga clic en Nuevo miembro calculado en la barra de herramientas de la
ficha Cálculos.
2. En el cuadro Nombre, cambie el nombre de esta nueva medida calculada por [Internet
GPM].
3. En el cuadro Expresión, cree la siguiente expresión MDX:
Copiar
Copiar
Copiar
Observe que este miembro calculado hace referencia a otros miembros calculados. Como
este miembro calculado se calculará después de los miembros calculados a los que hace
referencia, se tratará de un miembro calculado válido.
Copiar
La siguiente imagen muestra el panel Expresiones con los tres nuevos cálculos.
Si hace clic en el miembro calculado final del panel Organizador de scripts antes de hacer
clic en Nuevo miembro calculado se asegurará de que el nuevo miembro calculado se
escribe al final de la script. Las scripts se ejecutan en el orden en el que aparecen en el
panel Organizador de scripts.
3. Cambie el nombre de este nuevo miembro calculado por [Internet Sales Ratio to All
Products].
4. Escriba la siguiente expresión en el cuadro Expresión:
Copiar
Case
When IsEmpty( [Measures].[Internet Sales-Sales Amount] )
Then 0
Else ( [Product].[Product Categories].CurrentMember,
[Measures].[Internet Sales-Sales Amount]) /
( [Product].[Product Categories].[(All)].[All],
[Measures].[Internet Sales-Sales Amount] )
End
Esta expresión MDX calcula la contribución al total de ventas por Internet de cada
producto. La instrucción Case junto con la función IS EMPTY garantiza que no se produzca
un error de división por cero cuando un producto no tiene ventas.
Copiar
Case
When IsEmpty( [Measures].[Reseller Sales-Sales Amount] )
Then 0
Else ( [Product].[Product Categories].CurrentMember,
[Measures].[Reseller Sales-Sales Amount]) /
( [Product].[Product Categories].[(All)].[All],
[Measures].[Reseller Sales-Sales Amount] )
End
Copiar
Case
When IsEmpty( [Measures].[Total Sales Amount] )
Then 0
Else ( [Product].[Product Categories].CurrentMember,
[Measures].[Total Sales Amount]) /
( [Product].[Product Categories].[(All)].[All],
[Measures].[Total Sales Amount] )
End
Copiar
Ahora ha definido un total de ocho miembros calculados, que están visibles en el panel
Organizador de secuencias cuando se está en la vista Formulario.
Observe que la medida Total Sales Amount es la suma de la medida Internet Sales-Sales
Amount y de la medida Reseller Sales-Sales Amount.
5. Agregue la jerarquía definida por el usuario Product Categories al área de filtro del panel
Datos y, a continuación, filtre los datos mediante Mountain Bikes.
Observe que la medida Total Sales Amount se calcula para la categoría de venta de
producto Mountain Bikes según las medidas Internet Sales-Sales Amount y Reseller Sales-
Sales Amount de Mountain Bikes.
6. Agregue la jerarquía definida por el usuario Date.Calendar Date al área de fila y revise los
resultados.
Observe que la medida Total Sales Amount de cada año natural se calcula para la
categoría de venta de producto Mountain Bikes según las medidas Internet Sales-Sales
Amount y Reseller Sales-Sales Amount de Mountain Bikes.
7. Agregue las medidas Total GPM, Internet GPM y Reseller GPM al área de datos y, a
continuación, revise los resultados.
Observe que el margen de beneficio bruto para la venta del distribuidor es notablemente
inferior al de las ventas a través de Internet. Observe también que el margen de beneficio
bruto en la venta de bicicletas de montaña aumenta con el tiempo, tal como aparece en la
siguiente imagen.
8. Agregue las medidas Total Sales Ratio to All Products, Internet Sales Ratio to All Products
y Reseller Sales Ratio to All Products al área de datos.
Observe que el ratio de las ventas de bicicletas de montaña en relación con todos los
productos ha aumentado con el tiempo para las ventas por Internet, pero ha disminuido
con el tiempo para la venta del distribuidor. Observe también que el ratio de la venta de
bicicletas de montaña con respecto a todos los productos es inferior en la venta por
distribuidor que en la venta por Internet.
Observe que el margen de beneficio bruto de todas las bicicletas vendidas a través de
distribuidores es negativo, porque las bicicletas de paseo y las bicicletas de carrera se
están vendiendo con pérdida.
Observe que la venta de accesorios aumenta con el tiempo pero que estas ventas
constituyen sólo una pequeña fracción del total de ventas. Observe también que el margen
de beneficio bruto para la venta de accesorios es superior que para las bicicletas.
Observe que no hay ventas por Internet en este cubo después de julio de 2004 y que no
hay ventas por distribuidor después de junio de 2004. Estos valores de venta todavía no se
han agregado desde los sistemas de origen a la base de datos Adventure Works DW
Un conjunto con nombre es una expresión de Expresiones multidimensionales (MDX) que devuelve
un conjunto de miembros de la dimensión. Puede definir conjuntos con nombre y guardarlos como
parte de la definición del cubo; también puede crear conjuntos con nombre en aplicaciones cliente.
Puede crear conjuntos con nombre combinando datos del cubo, operadores aritméticos, números y
funciones. Los usuarios pueden usar los conjuntos con nombre en consultas MDX en aplicaciones
cliente y también pueden usarse para definir conjuntos en subcubos. Un subcubo es una colección
de conjuntos unidos de forma cruzada que restringe el espacio del cubo al subespacio definido
para instrucciones posteriores. La definición de un espacio del cubo restringido es un concepto
fundamental para generar scripts de MDX.
Los conjuntos con nombre simplifican las consultas MDX y ofrecen alias útiles para expresiones de
conjunto complejas utilizadas con normalidad. Por ejemplo, puede definir un conjunto con nombre
denominado Large Resellers que contenga el conjunto de miembros de la dimensión Reseller que
tenga la mayoría de los empleados. Los usuarios finales podrían entonces utilizar el conjunto con
nombre Large Resellers en consultas, o utilizar el conjunto con nombre para definir un conjunto en
un subcubo. Las definiciones de los conjuntos con nombre se almacenan, pero sus valores sólo
existen en la memoria. Para crear un conjunto con nombre, utilice el comando Nuevo conjunto con
nombre en la ficha Cálculos del Diseñador de cubos. Para obtener más información, vea Cálculos y
Crear conjuntos con nombre.
En las tareas de este tema, definirá dos conjuntos con nombre: un conjunto con nombre Core
Products y un conjunto con nombre Large Resellers.
1. Vaya a la ficha Cálculos del Diseñador de cubos para el cubo Analysis Services Tutorial y,
a continuación, haga clic en Vista de formulario en la barra de herramientas.
2. Haga clic en [Total Sales Ratio to All Products] en el panel Organizador de scripts y, a
continuación, haga clic en Nuevo conjunto con nombre en la barra de herramientas de la
ficha Cálculos.
Al definir un nuevo cálculo en la ficha Cálculos, recuerde que los cálculos se resuelven en
el orden en el que aparecen en el panel Organizador de scripts. Su enfoque en dicho panel
al crear un nuevo cálculo determinará el orden de la ejecución del cálculo; un nuevo
cálculo se define inmediatamente después del cálculo especificado.
3. En el cuadro Nombre, cambie el nombre del nuevo conjunto con nombre por [Core
Products].
En el panel Organizador de scripts, observe el icono único que diferencia un conjunto con
nombre de un comando de script o de un miembro calculado.
Nota
Si no puede ver los metadatos en el panel Herramientas de cálculo, haga clic en Volver a
conectar en la barra de herramientas. Si esto no funciona, puede que tenga que procesar el
cubo o iniciar la instancia de Analysis Services.
Ahora ha creado una expresión de conjunto que devolverá el conjunto de miembros que
esté en la categoría Bike de la dimensión Product.
1. Haga clic con el botón secundario en [Core Products] en el panel Organizador de scripts y,
a continuación, haga clic en Nuevo conjunto con nombre.
2. En el cuadro Nombre, cambie el nombre de este conjunto con nombre por [Large
Resellers].
3. En el cuadro Expresión, escriba Exists().
Utilizará la función Members para devolver todos los miembros de este conjunto. Temas
relacionados:Members (Set) (MDX)Members (Set) (MDX)
Copiar
Ahora que ha definido el primer conjunto para la expresión de conjunto Exists, estará listo
para agregar el segundo conjunto (el conjunto de miembros de la dimensión Reseller que
contenga el mayor número de empleados).
Observe que los miembros de esta jerarquía de atributo están ahora contenidos en cinco
grupos, numerados de 0 a 4. Para ver el número de un grupo, detenga el punto sobre
dicho grupo para ver un recuadro informativo. Los miembros de esta jerarquía de atributo
se agrupan porque la propiedad DiscretizationBucketCount está establecida en 5 y la
propiedad DiscretizationMethod está establecida en Automatic.
13. En el cuadro Expresión, agregue una coma a la expresión de conjunto Exists después de
la función Members y antes de cerrar el paréntesis y, a continuación, arrastre 83 - 100
desde el panel Metadatos y colóquelo después de la coma.
La siguiente imagen muestra el panel de las expresiones de cálculo para el conjunto con
nombre [Large Resellers].
Copiar
/* named sets */
Ahora ha definido dos conjuntos con nombre y ambos son visibles en el panel Organizador
de scripts. Ahora está listo para implementar estos conjuntos con nombre y para examinar
estas medidas en el cubo Analysis Services Tutorial.
Si trabaja en una nueva sesión, aparecerán todos los miembros. Si sólo aparece un
miembro del atributo de categoría, es debido a que antes usó este atributo como filtro en
esta sesión. Para mostrar todos los miembros, seleccione la flecha de cuadro desplegable
situada junto a Categoría en el área Fila, active la casilla situada junto al nivel (Todos) para
seleccionar todos los miembros de este nivel (si todavía no están seleccionados) y, a
continuación, haga clic en Aceptar.
5. Expanda Bikes para ver los miembros del nivel Subcategoría, como se muestra en la
siguiente imagen.
6. En el panel Metadatos, en la dimensión Product, haga clic con el botón secundario en Core
Products y seleccione Agregar a área de subcubo.
Observe que sólo el miembro Bike del atributo Category y los miembros de las
subcategorías Bike permanecen en el cubo. Esto se debe a que el conjunto con nombre
Core Products se usa para definir un subcubo cuyas propiedades aparecen en el panel
Filtro, que es el panel situado encima del panel Datos. Este subcubo limita los miembros
del atributo Category en la dimensión Product del subcubo a los miembros del conjunto con
nombre Core Product, tal como aparece en la siguiente imagen.
Observe que la medida Reseller Sales Amount del panel Datos sólo muestra importes de
venta para grandes distribuidores de bicicletas. Observe también que el panel Filtro
muestra ahora los dos conjuntos con nombre que se utilizan para definir este subcubo en
particular, tal como muestra la siguiente imagen.
El ámbito predeterminado es todo el cubo pero, tal como se dijo en el tema anterior, puede usar la
instrucción SCOPE para definir un ámbito más limitado, conocido como subcubo y, a continuación,
aplicar un script MDX solo a dicho espacio determinado del cubo. La instrucción SCOPE define el
ámbito de todas las instrucciones y expresiones MDX dentro del script de cálculo hasta que el
ámbito actual finalice o vuelva a definirse. La instrucción THIS se utiliza entonces para aplicar una
expresión MDX al ámbito actual. Puede utilizar la instrucción BACK_COLOR para especificar un
color de celda de fondo para las celdas del ámbito actual que le ayude durante la depuración.
En las tareas de este tema, usará las instrucciones SCOPE y THIS para definir cuotas de ventas
para cada trimestre fiscal en el año fiscal 2005. A continuación, asignará cuotas de ventas
mensuales para todos los años fiscales en el cubo. También aprenderá a utilizar los puntos de
interrupción para que le ayuden a depurar el script de cálculo.
Para revisar las asignaciones de cuota de importe de venta por tiempo y empleado
1. Abra el Diseñador de cubos para el cubo Analysis Services Tutorial y, a continuación, haga
clic en la ficha Explorador.
2. Quite todas las jerarquías y medidas del panel Datos y quite todos los miembros de
dimensión del panel Filtro.
3. Agregue la medida Sales Amount Quota del grupo de medida Sales Quotas al área de
datos del panel Datos.
4. Agregue la jerarquía definida por el usuario Fiscal Date de la dimensión Date al área de
columna.
5. Agregue la jerarquía de atributo Employee Name de la dimensión Employee al área de fila.
Observe que no se han definido valores de cuota de venta para el año fiscal 2005.
6. En el área de columna, haga clic en el botón de flecha situado junto a Fiscal Year,
desactive las casillas que aparecen al lado de FY 2002 y FY 2003 y, a continuación, haga
clic en Aceptar.
7. En área de la columna, expanda FY 2004, H2 FY 2004 y, a continuación, expanda Q4 FY
2004.
Observe que la cuota de importe de venta para cada mes fiscal del trimestre fiscal es la
misma que la cuota de importe de venta para el trimestre fiscal. Esto se debe a que la
granularidad de la dimensión de tiempo del grupo de medida Sales Quota es el nivel de
trimestre, tal como se abordó en la lección 5.
La siguiente imagen muestra la cuota de venta para cada empleado que tenga una cuota
de venta para cada mes del cuarto trimestre del año fiscal 2004.
Definir el ámbito para el cálculo de cuota de importe de venta (Sales Amount Quota) para el año
fiscal 2005
En esta tarea, revisará el ámbito actual, lo modificará y, a continuación, definirá un cálculo que
determine los valores de cuota de importe de venta para el año fiscal 2005 según los valores para
el año fiscal 2004.
Para definir el ámbito para el cálculo de cuota de importe de venta (Sales Amount
Quota) para el año fiscal 2005
Observe que aparece un script vacío en el panel Expresiones de cálculo y que este
comando de script aparece con un título en blanco del panel Organizador de script.
Copiar
Esta instrucción SCOPE cambia el ámbito del cubo al miembro All o predeterminado para
todos los atributos del cubo.
Copiar
/* Defining the cube scope for the sales amount quotas for FY2005 */
SCOPE ()
Observe que aparece una línea serpenteante roja debajo del paréntesis final para indicarle
que tiene que definir un conjunto de miembros dentro del paréntesis para la instrucción
SCOPE. A continuación, agregará la medida Sales Amount Quota a la instrucción SCOPE
para incluir esta medida dentro del ámbito.
5. En la ficha Metadatos del panel Herramientas de cálculo, expanda Medidas, Sales Quotas
y, a continuación, arrastre la medida Sales Amount Quota al paréntesis para la instrucción
SCOPE en el panel Expresiones de cálculo.
Observe la línea serpenteante roja debajo de la parte [Date] de este nuevo miembro del
conjunto. Esta línea le informa de que existe un error de sintaxis inmediatamente anterior a
este miembro de dimensión, porque es necesaria una coma entre cada miembro del
conjunto dentro de la instrucción SCOPE.
7. Agregue la coma necesaria antes de la parte [Date] del miembro FY 2005 de la dimensión
Date.
Observe que la línea serpenteante roja inicial desaparece. A continuación, agregará los
miembros de la jerarquía definida por el usuario Employees de la dimensión Employee a la
instrucción SCOPE para agregar estos miembros al ámbito actual.
Observe la línea serpenteante roja situada debajo de la parte [Employee] de este nuevo
miembro del conjunto, para indicar que se necesita una coma entre cada miembro del
conjunto dentro de la instrucción SCOPE.
Copiar
.Members
11. Compruebe que la instrucción SCOPE completa coincide con el siguiente script:
Copiar
Acaba de finalizar la definición de ámbito que define el subcubo al que aplicará una
expresión MDX para calcular el importe de cuota de ventas para el año fiscal 2005.
12. En la barra de herramientas de la ficha Cálculos, haga clic en Vista de script y revise los
comandos de script recientemente agregados.
Observe que cada comando de script aparece tal como lo escribió en el panel Expresiones
de cálculo pero con un punto y coma agregado al final de cada uno de ellos. Observe
también que Analysis Services ha insertado un comentario delante de cada comando de
script para ayudar a entender cada comando por separado.
Definir y probar el nuevo cálculo de cuota de ventas para el año fiscal 2005
En esta tarea, agregará un nuevo comando de script al script de cálculo que calcula el importe de
cuota de venta para el año fiscal 2005 de todos los miembros de dimensión Employee. Sin
embargo, en lugar de agregar el comando de script a la vista Formulario, agregará el comando de
script directamente a la Vista de script. En la vista Script, asegúrese de agregar un punto y coma
entre cada comando de script.
Para definir y probar el nuevo cálculo de cuota de venta para el año fiscal 2005
1. En la vista Script, escriba las siguientes instrucciones en una nueva línea al final del script
de cálculo:
Copiar
Observe que aparece un punto rojo en ese margen y que la instrucción se resalta en rojo.
Al ejecutar este proyecto en modo de depuración, los cambios en el proyecto aparecerán
en la instancia de Analysis Services, se procesará el cubo y el script de cálculo se
ejecutará hasta que se encuentre el punto de interrupción. A continuación, puede
completar los scripts restantes una a una. Si no establece un punto de interrupción y
ejecuta el proyecto en modo de depuración, el script de cálculo se interrumpirá en la
instrucción del primer script, la instrucción CALCULATE.
4. Oculte todas las ventanas acopladas para proporcionar un área mayor para ver el panel
Tabla dinámica que aparece al final de la ficha Cálculos.
5. En el panel Tabla dinámica, agregue la medida Sales Amount Quota al área de datos,
agregue la jerarquía definida por el usuario Fiscal Date al área de columna y, a
continuación, agregue la jerarquía de atributo Employee Name de la dimensión Employee
al área de fila. Desplácese hasta el final de la tabla dinámica y revise los empleados que
tengan asignadas cuotas de venta.
Observe que el miembro FY 2005 del nivel Fiscal Year para la medida Sales Amount
Quota de cada empleado no contiene ningún valor en el área de datos para la medida
Sales Amount Quota. De manera predeterminada, las celdas vacías aparecen en el panel
Tabla dinámica cuando está en modo de depuración.
6. Presione F10 para ejecutar la instrucción THIS y calcular la cuota de venta para el año
fiscal 2005.
Observe que ahora se han calculado las celdas del panel Tabla dinámica en la intersección
de la medida Sales Amount Quota, el miembro de dimensión FY 2005 y el miembro
Employee Name. Observe también que las celdas afectadas por la instrucción THIS están
resaltadas en amarillo. Existe un icono en la barra de herramientas para habilitar o
deshabilitar el resaltado de las celdas modificadas. De forma predeterminada, las celdas
modificadas se resaltan.
7. En el panel Tabla dinámica, desactive las casillas para quitar FY 2002, FY 2003 y FY 2004
del área de columna.
8. Haga clic con el botón secundario en cualquier parte del área de datos y, a continuación,
haga clic en Mostrar celdas vacías para quitar la marca de verificación situada junto a esta
opción y ocultar todas las celdas vacías (esta opción también está disponible en la barra de
herramientas de la ficha Cálculos). Esto hará más fácil ver a todos los empleados que
tengan valores de cuota de importe de venta.
9. En el panel Tabla dinámica, intente expandir FY 2005 en el área de columna.
Observe que no puede expandir FY 2005 porque los valores para el miembro H1 FY 2005
en la intersección de la medida Sales Amount Quota y la jerarquía de atributo Employee
Name no se han calculado (porque estaban fuera del ámbito actual).
10. Para ver las celdas vacías de los valores para miembros H1 FY 2005, haga clic en
cualquier parte del panel Tabla dinámica y, a continuación, haga clic en Mostrar celdas
vacías en la barra de herramientas de la ficha Cálculos para mostrar todas las celdas
vacías.
11. En el menú Depurar, haga clic en Detener depuración o presione Mayús-F5 en el teclado.
12. Quite el punto de interrupción del script de cálculo; para ello, haga clic en el punto rojo del
margen izquierdo.
Asignar cuotas de importe de venta a los semestres y trimestres del año fiscal 2005
En este procedimiento, se modifica el ámbito para incluir los miembros de semestre fiscal de Fiscal
Year 2005 en lugar del miembro Fiscal Year 2005, y se asigna posteriormente la mitad del valor de
la cuota de importe de venta para el año fiscal 2005 (Fiscal Year 2005) a cada semestre del año
fiscal 2005 (Fiscal Year 2005). A continuación, modificará el ámbito para incluir los miembros de
trimestre fiscal de Fiscal Year 2005 en lugar del miembro Fiscal Year 2005 y asignará una cuarta
parte del valor de cuota de importe de venta para el año fiscal 2005 (Fiscal Year 2005) a cada
trimestre del año fiscal 2005 (Fiscal Year 2005). Para completar la tarea, probará estas
asignaciones.
Para asignar cuotas de importe de venta a los semestres y trimestres del año fiscal
2005
1. En la vista Script del panel Expresiones de cálculo, escriba la siguiente instrucción en una
nueva línea al final del script de cálculo:
Copiar
Esta instrucción SCOPE es una instrucción SCOPE anidada porque no aparece ninguna
instrucción END SCOPE entre esta instrucción SCOPE y la instrucción SCOPE anterior.
Cuando una instrucción SCOPE está anidada, la instrucción SCOPE anidada hereda el
ámbito primario para aquellos atributos cuyo ámbito no se haya vuelto a definir. La
instrucción SCOPE anterior no modifica directamente la medida Sales Amount Quota, la
jerarquía definida por el usuario Employees ni la jerarquía definida por el usuario Fiscal
Date. En su lugar, agrega cada miembro de la jerarquía de atributo Fiscal Semester a la
definición del subcubo mediante la función Members. Para obtener más información, vea
Members (Set) (MDX). Como resultado de la instrucción SCOPE anidada, el espacio del
cubo incluye ahora a todos los miembros que estén en la intersección del miembro
Employee y la medida Sales Amount Quota de cualquier semestre fiscal de Fiscal Year
2005. Observe que actualmente solo hay un semestre fiscal en Fiscal Year 2005 en el
cubo.
Copiar
Esta instrucción asigna a cada semestre fiscal en el espacio del cubo definido el valor
calculado para el trimestre fiscal. La función CurrentMember.Parent se utiliza para asignar
a cada miembro la mitad del valor de su primario. Para obtener más información, vea
CurrentMember (MDX) y Parent (MDX).
Copiar
Esta instrucción SCOPE también es una instrucción SCOPE anidada porque no aparece
ninguna instrucción END SCOPE entre esta instrucción SCOPE y la instrucción SCOPE
anterior. La instrucción SCOPE anterior no modifica directamente la medida Sales Amount
Quota, la jerarquía definida por el usuario Employees ni la jerarquía definida por el usuario
Fiscal Date. En su lugar, agrega cada miembro de la jerarquía de atributo Fiscal Quarter a
la definición del subcubo mediante la función Members. Como resultado, el espacio del
cubo incluye ahora a todos los miembros que estén en la intersección del miembro
Employee y la medida Sales Amount Quota de cualquier trimestre fiscal del año fiscal
2005. Observe que actualmente solo hay un trimestre fiscal en Fiscal Year 2005 en el
cubo.
Copiar
Esta instrucción asigna a cada trimestre fiscal en el espacio del cubo definido el valor
calculado para el trimestre fiscal. La función CurrentMember.Parent se utiliza para asignar
a cada miembro la mitad del valor de su primario.
6. Haga clic en cualquier parte del área de datos del panel Tabla dinámica y, a continuación,
en Mostrar celdas vacías en la barra de herramientas de la ficha Cálculos para ocultar las
celdas vacías.
Observe que el panel de datos se llena con las mismas medidas y jerarquías que utilizaba
el depurador en el último paso a través, y que se ha calculado el valor para el miembro H1
FY 2005, la mitad del valor de su primario, como aparece en la siguiente imagen.
Por último, observe que el valor para cada miembro de FY 2005 se vuelve a calcular en la
agregación de sus miembros, que en este caso es el primer semestre fiscal del año fiscal.
El valor del miembro Fiscal Year 2005 se ve afectado por el cálculo del miembro Fiscal
Semester 2005 porque cada script se ejecuta como paso independiente. Para fijar un valor
existente de modo que no se vea afectado por las instrucciones posteriores en el script de
cálculo, utilice la instrucción FREEZE. Para obtener más información, vea Instrucción
FREEZE (MDX).
8. Haga clic en cualquier parte del área de datos del panel Tabla dinámica y, a continuación,
en Mostrar celdas vacías en la barra de herramientas de la ficha Cálculos.
9. En el área de columna, expanda Q1 FY 2005.
Observe que no hay ningún valor asignado a los dos meses del primer trimestre del año
fiscal 2005 (Fiscal Year 2005) porque estos miembros ya no están en el ámbito del
subcubo actual (hasta que se ejecuten las dos instrucciones finales del script). La
dimensión de tiempo en el cubo Tutorial de Analysis Services solo contiene los dos
primeros meses del año fiscal 2005. Por consiguiente, no hay ningún miembro Q2 FY
2005.
10. Presione F10 para ejecutar la instrucción SCOPE y, a continuación, presione F10 de nuevo
para ejecutar la instrucción final en el script de cálculo, que aplica el cálculo al subcubo
actual.
Observe que se calcula el valor para el miembro Q1 FY 2005, y que se vuelve a calcular el
valor de H1 FY 2005 y los valores de miembro FY2005 (como la agregación de sus
miembros secundarios), como se indica en la siguiente imagen. Observe también que no
se calcula el valor para cada mes fiscal del año fiscal 2005 (julio y agosto de 2005). En el
siguiente procedimiento, asignará los valores adecuados a cada trimestre.
En este procedimiento, modificará el ámbito para incluir el nivel del mes fiscal en todos los años
fiscales (las instrucciones del ámbito anterior limitaban los cálculos al año fiscal 2005 únicamente).
A continuación, asignará una tercera parte del valor del trimestre fiscal para la cuota de venta de
cada empleado a cada mes fiscal.
1. En el panel Expresiones de cálculo, agregue las siguiente instrucciones en una nueva línea
al final del script de cálculo:
Copiar
Esta instrucción SCOPE es otra instrucción de ámbito anidada que modifica el espacio del
cubo en el que se aplicará una expresión MDX para asignar las cuotas de venta a cada
mes fiscal según el valor de cada trimestre fiscal. Esta instrucción SCOPE es parecida a la
instrucción SCOPE anidada anterior, pero observe que el ámbito de la jerarquía definida
por el usuario Fiscal Date se vuelve a definir. Por lo tanto, los miembros del espacio del
cubo incluirán ahora todos los miembros Fiscal Month de la dimensión Date en lugar de
únicamente los miembros Fiscal Month de Fiscal Year 2005.
Nota
Compare esta modificación del ámbito del cubo con la modificación del ámbito del cubo del
procedimiento anterior para asegurarse de entender la diferencia entre las dos
instrucciones de cambio de ámbito.
2. En el panel Expresiones de cálculo, agregue las siguiente instrucciones en una nueva línea
al final del script de cálculo:
Copiar
Esta instrucción asigna a cada miembro Month de la jerarquía Fiscal Date una tercera
parte del valor de su primario (nivel de trimestre). Este cálculo se aplicará a todos los
meses fiscales del cubo.
Observe que actualmente no se ha calculado ningún valor para julio de 2004 ni para
agosto de 2004.
5. Haga clic con el botón secundario en el panel Datos y, a continuación, haga clic en Mostrar
celdas vacías para mostrar solamente las celdas que tienen valores.
De esta forma podrá ver más fácilmente cómo se aplica la instrucción final en el script de
cálculo.
Observe que el valor Sales Amount Quota para cada empleado de cada mes fiscal se
calcula en un valor que es igual a una tercera parte de su valor primario.
Observe que el valor para cada mes fiscal es igual que el valor total para el trimestre fiscal.
Nota
Para disponer de un proyecto completado de la lección 6, descargue e instale los ejemplos. Para
obtener más información, vea Consideraciones para instalar ejemplos y bases de datos de ejemplo
de SQL Server.
Para definir indicadores clave de rendimiento (KPI), deberá primero definir un nombre de KPI y el
grupo de medida con el que desea asociar el KPI. Un KPI se puede asociar con todos los grupos
de medida o con un solo grupo de medida. Se definirán entonces los siguientes elementos del KPI:
La expresión de valor
Una expresión de valor es una medida física como Sales, una medida calculada como
Profit o un cálculo que se define dentro del KPI mediante una expresión de Expresiones
Multidimensionales (MDX).
La expresión objetivo
Una expresión objetivo es un valor, o una expresión MDX que se resuelve en un valor, que
define el objetivo de la medida definida por la expresión de valor. Por ejemplo, una
expresión objetivo podría ser la cantidad en la que los responsables de una compañía
desean incrementar las ventas o el beneficio.
La expresión de estado
Una expresión de estado es una expresión MDX que Analysis Services utiliza para evaluar
el estado actual de la expresión de valor en comparación con la expresión objetivo. Una
expresión objetivo es un valor normalizado en el intervalo de -1 a +1, donde -1 es muy
malo y +1 es muy bueno. La expresión de estado muestra un gráfico para ayudarle a
La expresión de tendencia
Una expresión de tendencia es una expresión MDX que Analysis Services utiliza para
evaluar la tendencia actual de la expresión de valor en comparación con la expresión
objetivo. La expresión de tendencia ayuda al usuario corporativo a determinar rápidamente
si la expresión de valor está mejorando o empeorando en relación con la expresión
objetivo. Puede asociar uno de los diversos gráficos con la expresión de tendencia para
ayudar a los usuarios corporativos a comprender rápidamente la tendencia.
Además de estos elementos definidos para un KPI, también deben definirse varias propiedades de
un KPI. Estas propiedades incluyen una carpeta de muestra, un KPI primario si el KPI se calcula
desde otros KPI, el miembro de hora actual si lo hay, el peso del KPI si lo tiene y una descripción
del KPI.
Nota
Para obtener más ejemplos de KPI, vea los ejemplos de KPI en la ficha Plantillas del panel
Herramientas de cálculo o en los ejemplos del almacén de datos de ejemplo Adventure Works DW.
Para obtener más información, vea Almacenamiento de datos de ejemplo AdventureWorksDW.
En las tareas de esta lección definirá los KPI en el proyecto Analysis Services Tutorial y, a
continuación, examinará el cubo Analysis Services Tutorial con estos KPI. Definirá los siguientes
KPI:
Reseller Revenue
Este KPI se utiliza para medir la forma en que comparar las ventas reales del distribuidor
con las cuotas de venta para ventas del distribuidor, la distancia que separa las ventas del
el objetivo y qué tendencia se dirige al objetivo.
Este KPI se utiliza para determinar la distancia que existe entre el margen de beneficio
bruto de cada categoría de producto y el objetivo especificado de cada categoría de
producto, y también para determinar la tendencia hasta alcanzar este objetivo.
1. Abra el Diseñador de cubos para el cubo Analysis Services Tutorial y, a continuación, haga
clic en la ficha KPI.
La ficha KPI incluye varios paneles. En la parte izquierda de la ficha están el panel
Organizador de KPI y el panel Herramientas de cálculo. El panel de muestra del centro de
la ficha contiene los detalles del KPI seleccionado en el panel Organizador de KPI.
Copiar
Case
When
KpiValue("Reseller Revenue")/KpiGoal("Reseller Revenue")>=.95
Then 1
When
KpiValue("Reseller Revenue")/KpiGoal("Reseller Revenue")<.95
And
KpiValue("Reseller Revenue")/KpiGoal("Reseller Revenue")>=.85
Then 0
Else-1
End
Esta expresión MDX proporciona lo básico para evaluar el progreso hacia el objetivo. En
esta expresión MDX, si las ventas reales del distribuidor están por encima del 85 por ciento
del objetivo, se utilizará un valor de 0 para llenar el gráfico seleccionado. Como el gráfico
seleccionado es un indicador, el puntero del indicador estará a mitad de camino entre el
estado vacío y el lleno. Si las ventas reales por distribuidor están por encima del 90 por
ciento, el puntero del indicador ocupará tres cuartas partes del espacio entre vacío y lleno.
Copiar
Case
When IsEmpty
(ParallelPeriod
([Date].[Calendar Date].[Calendar Year],1,
[Date].[Calendar Date].CurrentMember))
Then 0
When (
KpiValue("Reseller Revenue") -
(KpiValue("Reseller Revenue"),
ParallelPeriod
([Date].[Calendar Date].[Calendar Year],1,
[Date].[Calendar Date].CurrentMember))
/
(KpiValue ("Reseller Revenue"),
ParallelPeriod
([Date].[Calendar Date].[Calendar Year],1,
[Date].[Calendar Date].CurrentMember)))
>=.02
Then 1
When(
KpiValue("Reseller Revenue") -
(KpiValue ( "Reseller Revenue" ),
ParallelPeriod
([Date].[Calendar Date].[Calendar Year],1,
[Date].[Calendar Date].CurrentMember))
/
(KpiValue("Reseller Revenue"),
ParallelPeriod
([Date].[Calendar Date].[Calendar Year],1,
[Date].[Calendar Date].CurrentMember)))
<=.02
Then -1
Else 0
End
Esta expresión MDX proporciona lo básico para evaluar la tendencia hasta lograr el
objetivo definido.
Observe que las secciones Valor, Objetivo y Estado del KPI reflejan los valores para el
nuevo período de tiempo.
Copiar
Case
When [Product].[Category].CurrentMember Is
[Product].[Category].[Accessories]
Then .40
When [Product].[Category].CurrentMember
Is [Product].[Category].[Bikes]
Then .12
When [Product].[Category].CurrentMember Is
[Product].[Category].[Clothing]
Then .20
When [Product].[Category].CurrentMember Is
[Product].[Category].[Components]
Then .10
Else .12
End
Copiar
Case
When KpiValue( "Product Gross Profit Margin" ) /
KpiGoal ( "Product Gross Profit Margin" ) >= .90
Then 1
When KpiValue( "Product Gross Profit Margin" ) /
KpiGoal ( "Product Gross Profit Margin" ) < .90
And
KpiValue( "Product Gross Profit Margin" ) /
KpiGoal ( "Product Gross Profit Margin" ) >= .80
Then 0
Else -1
End
Esta expresión MDX proporciona lo básico para evaluar el progreso hacia el objetivo.
Copiar
Case
When IsEmpty
(ParallelPeriod
([Date].[Calendar Date].[Calendar Year],1,
[Date].[Calendar Date].CurrentMember))
Then 0
When VBA!Abs
(
KpiValue( "Product Gross Profit Margin" ) -
(
KpiValue ( "Product Gross Profit Margin" ),
ParallelPeriod
(
[Date].[ Calendar Date].[ Calendar Year],
1,
[Date].[ Calendar Date].CurrentMember
)
)/
(
KpiValue ( "Product Gross Profit Margin" ),
ParallelPeriod
(
[Date].[ Calendar Date].[ Calendar Year],
1,
[Date].[ Calendar Date].CurrentMember
)
)
) <=.02
Then 0
When KpiValue( "Product Gross Profit Margin" ) -
(
KpiValue ( "Product Gross Profit Margin" ),
ParallelPeriod
(
[Date].[ Calendar Date].[ Calendar Year],
1,
[Date].[ Calendar Date].CurrentMember
)
)/
(
KpiValue ( "Product Gross Profit Margin" ),
ParallelPeriod
(
[Date].[Calendar Date].[Calendar Year],
1,
[Date].[Calendar Date].CurrentMember
)
) >.02
Then 1
Else -1
End
Esta expresión MDX proporciona lo básico para evaluar la tendencia hasta lograr el
objetivo definido.
Aparece el KPI Product Gross Profit Margin y muestra el valor de KPI para Q3 CY 2003 y
el territorio de ventas North America.
En esta lección, aprenderá a definir acciones en el proyecto de Analysis Services. Una acción es
sólo una instrucción de Expresiones multidimensionales (MDX) que se almacena en Analysis
Services y que se puede incorporar en las aplicaciones cliente e iniciarse por el usuario.
Nota
Para disponer de un proyecto completado de la lección 7, descargue e instale los ejemplos. Para
obtener más información, vea Consideraciones para instalar ejemplos y bases de datos de ejemplo
de SQL Server.
Las acciones permiten a los usuarios iniciar una aplicación o realizar otros pasos en el contexto de
un elemento seleccionado. Para obtener más información, vea Acciones (Analysis Services - Datos
multidimensionales), Definir y configurar acciones (Analysis Services - Datos multidimensionales)
Nota
Para obtener ejemplos de acciones, vea los ejemplos de acciones en la ficha Plantillas del panel
Herramientas de cálculo o en los ejemplos del almacén de datos de ejemplo Adventure Works DW.
Para obtener más información, vea Almacenamiento de datos de ejemplo AdventureWorksDW.
En esta tarea, se define, utiliza y modifica una acción de obtención de detalles a través de
la relación de dimensión de hecho definida anteriormente en este tutorial.
En esta lección, aprenderá a definir perspectivas y traducciones. Puede definir perspectivas para
reducir la complejidad aparente de un cubo, y definir traducciones que permitan a los usuarios ver
los metadatos del cubo en el idioma que desee.
Nota
Para disponer de un proyecto completado de la lección 8, descargue e instale los ejemplos. Para
obtener más información, vea Consideraciones para instalar ejemplos y bases de datos de ejemplo
de SQL Server.
En esta tarea, se definen y examinan perspectivas para simplificar la vista del cubo para
usuarios o usos específicos.
Una perspectiva puede simplificar la vista de un cubo para fines específicos. De manera
predeterminada, los usuarios pueden ver todos los elementos de un cubo para los que tengan
permisos. Lo que observan los usuarios cuando ven un cubo Analysis Services entero es la
perspectiva predeterminada del cubo. Una vista de todo el cubo puede resultar muy compleja para
que los usuarios naveguen por ella, en especial aquellos usuarios que sólo necesitan interactuar
con una pequeña parte del cubo a fin de satisfacer sus requisitos de informes e inteligencia
empresarial.
Para reducir la aparente complejidad de un cubo, puede crear subconjuntos visibles del cubo,
denominados perspectivas, que sólo muestran a los usuarios una parte definida de los grupos de
medida, medidas, dimensiones, atributos, jerarquías, indicadores clave de rendimiento (KPI),
acciones y miembros calculados del cubo. Esto puede ser especialmente útil para trabajar con
aplicaciones cliente que se escribieron para una versión anterior de Analysis Services. Estos
clientes, por ejemplo, no tienen el concepto de carpetas o perspectivas para mostrar, pero aparece
una perspectiva para los clientes antiguos como si fuera un cubo. Para obtener más información,
vea Perspectivas y Definir perspectivas.
Nota
Una perspectiva no es un mecanismo de seguridad sino, más bien, una herramienta para
proporcionar una mejor experiencia del usuario. Toda la seguridad de una perspectiva se hereda
del cubo subyacente.
En las tareas de este tema, definirá varias perspectivas diferentes y, a continuación, examinará el
cubo a través de cada una de estas nuevas perspectivas.
1. Abra el Diseñador de cubos para el cubo Analysis Services Tutorial y, a continuación, haga
clic en la ficha Perspectivas.
Todos los objetos y sus tipos de objeto aparecen en el panel Perspectivas, como en la
siguiente imagen.
Cuando los usuarios examinen el cubo mediante esta perspectiva, esta será la medida que
los usuarios verán a menos que especifiquen alguna otra medida.
Nota
También puede establecer la medida predeterminada para todo el cubo Analysis Services
Tutorial en la ventana Propiedades de la ficha Estructura de cubo del cubo.
Nota
Dentro de cada dimensión, también puede seleccionar individualmente las jerarquías
definidas por el usuario y los atributos que desee que aparezcan en una perspectiva.
Definir una perspectiva Reseller Sales
Cuando los usuarios examinen el cubo mediante esta perspectiva, esta medida será la
medida que los usuarios verán a menos que especifiquen alguna otra medida.
Nota
No puede especificar una medida calculada como medida predeterminada.
Observe que aparecen todas las medidas y todos los grupos de medida definidos.
Observe que sólo aparecen aquellos objetos especificados para la perspectiva Internet
Sales, como se muestra en la siguiente imagen.
Observe que sólo aparece el grupo de medida Internet Sales, junto con los miembros
calculados Internet GPM e Internet Sales Ratio to All Products.
7. Expanda Internet Sales, haga clic con el botón secundario en Internet Sales-Sales Amount
y, a continuación, seleccione Agregar a área
de datos.
En las tareas de este tema, se definen las traducciones de metadatos de un conjunto limitado de
objetos de dimensión de la dimensión Date y de objetos de cubo del cubo Analysis Services
Tutorial. Entonces podrá buscar entre estos objetos de dimensión y de cubo para examinar las
traducciones de metadatos.
Aparecerá una nueva columna en la que podrá definir las traducciones españolas para los
objetos de metadatos que desee traducir. En este tutorial, solo traduciremos un pequeño
número de objetos para ilustrar el proceso.
Observe que al escribir estas traducciones, aparecen puntos suspensivos (…). Si hace clic
en estos puntos suspensivos podrá especificar una columna en la tabla subyacente que
proporciona traducciones para cada miembro de la jerarquía de atributo.
7. Haga clic en los puntos suspensivos (…) de la traducción Español (España) del atributo
Month Name.
Especificar traducciones para los metadatos del cubo Analysis Services Tutorial
Para especificar traducciones para los metadatos del cubo Analysis Services
Tutorial
Los metadatos en el idioma predeterminado de dicho objeto de cubo aparecen tal como se
muestran en la siguiente imagen. El idioma predeterminado en el cubo Analysis Services
Tutorial es el inglés.
Aparecerá una nueva columna en la que podrá definir las traducciones españolas para los
objetos de metadatos que desee traducir. En este tutorial, solo traduciremos un pequeño
número de objetos para ilustrar el proceso.
5. En la fila para el objeto Caption del grupo de medida Internet Sales, escriba Ventas por
lnternet en la columna de traducción Español (España) y Ventes D'Internet en la columna
Francés (Francia).
6. En la fila para el objeto Caption de la medida Internet Sales-Sales Amount, escriba
Cantidad de las Ventas por Internet en la columna de traducción Español (España) y
Quantité de Ventes d'Internet en la columna de traducción Francés (Francia).
Observe que la medida Internet Sales-Sales Amount aparece en inglés en este grupo de
medida.
Observe que los elementos del panel de metadatos se vuelven a rellenar. Una vez que los
elementos del panel de metadatos se vuelvan a rellenar, observe cómo la medida Internet
Sales-Sales Amount ya no aparece en la carpeta para mostrar Venta por Internet. En su
lugar, aparecerá en español en una nueva carpeta para mostrar denominada Ventas por
lnternet, tal como aparece en la siguiente imagen.
6. En el panel de metadatos, haga clic con el botón secundario del mouse en Importe de
venta por Internet y seleccione Agregar a área de datos.
7. En el panel de metadatos, expanda Fecha, Calendario, haga clic con el botón secundario
en Fecha.Calendar Date y seleccione Agregar a área de fila.
8. En el panel Datos, expanda CY 2004, H1 CY 2004 y, a continuación, expanda Q1 CY
2004.
Observe que los nombres de los meses aparecen en español, tal como se muestra en la
siguiente imagen.
Observe que los nombres de los meses aparecen ahora en francés y que el nombre de la
medida aparece ahora también en francés.
El dimensionamiento de datos de hecho mediante una dimensión de hecho sin filtrar correctamente
los datos devueltos por la consulta puede producir un rendimiento lento de las consultas. Para
evitarlo, puede definir una acción de obtención de detalles que restrinja el número total de filas que
se devuelven. Esto mejorará significativamente el rendimiento de las consultas.
En las tareas de este tema, definirá una acción de obtención de detalles para devolver información
detallada de pedidos para las ventas a clientes a través de Internet.
1. En el Diseñador de cubos del cubo Analysis Services Tutorial, haga clic en la ficha
Acciones.
La ficha Acciones incluye varios paneles. En la parte izquierda de la ficha están el panel
Organizador de acciones y el panel Herramientas de cálculo. El panel situado a la derecha
de los dos paneles es el panel Mostrar, que contiene los detalles de la acción que está
seleccionada en el panel Organizador de acciones.
3. En el cuadro Nombre, cambie el nombre de esta acción por Internet Sales Details
Drillthrough Action.
4. En la lista Miembros de grupo de medida, seleccione Internet Sales.
5. En el cuadro Columnas de obtención de detalles, seleccione Internet Sales Order Details
en la lista Dimensiones.
6. En la lista Columnas devueltas, active las casillas Item Description y Order Number y, a
continuación, haga clic en Aceptar. La siguiente imagen muestra la plantilla de Acción con
el aspecto que debería tener en este punto del procedimiento.
Esta configuración limita el número de filas devueltas y especifica el título que aparece en
el menú de la aplicación cliente. La siguiente imagen muestra esta configuración en el
cuadro Propiedadesadicionales.
7. Haga clic en la celda de datos del panel Datos, haga clic con el botón secundario sobre la
misma y, a continuación, haga clic en Drillthrough to Order Details.
Observe que sólo se han definido tres atributos para esta dimensión.
2. En el panel Vista de origen de datos, haga clic con el botón secundario en un área abierta
y, a continuación, haga clic en Mostrar todas las tablas.
3. En el menú Formato, elija Diseño automático y haga clic en Diagrama.
4. Busque la tabla InternetSales (dbo.FactInternetSales); para ello, haga clic con el botón
secundario en un área abierta del panel Vista de origen de datos. A continuación, haga clic
en Buscar tabla, en InternetSales y, por último, en Aceptar.
5. Cree nuevos atributos basados en las siguientes columnas:
o OrderDateKey
o DueDateKey
o ShipDateKey
6. Cambie la propiedad Nombre del atributo Order Date Key por Order Date. A continuación,
haga clic en el botón de exploración de la propiedad Columna de nombre y, en el cuadro
de diálogo Columna de nombre, seleccione Date como tabla de origen y SimpleDate como
columna de origen. Haga clic en Aceptar.
7. Cambie la propiedad Nombre del atributo Due Date Key por Due Date y, a continuación,
usando el mismo método que en el caso del atributo Order Date Key, cambie la propiedad
Columna de nombre de este atributo por Date.SimpleDate (WChar).
8. Cambie la propiedad Nombre del atributo Ship Date Key por Ship Date y, a continuación,
cambie la propiedad Columna de nombre de este atributo por Date.SimpleDate (WChar).
9. Vaya a la ficha Acciones del Diseñador de cubos para el cubo Analysis Services Tutorial.
10. En el cuadro Columnas de obtención de detalles, seleccione las casillas para agregar las
siguientes columnas a la lista Columnas devueltas y, a continuación, haga clic en Aceptar:
o Order Date (Fecha de pedido)
o Due Date (Fecha de vencimiento)
o Ship Date (Fecha de envío)
En esta tarea, se define un rol de seguridad que tiene permisos para procesar la base de
datos de Analysis Services y, a continuación, se prueba dicho rol de seguridad. Para
obtener más información, vea Conceder permisos administrativos dentro de una base de
datos.
Después de instalar una instancia de Analysis Services, todos los miembros del grupo local de
administradores son miembros del rol del servidor Analysis Services de dicha instancia y tienen
permisos en el servidor para llevar a cabo cualquier tarea dentro de la instancia de Analysis
Services. De manera predeterminada, ningún otro usuario tiene permiso para administrar o ver
objetos en la instancia de Analysis Services.
Un miembro del rol Servidor de Analysis Services puede conceder a los usuarios acceso
administrativo a todo el servidor convirtiéndolos en miembros del rol Servidor, que les concede
acceso sin restricción a todos los objetos y datos de Analysis Services en dicha instancia. Un
miembro del rol Servidor de Analysis Services puede conceder a los usuarios acceso de forma más
limitada concediéndoles permisos administrativos o de acceso limitados o completos en el nivel de
base de datos. Los permisos administrativos limitados incluyen permisos Procesar o Leer definición
en el nivel de base de datos, cubo o dimensión.
En las tareas de este tema definirá un rol de seguridad Procesar objetos de base de datos que
conceda a los miembros del rol permiso para procesar todos los objetos de la base de datos, pero
ningún permiso para ver datos de la base de datos.
Observe que no hay usuarios ni grupos en este rol. Está creando un rol en este
procedimiento. Tras la implementación, un administrador puede agregar usuarios o grupos
al rol.
Observe que los miembros de este rol tienen permisos para procesar esta base de datos,
pero no tienen permiso para obtener acceso a los datos del cubo Analysis Services Tutorial
y no tienen acceso a obtención de detalles o cubo local, como se muestra en la siguiente
imagen.
Observe que los miembros de este rol tienen permisos para procesar todos los objetos de
dimensión de esta base de datos y que, de manera predeterminada, tienen permisos de
lectura para tener acceso a cada objeto de dimensión de la base de datos del Tutorial de
Analysis Services:
En Microsoft SQL Server, miembros de la función de servidor para SQL Server Analysis Services
pueden crear una o más funciones de base de datos dentro de una base de datos y, a
continuación, conceder permisos administrativos completos o limitados dentro de la base de datos
a estas funciones de base de datos. A continuación, los miembros de la función de servidor de
Analysis Services pueden agregar usuarios y grupos de Microsoft Windows a estas funciones de
servidor.
En los siguientes temas se describen los distintos permisos que la función de servidor Analysis
Services puede conceder a una función de base de datos.