O3 Report
Alcance de este mini tutorial.
Se prentende que con este tutorial que el usuario obtenga los conceptos necesarios para poder construir reportes básicos. En caso de precisar reportes mas complejos sugerimos leer documentación en libros.
Instalando Eclipse+BIRT
................
- Linux : para la previsualizacion de los reportes en Linux generalmente se necesita una version de Mozilla instalada y referenciada hacia O3Reporting.
Un caso verificado implico la instalacion de mozilla-1.7.2-GTK2 y la referencia por la variable de ambiente MOZILLA_FIVE_HOME referenciando a esa instalacion.
FAQ Eclipse http://www.eclipse.org/swt/faq.php#browserlinux
Vista general del proceso de diseño de un reporte
Detallamos los pasos para conseguir un diseño robusto y coherente de un reporte
- Planear el reporte.
- Especificar la información a usar.
- Diseñar la forma del reporte.
- Formatear la información.
- Diseñar la página maestra.
- Testear el reporte.
Construyendo un reporte simple
En esta seccion mostraremos como construir paso a paso un reporte sobre un listado.
Se realizarán las siguientes tareas para llevar acabo el reporte.
- Crear un nuevo proyecto (si se usa BIRT RCP no es necesario este paso).
- Crear un nuevo reporte.
- Construir una fuente de datos (data source).
- Construir un conjunto de datos (data set).
- Diseñar el roporte de modo de mostrar cada una de las columnas del conjunto de datos.
- Ordenar la información.
- Formatear los datos para mejorar la presentación de los mismos.
- Crear un título para el reporte
Creando un nuevo proyecto
Eclipse organiza los archivos por proyectos. Ud puede crear un proyecto para contener todos sus reportes, o bien puede crear un proyecto para cada reporte. Si usa BIRT RCP esta parte no aplica.
Para ello vamos a Archivo->Nuevo->Proyecto. Nos aparece la pantalla siguiente:
Expandimos donde dice Bussines Intelligence and Reporting Tools y seleccionamos Report Preject lugo Next.
Le pondremos por nombre Mi preyecto.
y apretamos el botón Finish, en la ventana de navegación veremos que apareció nuestro proyecto.
Creando un Reporte
Un reporte se puede crea de dos formas:
- Comenzando con un diseño en blanco.
- Usando una plantilla prediseñada de reporte.
A los efectos de este tutorial comenzaremos de un reporte en blanco.
Entences hacemos File->New->Report, elegimos el preyecto en el cual crearemos nuestro reporte, en este caso Mi Proyecto. Y por nombre le pondremos al reporte mi_reporte.rptdesign
Luego el sistema nos da a elegir entre usar un reporte en blanco o usar plantillas. Elegimos Blank Report y apretamos Finish
Construir una fuente de datos (data source)
Antes de poder entrar a diseñar el reporte es necesario especificar como BIRT se conectara a una base de datos, esto se hace definiendo una fuente de datos.
A los efectos de este tutorial, estableceremos una fuente de datos para O3. veamos este preceso en detalle.
Seleccionamos una nueva fuente de datos, Data->New Data Source
Elegimos JDBC y le damos next
Tenemos 2 opciones para conectarnos a O3:
- Acceder a una vista
- Acceder al cubo con MDX
Veamos como completar el formulario para una conexión a una vista
Y ahora veamos para el caso de MDX
Podemos testear la conexión apretando el botón Test Connection...
Construir un Set de datos (Data set)
En esta etapa es en la que definimos la consulta propiamente dicha.
En el menú vamos a Data->New Data Set y veremos el siguiente dialogo
- En Data Set Name le pondremos el nombre con que queremos llamar a este Set.
- En Data Source nos da a elegir un data source que ya hallamos definido.
- En Dara Type elegimos SQL Select Query.
En la siguiente pantalla es que se define la consulta
Veamos en primera instancia para consultar una vista definida en el server
Aquí es importante destacar en el SQL el FROM de la clausula
'Vinos/VinosPorVendedor#_public'
- Vinos - es el nombre del cubo con que se lo publica en el server.
- VinosPorVendedor - es la vista de la cual me interesa extraer datos.
- #_public - indica como esta guardada la vista
Estos datos pueden ser sacados de la barra de estado del navegador web, luego de source=Vinos/VinosPorVendedor#_public en la página de marcadores.
Acontinuación no aparece la misma pantalla, pero con un menú de opciones entre ellas podemos hacer un vista previa (preview) de los datos que se traen con la consulta.
Veamos ahoro como seria para MDX
En este caso la diferencia con el anterior es que debemos elegir un Data Source para MDX y la sintaxis de la consulta difiere de la anterior
...
SELECT
{[<measures>].[<measures>].[Litros Vendidos]
,[<measures>].[<measures>].[Venta Bruta]} ON COLUMNS,
CROSSJOIN
({[Vendedores].[Vendedores].[Distribuidor].children}
,{[Vinos].[Vinos].children}) ON ROWS
FROM [Vinos]
Para este ejemplo lo que estamos es trayendo en la columnas los litros vendidos y la venta bruta. Para las filas estamos trayendo los vendedores y los vinos de forma que quedan anidados.
Por cuestiones de simpleza recomendamos el usa de las vistas sobre el uso mas complicado de MDX
Diseñando el Reporte
En esta parte del precedimiento insertaremos los elementos de nuestra consulta para realizar el reporte.
Comenzaremos por insertar un tabla, este elemento tiene la particularidad que interactua con todo el set de datos que trae la consulta. Para colocar un tabla hacemos Insert->Table
No quedara según la siguiente imagen
Elegimos Data Explorer y comenzamos a arrastrar los campos a la tabla a la zona de detalle, el sistema pone en forma automático los títulos
veremos lo siguiente
Para ver lo construido hasta el momente tenemos varias posibilidades:
- Cliquear el tab Preview de la ventana de diseño.
- File->View Report-> y elegir alguna de las opciones que nos brinda el menú.
Ordenando la información y agregando totales parciales
Cuando la información llega desde lo consulta, esta no tiene porque venir ordenada. Tenemos la posibilidad de ordenar la información con esta herramienta si ya no lo hicimos en la consulta misma.
Para esto usaremos el editor de propiedades. Señalamos la tabla y en el editor de propiedades nos aparecen todos los elementos que pueden ser configurados en la tabla
Dentro del editor de propiedades vamos al tab sorting. Luego apretamos el botón Add y podremos seleccionar por cual de las columnas establecemos el orden, se pueden agregar mas de un criterio (columna) para establecer el orden.
Luego pedimos la vista previa y vemos los resultados.
Creemos ahora totales parciales segun algún agrupamiento. Ej: Queremos lograr algo como la siguiente tabla
Vendedor | Cantidad Vendida |
---|---|
Pedro | 100 |
Pedro | 150 |
Pedro | 50 |
Pedro | 350 |
Total Pedro | 750 |
Juan | 150 |
Juan | 200 |
Juan | 150 |
Total Juan | 500 |
Total | 1250 |
Para lagrar esto de nuevo vamos al editor de propiedades al tab Groups. Apretamos el botón de Add y nos aparece una pantalla para crear el grupo.
En Nombre le ponemos el nombre por el cual asociaremos el grupo.
En Group on elejimos el campo por el cual agruparemos.
El resto de las opciones las dejamos como están y damos Ok.
El siguiente paso es crean un lazo (bind) que nos sume los datos del grupo. Nuevamente vamos al editor de propiedades de la tabla al tab Binding. Vemos que ya hay lazos correspondientes a los datos que ya se muestran, estos lazos se crearon en forma automática cuando agregamos elementos a la tabla. Ahora crearemos uno nuevo, pero como nos interesa que sea un agregacion apretamos el botón que dice Add Aggregation y nos aparece la siguiente pantalla:
Column Binding Name | Nombre que le pondremos al lazo |
Display Name | Nambre con el que se mostrara el lazo |
Data Type | Tipo de datos, si dejamos any asumira el correcto según sean los mismos |
Function | Funcion que emplearemos para hacer la agregación |
Data Field | Campo por el cual haremos la agregación |
Aggregate on | Si la agregación es para toda la tabla o para un grupo determinado |
Completamos la pantalla y elegimos Aggregate on groups y seleccionamos el grupo que habimos creando anteriormente.
En el layout nos quedará así:
Como vemos aparecioron dos nuevas filas correspondientes al Grupo. Es aquí donde colocaremos nuestro lazo suma, lo podemos colocar la fila Group Header o en la fila Group Footer. No paramos en la casilla en la cual queremos poner el lazo y en menú Insert->Data. Nos aparece un pantalla para que agregemos un nuevo lazo asociado a dicha casilla, lo cancelamos ya que nostros queremos que apunte a nuestro lazo de suma
Hacemos clik derecho sobre la casilla y en el menú contextual cliqueamos Change Data Column. Se no abre un ventana donde nos aparecen todos los lazos disponibles, elegimos el que creamos para sumar.
Para ver los resultados cliquear en el tab preview.
Formatear el reporte
En esta parte veremos en forma rápida como hacer que nuestro reporte luzca mejor.
...
A partir de esta versión, Ideasoft O3 incorpora un nuevo componente para generación de reportes estáticos. Este componente está fuertemente basado en Eclipse BIRT, que ha sido extendido para integrarse con los modelos multidimensionales de O3.
Este nuevo componente de Ideasoft O3, incluye un entorno de creación de reportes (a nivel del Desktop), un entorno de ejecución de los mismos a nivel del Web y del Desktop. El acceso a los modelos multidimensionales desde el reporteador puede hacerse en forma simplificada mediante referencias a vistas o utilizando el lenguaje de consultas multidimensionales MDX. O3 soporta para esto un subconjunto de las sentencias de consulta de MDX que es un estándar de facto de la industria.
Mediante este componente, los reportes de O3 pueden generar excelentes niveles de presentación en múltiples formatos, incluyendo PDF, HTML, MS WORD, etc., creados a partir de información proveniente de los modelos multidimensionales así como en forma directa de las bases de datos relacionales.
Este módulo se encuentra totalmente integrado con las capacidades analíticas de O3 lo cual representa una extensión significativa de las capacidades de O3 en cuanto a la explotación de datos.
Este Tutorial
El objetivo de este tutorial es presentar el módulo para generación de reportes disponible desde la versión 5.0 de O3, brindando una guía sencilla acerca de su uso con ejemplos concretos que pueden ser seguidos en una instalación cualquiera de O3.
Se recomienda además la lectura del material bibliográfico detallado en la sección de bibliografía más abajo para reportes más complejos o por detalles específicos de la herramienta.
El tutorial está organizado de acuerdo a los pasos necesarios para construir un reporte vistoso utilizando los datos almacenados en el cubo de Vinos incluido en la instalación de O3.
Child pages (Children Display) |
---|
Anchor | ||||
---|---|---|---|---|
|
Libro | Autor |
---|---|
BIRT - A Fild Guide te Reporting | Diana Peh/Aletha Honnemann/Nola Hauge |