Parametrización en Cascada
En muchos casos, en los que el usuario debe elegir un valor entre una larga lista para un parámetro, es conveniente ir aproximando la búsqueda en varios pasos.
En el caso que se desarrolla en este turorial, en pasos anteriores se definió un parámetro para filtrar el reporte para un vendedor determinado. Una forma de facilitar la localización del vendedor es catalogarlo primero entre Distribuidor y Venta Directa.
De esta forma se podría solicitar primero el Canal para luego elegir el vendedor de la lista de vendedores de ese canal.
Esta sección explica cómo establecer esta dependencia entre los parámetros a través de Parámetros en Cascada.
Creando Parámetros en Cascada
Nota
Se recomienda haber leido antes la sección Parametrizacion Simple
- Cree un conjunto de datos (Data Set) para construir la lista de Canales
Name:
Canales
Data Source:
O3 Local MDX
Data Set Type:
O3 Data Set
Query
SELECT {[Vendedores].[Canal].members} ON COLUMNS FROM [Vinos]
- Cree un conjunto de datos (Data Set) para construir la lista de Vendedores de cada Canal
Name:
VendedoresDelCanal
Data Source:
O3 Local MDX
Data Set Type:
O3 Data Set
Query
SELECT {[Vendedores].?.children} ON COLUMNS FROM [Vinos]
El signo de interrogación será luego asociado al parámetro que identifique el Canal.
Ignorar cualquier mensaje de error que se muestre debido a que no puede resolver el parámetro - Desde el panel Data Explorer presionar el botón derecho del mouse sobre el elemento Report Parameters
- Crear un nuevo Parámetro en Cascada
- Ingrese Vendedores Del Canal como nombre del Parámetro
- Seleccione Multiple Data Set
Se utilizará un data set para cada paso del parámetro (los data sets creados en los pasos anteriores)
- Presione el botón Add para agregar un parámetro a la cascada.
- Ingrese los siguientes datos:
Name:
Canal
Data Set:
Canales
Value:
unique_name
Display Text:
label
- Presione OK para agregar el parámetro Canal a la cascada de parámetros, este será la raíz de la cascada.
Aparecerá la siguiente pantalla:
- Para continuar presione OK.
En su Data Explorer debe aparecer esta cascada de parámetros, de la siguiente forma:
Creando Parámetros relacionados
Para continuar se deberá crear un conjunto de datos que use el parámetro Canal para ello haga lo siguiente:
Cree un conjunto de datos (Data Set) que contenga la siguiente información:
* Name: Vendedores por Canal
* Data Source: O3 MDX View
* Data Set Type: O3 Data Set
* Query La siguiente expresion en MDX:
SELECT Descendants([Vendedores].?, [Vendedores].[Vendedor]) ON COLUMNS FROM [Vinos]
Nota
En la consulta aparece un signo de interrogación, lo que indica es que en ese lugar hay un parámetro.
Agregue el parámetro Canal en el conjunto de datos como se indica en Parametrizacion Simple
Una vez realizado el Data Set el la vista Data Explorer (Explorador de datos) de su eclipse deberá aparecer de la siguiente manera:
Para crear un parámetro relacionádo a canal siga los pasos:
- Haga click derecho sobre Cascading Parameter Group - Vendedores y elija la opción Edit.
Aparecerá la siguiente pantalla:
- Presione el boton Add para agregar un nuevo parámetro en la cascada.
- Ingrese los siguientes datos:
Name:
El nombre del parámetro
En nuestro caso Vendedor Por CanalData Set:
Conjunto de datos al cual está asociado el parámetro.
En nuestro caso usaremos el conjunto de datos Vendedores Por CanalValue:
Valor que tendrá el parámetro.
En nuestro caso usaremos unique_nameDisplay Text:
Texto a mostrar en el repotye
En nuestro caso label - Presione Add. Aparecerá la siguiente pantalla:
De esta manera hemos creado una cascada de parámetros donde Vendedor Por Canal depende de Canal y será recalculado cada vez que Canal cambie.
Probando lo realizado
Para probar lo realizado cree un nuevo Data Set con los siguientes datos:
* Name: Ventas por Canal y Vendedor
* Data Source: O3 MDX View
* Data Set Type: O3 Data Set
* Query La siguiente expresion en MDX:
SELECT {[Vendedores].?} ON COLUMNS, {[Vinos].[Vino].members} ON ROWS FROM [Vinos] WHERE Measures.[Litros Vendidos]
Nota
En la consulta aparece un signo de interrogación, lo que indica es que en ese lugar hay un parámetro.
Agregue el parámetro Vendedor Por Canal en el conjunto de datos como se indica en Parametrizacion Simple
Cree una tabla con la información de Ventas por Canal y Vendedor como se explica en Diseñando la forma del reporte
Seleccione Preview y aparecerá la siguiente pantalla:
En Canal aparecerán todos los canales de vendedores del cubo de Vinos, seleccione un canal y automáticamente se actualidará Vendedor Por Canal.
En Vendedor Por Canal aparecerán todos los vendedores del canal seleccionado, seleccione un vendedor y presione OK para ver el detalle de los litros de vinos vendidos por ese vendedor.
Por ejemplo si elige como canal "Venta Directa" y como vendedor "Federico Moreira" el repotre mostrará:
|| Vino
|| Litros Vendidos
||
Cabernet Sauvignon, Merlot |
4500 |
Cabernet, Tannat, Merlot |
0 |
Chenin, Gewurzt |
2250 |
... |
... |
Ugni Blanco |
0 |
Si usted desea cambiar el valor del parámetro deberá hacer click en Show Report Parameters y se volverá a abrir la ventana anterior, pudiendo elegir un nuevo canal y vendedor.