Diseñando la forma del reporte
Ahora que ya se definieron los datos que se utilizarán en el reporte, así como los mecanismos para obtenerlos, es posible diseñar la estructura del reporte distribuyendo los datos en la página.
Todo reporte se organiza en diferentes secciones y estas secciones se ubican una a continuación de la otra en forma vertical.
Cada sección a su vez incluye un contenedor que es un elemento gráfico donde se ubica el resto de los componentes del reporte, como ser etiquetas, datos, imágenes, etc.
Existen 3 tipos de contenedores
- Grilla
- Tabla
- Lista
En este tutorial se utiliza una Tabla para ubicar los datos del reporte dada su flexibilidad y facilidad de uso. En particular la tabla permite:
- Iterar a través de todos los registros provenientes de un Conjunto de Datos
- Ubicar la información de una manera muy sencilla en un formato de filas y columnas
- Active la Paleta (Pallete)
La Paleta enumera todos los elementos que se pueden distribuir en un reporte
Observar que el cuadrante de arriba a la izquierda contiene tres tab: Palette, Data Explorer, Library Explorer - Arrastre una tabla desde la paleta a la hoja donde se irá definiendo el reporte.
Esta acción solicita la cantidad de columnas que tendrá la tabla y la cantidad de filas de detalle necesarias. Para este ejemplo se necesitan 4 columnas y 1 fila de detalle.
- Active el Explorador de Datos (Data Explorer)
El Explorador de Datos permite navegar por los datos disponibles para el reporte. En particular muestra las Fuentes de Datos y Conjuntos de Datos definidos en los pasos anteriores (O3 Local MDX y Ventas MDX respectivamente). - Expanda el Conjunto de Datos Ventas MDX definido para este reporte. Es posible ver los campos incluidos en dicho conjunto.
- Arrastre cada uno de los campos para soltarlos sobre las celdas de detalle de la tabla (Detail Row).
Esta acción irá poblando la tabla y agregando en la fila de encabezado un título para cada columna. Más tarde será posible cambiar estos encabezados.
De esta forma sencilla queda definido el reporte en su formato más básico con los datos obtenidos desde un cubo de O3.
Para ver cómo quedaría el reporte una vez ejecutado es posible seleccionar el tab Preview de la ventana de reporte o el botón View Report de la barra de herramientas (File >> View Report >> View report in web viewer)
Ordenando los registros del reporte
Cuando la información llega desde la consulta, ésta no necesariamente viene ordenada. Al momento de definir el reporte es posible indicar un criterio de ordenación de los datos diferente del establecido en la propia consulta o vista.
Para esto se usa el editor de propiedades.
- Seleccionar la tabla. Esto se hace haciendo click sobre la solapa con la etiqueta Table que aparece cuando se mueve el mouse por encima de la tabla
Al seleccionar la tabla el editor de propiedades despliega todos los atributos de la tabla que pueden ser modificados - Seleccione el tab Sorting para habilitar las opciones de ordenamiento de los registros de la tabla
- Presione el botón Add para agregar un nuevo criterio de ordenamiento
- Seleccione el campo por el cual se ordenarán los registros, por ejemplo Litros Vendidos
Es posible agregar varios campos al criterio de ordenamiento
El resultado de aplicar el nuevo orden puede observarse viendo una vista preliminar del reporte.
Agrupando registros del reporte
Muchas veces es deseable construir reportes que agrupan un conjunto de registros para facilitar su lectura o para mostrar datos adicionales para cada grupo.
En el caso que se expone en este tutorial parece natural presentar el reporte agrupando las ventas de vino por Vendedor, de modo que el nombre del Vendedor aparezca una única vez como encabezado del grupo y luego se muestre el detalle de los vinos vendidos por dicho Vendedor.
Esta operación de agrupar registros dentro de un reporte comunmente se conoce como agregar Cortes de Control.
En el ejemplo generaremos un corte de control para cada Vendedor
- Seleccione la tabla
- Seleccione el tab Groups del Editor de Propiedades para habilitar las opciones de agrupamiento
- Presione el botón Add para agregar un nuevo griterio de agrupamiento
- Ingrese Vendedores como nombre del grupo
- Seleccione el campo Vendedor (Vendedores_Vendedor) como criterio de agrupamiento. Adicionalmente se puede elegir el orden en que estos grupos se despliegan (ascendente o descendente)
- Acepte los cambios en el editor de grupos
Esta acción agrega una nueva fila de encabezado y de pie para el nuevo grupo y coloca en el encabezado el campo correspondiente al criterio de agrupamiento, en este caso el campo Vendedores_Vendedor - Al hacer esto tanto el campo de Vendedor en la fila de detalle, como el título de vendedor en el encabezado de la tabla, carecen de sentido por lo que se pueden eliminar
Agregando Totales Parciales
El paso siguiente consiste en agregar los subtotales por Vendedor tanto para los Litros Vendidos como para la Venta Neta
- Seleccionar la Paleta (Palette)
- Arrastrar una Agregación (Aggregation) en la fila correspondiente al pie del grupo (Group Footer Row) justo debajo de Litros Vendidos
Esto despliega el Editor de Agregaciones donde se define un nuevo lazo (binding) para el subtotal deseado.
Los binding permiten asignarle un nombre a un dato cualquiera o cálculo lo cual facilita la tarea de ubicarlo luego en el reporte - Ingresar Subtotal Litros Vendidos como nombre del binding.
- Seleccionar el campo Litros Vendidos como campo de datos (Data Field)
- Seleccionar el grupo Vendedores como grupo de agregación (Aggregate On)
- Al aceptar los cambios aparece en la tabla un nuevo elemento totalizador de la columna de Litros Vendidos por Vendedor.
Repetir la misma operación para la Venta Neta
Unknown macro: {scrollbar}