...
Parametrización Simple (Parámetros Dinámicos)
...
Wiki Markup |
---|
{scrollbar} |
Page Tree | ||
---|---|---|
|
...
Con frecuencia los reportes requieren cierto grado de parametrización para que el propio usuario pueda filtrar la información que se despliega, restringiendo así el análisis a subconjuntos de la información.
En esta sección se describe como agregar un parámetro simple a un reporte paso a paso, utilizando un ejemplo sencillo con datos que provienen del cubo Vinos distribuido con el producto.
El ejemplo terminado puede consultarse aquí.
Creando un parámetro dinámico
Para poder definir un parámetro dinámico es necesario primero haber creado un conjunto de datos (Data Set).
Primero cree una fuente de datos (Data Source) de tipo O3 Data Source, que contenga la siguiente información:
* Name O3 MDX View
* Query Type: MDX Query
Luego cree un conjunto de datos (Data Set) que contenga la siguiente información:
* Name Vendedores
* Data Source: O3 MDX View
* Data Set Type: O3 Data Set
* Query La siguiente expresion en MDX:al reporte que permita desplegar los datos de un único vendedor sin que esto afecte la estructura del reporte.
Creando un nuevo parámetro
- Desde el panel Data Explorer presionar el botón derecho del mouse sobre el elemento Report Parameters
- Crear un nuevo parámetro
Esta acción abre el editor de parámetros - Indique los siguientes datos del parámetro
Name:
El nombre del parámetro
En nuestro caso VendedorData type:
Tipo de dato del parámetro
En nuestro caso StringDisplay Type:
Forma de mostrar los datos
En nuestro caso List Box - La selección de la forma en que se despliegan los datos como List Box despliega un conjunto de opciones adicionales propias de esta forma de visualización.
La lista desplegable (list box) podrá contener opciones estáticas o dinámicas.
El caso estático permite al diseñador del reporte indicar de forma estática la lista de elementos que se incluirán en la lista.
El caso dinámico permite al diseñador definir una consulta que cargue la lista con datos almacenados, por ejemplo, en un cubo de O3 - Indique el tipo de lista dinámica
Este tipo de parámetro requiere de la existencia de un Conjunto de Datos (Data Set) desde donde se tomarán los valores para cargar la lista. - Utilizando el botón Create New... cree un nuevo Conjunto de datos como se indica a continuación:
Name
Vendedores
Data Source
O3 Local MDX
Data Set Type
O3 Data Set
- Ingrese la siguiente consulta MDX en la especificación del Data Set
Code Block sql sql SELECT {[Vendedores].[Vendedor].members} ON COLUMNS
...
FROM [Vinos]
...
Note Para más detalles sobre la definición de un Data Set consultar la sección Especificando los datos a utilizar
Una vez realizado el Data Set el la vista Data Explorer (Explorador de datos) de su eclipse deberá aparecer de la siguiente manera:
Creando el Parámetro
Para crear el parámetro deberá seguir los siguientes pasos:
1. Seleccione la opción New Parameter que se despliega al realizar click derecho sobre Report Parameters. Esto despliega la pantalla siguiente:
2. Complete la pantalla con los siguientes datos:
Name: | El nombre del parámetro |
Data type: | Tipo de dato del parámetro. |
Display Type: | Forma de mostrar los datos |
La pantalla cambiará por la siguiente:
3. Seleccione la opción Dynamic señalado por la flecha roja. La pantalla volverá a cambiar por la siguiente:
- Acepte los cambios del editor del Data Set
- Complete los datos del parámetro con la nueva información:
Data Set:
Conjunto de datos al cual está asociado el parámetro.
En nuestro caso usaremos el conjunto de datos VendedoresSelect value column:
...
Campo del Data Set que contiene la clave del parámetro.
En nuestro caso usaremos unique_nameSelect display text:
...
Campo del Data Set que contiene la etiqueta del parámetro a mostrar al usuario
En nuestro caso label
La pantalla deberá quedar de la siguiente manera:
...
- Finalmente el editor debería mostrar lo siguiente
- Presione el botón OK para concluir la creación del Parámetro. Este aparecerá en la ventana Data Explorer bajo Report Parmeters.
En este punto es posible ejecutar el reporte para ver cómo se muestra una ventana donde se solicita el valor del parámetro de entre una lista de opciones que son obtenidas del cubo de O3
Utilizando el Parámetro
...
en la consulta
Una vez definido el parámetro en un nuevo Data Set con la siguiente información:
Name: Venta de vinos por vendedor
Data Source: O3 MDX View
Data Set Type: O3 Data Set
Como query ingrese la siguiente consulta en MDX:es necesario utilizarlo en la consulta para que filtre la misma y devuelva únicamente el Vendedor seleccionado por el usuario.
Para ello modificaremos el Conjunto de Datos (Data Set) definido en la sección Especificando los datos a utilizar.
- Desde el Data Explorer, hacer doble click sobre el Conjunto de Datos Ventas MDX.
- Modificar la consulta MDX para que contenga lo siguiente
Code Block sql sql SELECT {
...
[Measures].[Litros Vendidos], [Measures].[Venta Neta]} ON COLUMNS ,
...
CROSSJOIN({[Vendedores].[Vendedor].?}, {[Vinos].[Vino].members}) ON ROWS FROM [Vinos
...
]
...
title | Nota |
---|
...
- Notar el signo de interrogación
...
En su Data Explorer deberá aparecer "Venta de vinos por vendedor" bajo Data Sets.
Siga los siguientes pasos:
1. Haga doble click sobre Venta de vinos por vendedor aparecerá la siguiente pantalla:
2. Haga click en Parameters, su pantalla cambiará por la siguiente:
3. Haga click en New. Aparecerá una pantalla similar a la siguiente:
Completelá con los siguientes datos:
Name: param1
Data Type: String
Direction: Input
Default Value: N/A
Linked To Report Parameter: Vendedor
...
Name:
- en la sección correspondiente a las filas. Este signo marca el lugar donde se sustituirá el valor del parámetro cuando se ejecute la consulta.
- Seleccione Parameters en el editor del Data Set
- Agregue un nuevo parámetro con el botón New...
- Configure el parámetro de acuerdo a lo siguiente
Name:
El nombre del parámetro
En nuestro caso
...
Vendedor
Data Type:
Tipo del
...
parámetro
En
...
nuesto caso no requiere modificación
Direction:
Dirección del parámetro (Entrada o Salida)
En nuestro caso usaremos inputDefault Value:
Valor que tendrá el parámetro por defecto
En nuestro caso N/ALinked To Report Parameter:
Parámetro al cual está asociado
En nuestro caso Vendedor
4. Seleccione OK, aparecerá la siguiente pantalla:
5. Presione el botón OK.
Probando lo realizado
Para probar lo realizado cree una tabla con la información de Ventas de vinos por vendedor como se explica en Diseñando la forma del reporte
Seleccione Preview y aparecerá la siguiente pantalla:
Seleccione el vendedor del cual quiera ver los litros vendidos para cada vino y haga click en OK, aparecerá el detalle de los litros vendidos para cada vino del vendedor que seleccionó.
Por ejemplo si elige "Federico Moreira" como parámetro el reporte mostrará:
Vino | Litros Vendidos |
---|---|
Cabernet Sauvignon, Merlot | 4500 |
Cabernet, Tannat, Merlot | 0 |
Chenin, Gewurzt | 2250 |
... | ... |
Ugni Blanco | 0 |
...
- Finalmente resta ejecutar el reporte para ver cómo se filtran los datos para mostrar únicamente las ventas del Vendedor seleccionado
Wiki Markup {scrollbar}