Subreportes y Graficos Ireport

25
Subreportes 1er PASO: Crear el informe padre Para crear el informe padre podemos ayudarnos del wizard que posee iReport y bien crearlo nosotros desde cero. Aquí también les dejo el informe padre que he diseñado para ilustrar el ejemplo: informe_padre.jrxml. La consulta de este informe simplemente recupera la lista de todos los alumnos (select * from alumno). 2do PASO: Crear el informe hijo (subinforme)

description

sub reportes y graficos en ireport

Transcript of Subreportes y Graficos Ireport

Page 1: Subreportes y Graficos Ireport

Subreportes

1er PASO: Crear el informe padre

 

Para crear el informe padre podemos ayudarnos del wizard que posee iReport y

bien crearlo nosotros desde cero. Aquí también les dejo el informe padre que he

diseñado para ilustrar el ejemplo: informe_padre.jrxml.

 

 

La consulta de este informe simplemente recupera la lista de todos los alumnos

(select * from alumno).

 

 

2do PASO: Crear el informe hijo (subinforme)

 

Después de diseñar el informe padre vamos a ver como crear el informe hijo.

Para hacer esto podemos hacer de dos formas distintas:

Page 2: Subreportes y Graficos Ireport

 

Ayudarnos del wizard de iReport para crear un subinforme y

insertarlo en el informe padre.

Crear nuestro subinforme nosotros mismos e insertarlo en el informe

padre.

 

En este tutorial vamos a hacer la segunda opción para así entender mejor los

subinformes y tener más manejo con ellos.

 

Como se dijo en la introducción un subinforme tiene la misma estructura que un

informe normal con la única peculariedad que se integra dentro de otro informe

(padre).

Por lo que para crear nuestro subinforme lo vamos a hacer de la misma forma que

si fuera un informe normal. Aquí les dejo el diseño que he hecho para este

tutorial: tutorial_padre_subreport0.jrxml

 

 

CONSEJO: Cuando diseñéis subinformes quitarle los márgenes para que se

integre mejor dentro del informe padre. (Menú Editar -> Quitar Márgenes).

 

La consulta del subinforme es también bastante sencilla (select * from

calificacion where idAlumno = $P{idAlumno}). Simplemente

devolvemos las calificaciones de un alumno determinado. Para este subinforme

hemos utilizado un parámetro de entrada (idAlumno) para identificar al alumno y

una variable (notaMedia) que hace la media de las calificaciones.

 

Page 3: Subreportes y Graficos Ireport

3er PASO: Integrar nuestro subinforme en el informe padre

 

Cuando tenemos ya creados y diseñados nuestro informe padre y subinformes y

funcionan por separado, vamos a proceder a integrar nuestro subinforme dentro

del informe padre. Para ello tenemos que hacer clic en el botón correspondiente y

posteriormente seleccionar el área donde meteremos el subinforme.

 

 

 

A continuación nos aparecerá una ventana, que es el wizard del que anteriormente

he hablado, y seleccionamos la opción de “Usar un informe existente”, buscamos

nuestro subinforme (.jasper que estará en el classpath de iReport) y damos a

siguiente.

 

Page 4: Subreportes y Graficos Ireport

 

En la siguiente pantalla nos pregunta como queremos llenar nuestro subinforme:

 

Podemos usar la misma conexión o fuente de datos que usa nuestro

informe padre.

Page 5: Subreportes y Graficos Ireport

 

Podemos querer que el subinforme vaya a otra base de datos o

utilize otra fuente de datos diferente.

 

Page 6: Subreportes y Graficos Ireport

 

En este caso tenemos que especificar la conexión a utilizar para llenar nuestro

subinforme. (java.sql.DriverManager.getConnection( String de la URL de

base de datos, String de login, String de password).

 

 

Nosotros para nuestro ejemplo vamos a usar la misma conexión usada para llenar

el informe principal.

En la siguiente pantalla podemos asignar valores a los parámetros del subinforme.

En nuestro ejemplo vemos que nos aparece el único parámetro de nuestro

subinforme, idAlumno y elegimos que lo queremos rellenar con el valor del

campo id del informe padre.

 

Page 7: Subreportes y Graficos Ireport

 

 

En esta última pantalla seleccionamos la opción de “Use una referencia estática de

localización absoluta” ya que nuestro subinforme está en la misma localización que

nuestro informe padre. Si no fuese así tendríamos que seleccionar la otra opción y

poner en el parámetro $P{SUBREPORT_DIR} el path donde se encontrase el

subinforme.

 

Page 8: Subreportes y Graficos Ireport

 

Pulsamos “Terminar” y listo, ya tenemos nuestro subinforme integrado dentro de

nuestro informe principal. Hay que decir que una vez situado nuestro subinforme

dentro del informe padre podremos moverlo, redimensionarlo, etc. como si fuera un

componente más del informe.

 

Otra de las características de los subinformes es que pueden devolver valores al

informe padre. Si haces clic en el botón derecho del ratón sobre el subinforme y

das a “Propiedades” podrás ver todos los datos relativos al informe (que

anteriormente hemos configurado con el wizard). En la pestaña de

Subinforme(Otros) podrás ver los parámetros del subinforme y también los valores

de retorno del subinforme.

 

Page 9: Subreportes y Graficos Ireport

 

 

Es ahí donde tenemos que añadir una nueva entrada haciendo clic en el botón

de “Añadir. Nos aparecerá una ventana donde nos preguntará por las

asignaciones de variables entre el subinforme y el informe padre. Ahí le ponemos

que la variable del subreport notaMedia devuelva su valor y se almacene en la

variable del informe padre llamada notaMediaPadre. Además podemos elegir

el tipo de cálculo que queremos asignar a la variable, en nuestro caso vamos a

seleccionar “Promedio” para que nos saque la nota media de todos los alumnos.

 

Page 10: Subreportes y Graficos Ireport

 

Le damos a OK y ya tenemos totalmente configurado nuestro subinforme.

Ahora sólo nos queda ejecutar el informe padre y ver los resultados.

 

Page 11: Subreportes y Graficos Ireport

 

NOTA: Como se ha visto a la hora de integrar nuestro subinforme, hemos

seleccionado el fichero .jasper, que es el compilado de nuestro subinforme, por lo

que cuando queramos hacer algún cambio en nuestro subinforme y verlo

posteriormente reflejado en el informe principal tendremos que compilar

previamente el subinforme para generar de nuevo su .jasper.

 

Conclusión

Page 12: Subreportes y Graficos Ireport

 

Como se puede ver la creación de informes complejos se puede simplificar muy

rápidamente y de una forma más o menos sencilla usando subinformes.

iReport es una herramienta bastante útil (y OpenSource) a la hora de diseñar

informes y tiene multitud de funcionalidades que poco a poco iremos viendo

en www.adictosaltrabajo.com

Graficos

Gráficos con iReport

Introducción

iReport es una herramienta gratuita

(http://jasperforge.org/sf/projects/ireport) escrita en Java que nos permite

diseñar informes (jrxml) para posteriormente poder usuarlos con JasperReport. 

Actualmente existe en adictosaltrabajo.com un tutorial donde se habla de

iReport, su instalación, su configuración y sus funcionalidades básicas para crear

informes sencillos

(http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?

pagina=ireport). 

Pero iReport no se queda ahí, sino que nos ofrece otras muchas más posibilidades

y funcionalidades para la creación de informes como pueden ser, objetos gráficos

Page 13: Subreportes y Graficos Ireport

(rectángulos, líneas, elipses, etc.) subinformes, gráficas, etc… 

En este tutorial nos vamos a centrar en explicar paso a paso como

crear gráficos con iReport.

Entorno de trabajo iReport 1.2.7

Jdk 1.6.0

Sistema operativo Windows XP Home Edition

Crear un informe

El primer paso es crear un nuevo informe. Fichero -> Nuevo documento. Existe

también un wizard (“Mago de informes”) para la creación automática de informes. 

Una vez creado nuestro informe le vamos dando la apariencia que deseemos. Aquí

dejo los ficheros usados en este tutorial, backup de la base de datos utilizada para

este ejemplo (Tutorial-Graficos-iReport.sql) y el informe de ejemplo

(tutorial.jrxml).

Page 14: Subreportes y Graficos Ireport

Ahora pulsamos en el botón de Chart Tool, y a continuación seleccionamos el

área dentro de nuestro informes (summary band por ejemplo) donde vamos a

insertar nuestra gráfica. 

Una vez hecho esto nos saltará una ventana donde elegiremos el tipo de gráfica

que queremos insertar en el informe. 

Page 15: Subreportes y Graficos Ireport

Básicamente existen dos tipos de gráficas. Las gráficas de tipo “queso” en las que

se comparan los valores de cada elemento de una misma y única serie (pie y

pie 3D) y el resto de gráficas en las que podemos comparar los valores de cada

elemento para varias series de valores (barras, barras 3D, lineal, área, etc..).

A continuación vamos a ver y explicar dos ejemplos de gráficas de los diferentes

tipos de gráficas. Vamos a empezar por el ejemplo de gráfica de “queso”

Ejemplo 1: gráfica de “queso”Una vez seleccionado el tipo de gráfico de queso (Pie o Pie 3D) vamos a configurarla…Sobre el área seleccionada para la gráfica pulsamos el botón derecho de nuestro ratón y hacemos click enChart Properties 

Una vez que estamos en la ventana de edición de nuestra gráfica vemos que tenemos dos pestañas: Chart Properties (relativa el aspecto de nuestra gráfica) y Chart Data (relativa a los valores y datos). En la pestaña Chart Properties podemos configurar el título, subtítulo, fuentes, colores, leyendas, y muchas otras cosas más de manera muy intuitiva y sencilla. 

Page 16: Subreportes y Graficos Ireport

En la pestaña Chart Data nos encontramos con otras dos nuevas pestañas. Pulsamos en Details. Aquí es donde debemos configurar que datos van a ser representados en nuestra gráfica. En la sección Key Expression debemos insertar el campo identificativo de cada una de las tuplas generadas por nuestra consulta. En nuestro ejemplo será el campo nombre $F{nombre}. En la sección Value Expression vamos a introducir el campo que contenga los datos a representar en nuestra gráfica, en el ejemplo será el campo valor $F{valor}. Como se puede ver vamos a representar los valores de

Page 17: Subreportes y Graficos Ireport

la columna “valor1“, si queremos representar también los valores de “valor2” tendremos que utilizar otra gráfica distinta. Por último tenemos una sección opcionalLabel Expression donde podremos insertar una expresión, que es la que aparecerá en las etiquetas al lado de cada porción del “queso” en el ejemplo será $F{nombre} + ” – ” + $F{valor}. Si no ponemos nada por defecto aparecerá $F{nombre} + ” = ” + $F{valor} 

Ahora ya tenemos configurada nuestra gráfica y sólo nos quedará ejecutar el informe y ver el resultado. 

Page 18: Subreportes y Graficos Ireport

Ejemplo 2: gráfica de barras 3DSe ha elegido este tipo de gráfica para el tutorial como representación de las restantes tipos de gráficas, ya que su configuración es muy similar al resto. Una vez seleccionado el tipo de gráfica barras 3D vamos a configurarla…En la pestaña Chart Properties vemos que comparte muchas de las características comunes a la gráfica de “queso“. Además hay un apartado nuevo de Bar3D donde podremos configurar algunas características específicas de este tipo de gráfica. Con la opcion Show Label activada veremos en cada barra 3D el valor asociada a ella. Podemos también configurar el grado de desplazamiento de las barras, es decir, la sensacion de 3D con las opciones X e Y offset. Además podemos cambiar la apariencia de nuestra gráfica cambiando los colores, fuentes y tamaños de texto, barras, ejes y demás componentes. Una vez cambiada la apariencia de nuestra gráfica vamos a configurar sus datos. Como en la gráfica de “queso“, nos vamos a la pestaña Chart Data, una vez allí nos movemos a la pestaña de Detail. 

Page 19: Subreportes y Graficos Ireport

A diferencia del tipo de gráfica anterior aquí aparecerán todas las series de números (valores) establecidos que comprondran nuestra gráfica. Para añadir una nueva serie de valores sólo tenemos que pulsar el boton Add.

Una vez aquí tenemos que configurar los datos de la serie en cuestión. En nuestro ejemplo queremos que nuestra primera serie se llame Serie 1, como categoría tenga el campo nombre $F{nombre} y como valor el campo valor $F{valor}. 

Page 20: Subreportes y Graficos Ireport

Hacemos lo mismo para la segunda serie…pero ahora lo configuramos para que el valor sea el del campo max$F{max} y el nombre sea Serie 2.

Page 21: Subreportes y Graficos Ireport

Al acabar, tendremos un resultado como este. 

Page 22: Subreportes y Graficos Ireport

Ahora sólo nos queda ejecutar nuestro informe y ver como nos ha quedado la gráfica. 

Page 23: Subreportes y Graficos Ireport

Estas configuraciones de series se hacen igual para los restantes tipos de gráficas, por lo que ya podéis crear todo tipo de gráficas sin complicación. Sólo tendréis que cambiar aquellos aspectos de aperiencia característicos de cada tipo de gráfica.

ConclusiónComo veis, la creación de gráficas con iReport no es particularmente complicado. Nosotros, los miembros deAutentia, intentamos acercaros ese conocimiento a través de nuestros tutoriales y ejemplos prácticos. Pero si la solución a vuestros problemas no se encuentra en www.AdictosAlTrabajo.com, ya sabéis que podéis poneros en contacto con nosotros para que os asesoremos y formemos.