Você está na página 1de 8

Diseando Nuestro Reporte con iReport

Entonces manos a la obra creamos una carpeta llamado report en la ubicacin de (Web pages/WEB-INF/report), que alojara nuestro archivos creados con ireport que tendrn la extencion .jrxml y .jasper este ltimo que es el conpilado, estos archivos son los q necesita ue jasperReport, una vez que ya tengamos nuestra carpeta report le damos click derecho seleccionamos others ->Report ->Empty Report.

Nuestro reporte se llamara alumno que tendr la extensin .jrxml, si todo va bien debemos de tener la siguiente pantalla.

En ella aparecen marcadas diferentes reas que llamaremos a partir de ahora bandas. Cada banda se comporta de un modo diferente.

Hay que pensar que un informe de iReport est pensado a ni el de pgina. Lo que se define es el aspecto general de una pgina y no se pueden definir (a priori elementos fuera del tamao de la pgina. El significado de cada banda es el siguiente:
y y y

y y y

Ti l : Esta banda se mostrar slo una vez al principio del informe tenga las pginas que tenga el mismo. PageHeader : Esta banda es la cabecera de la pgina; se repite cada vez que se pinta una pgina nueva. Col Header : Esta banda es la cabecera de las columnas. Inicialmente nosotros hemos definido slo una columna, por lo que su comportamiento es anlogo a PageHeader. Detail : Esta banda es la encargada de mostrar los elementos que tienen alguna repeticin, estos elementos se mostrarn en los subinformes que explicaremos ms adelante. En esta banda solo se deben insertar los subinformes, ya que los mismos son los encargados de hacer las repeticiones. Footer : Pie de la columna. Su comportamiento es anlogo a Col Col Header. PageFooter : Pie de pgina, se repite una vez por pgina. Su comportamiento es anlogo a PageHeader. Sumary : Slo se repite una vez por informe en la ltima pgina del mismo. Su comportamiento es anlogo a Title.

Ahora Lo primero que haremos es agregar texto a nuestro reporte. En iReport existen dos tipos de texto: texto estti o y texto di mi o (expresiones). El texto esttico es aquel que no cambia, mientras que las expresiones son como etiquetas que le indican a JasperReports que debe reemplazarlas por algn valor al momento de generar el reporte final. Existen 3 tipos de expresiones:
y y y

Campos (fields) representados con $F{ ombre_campo}. Variables representadas por $V{ ombre_variable}. Parmetros representados por $P{ ombre_parmetro}.

Cada uno de estos tipos de expresiones tiene un uso particular: Los campos le dicen al reporte dnde colocar los valores obtenidos a travs del datasource. Por ejemplo, nuestro objeto Partcipante tiene un atributo llamado username. Usando una expresin de campo ($F{}) indicamos en cul parte o seccin del reporte debe aparecer el valor de ese atributo. Esto quedar ms claro un poco ms adelante. Los parmetros son valores que usualmente se pasan al reporte directamente desde el programa del reporte (en nuestra aplicacin Java). Aunque tambin existen algunos parmetros internos que podemos leer pero no modificar. Pueden encontrar los nombres y significados de los parmetros internos aqu. Las variables son objetos usados para almacenar valores como los resultados de clculos. Al igual que con los parmetros, JasperReports tiene algunas variables internas que podemos leer. Pueden encontrar los nombres y significados de las variables aqu.

Con estos concepto bsicos empezamos a crear nuestro reporte, ahora agregaremostexto esttico a nuestro reporte, de la ventana Palette arrastramos el elemento llamado Static Text. a la banda Title. Es una banda que solo aparece en la primera pgina. Por lo que nos sirve para colocar el ttulo del reporte y/o el nombre y logo de nuestra empresa, Pero en nuestro caso el ttulo de nuestro reporte le pasaremos como pa rmetro que ms adelante lo veremos. Ahora agregamos los encabezados de las columnas en las que se mostrarn los datos que pasaremos al reporte. Agregamos estos nombres en la banda Column Header, la cual se repetir en cada pgina antes de mostrar los datos de las columnas. Que seran Nombre, Apellido, Direccion, Nota, y Comentarios. Por lo que nuevamente arrastramos un elemento Static Text para cada una de la columnas. Tambin podemos ajustar el alto de esta banda para que se ajuste al de nuestro texto, ya sea movindola directamente en el diseador, o desde la ventana de propiedades, Que debe de quedar asi.

Ahora agregar los campos en los que se mostrarn los datos que pasaremos al reporte en un momento. Para que estos campos puedan ser reem plazados por el valor real es necesario que usemos las expresiones (texto dinmico) de las que habl anteriormente. Para esto definiremos un field para cada uno de los campos que queramos mostrar (en este caso sern los mismos campos para los que definimos las cabeceras de las columnas). Para usar los field debemos definir antes de usar, para eso nos vamos a la ventana de Report Inspector a la izquierda del diseador del reporte. Ah existe un nodo llamado ields le damos click derecho y nos saldr add field.

Con esto se agregar un field llamado field1 que por default es de tipo java.lang.String. Cambiamos el nombre de este campo por nombres, en la ventana properties que esta al lado derecho de nuestro ide y si no aparece tienes que seleccionar el field que se agrego. Y debes de tener la siguiente ventana como se muestra en la imagen.

Hacemos lo mismo para el resto de los campos (apellidos, direccion, nota, comentarios). Hay que tener presente que cuando agreguemos el field nota. Ser necesario cambiar el tipo de la clase (Field Class en la ventana de propiedades) a java.lang.Integer. Por que la nota es de tipo int. Estos fields los colocaremos en la banda Detail la cual se repite cada vez que recibe un nuevo objeto y coloca sus valores en la misma fila (quedar ms claro cuando ejecutemos el ejemplo). Al final, el reporte debe quedar de la siguiente forma:

Con esto ya casi tenemos nuestro reporte terminado, pero le falta algo el titulo muy bien como mencionamos anteriormete para poner nuestro ttulo usaremos parmetros. Para hacer uso de un parmetro primero hay que declararlo en el Report Inspector (situado a la izquierda de iReport), por lo que nos dirigimos a esta ventana y hacemos click derecho sobre el nodo Parameters. Al hacer esto se abrir un men contextual. Seleccionamos la opcin Add Parameter

Con esto se agregar un nuevo parmetro llamado parameter1 de tipo java.lang.String. Cambiamos en nombre del parmetro en la ventana de propiedades a titulo (recuerden que este nombre es el que deberemos usar desde nuestra aplicacin Java para establecer el valor

del parmetro).

Arrastramos nuestro parmetro desde la ventana del Report Inspector a la banda Title. Quedando de la siguiente manera.

Con esto ya prcticamente tenemos nuestro reporte diseado pero solo que le falta algunas mejoras para eso usaremos las variables, crearemos una variable para suma las notas, y usaremos las variables que ya estn definidas como PAGE_NUMBRE entre otras. Ahora agregaremos la variable que realizar la suma de las notas de todos los alumnos. Para esto agregamos una nueva variable en el nodo Variables de la ventana Report Inspector haciendo click derecho sobre este nodo y seleccionando la opcin Add Variable del men contextual que se abre.

Una vez agregado modificaremos sus propiedades en la ventana properties, cambiado su nombre a sumaNota, su Variable Class a java.lang.Integer, y Calculation a Sum (con esto indicamos que la variable mantendr la suma de los valores que indicaremos ms adelante, otras opciones incluyen un contador, el promedio, el valor ms alto, etc.). Ahora indicaremos la suma de qu valores son los que queremos que se almacene en este variable. Para eso hacemos click en el botn de la propiedad Variable Expression, con lo que se abrir una nueva ventana. Es esta nueva ventana indicaremos de dnde se tomarn los valores para la suma. Asi que seleccionamos el nodo field donde se mostrar todos nuestro campo, aqui seleccionamosla nota . o escribimos nota}. Y presionamos el botn OK para confirmar.

Ahora arrastramos nuestra variable sumaNota a la banda de sumary Esta banda se muestra cuando ya se han mostrado todos los datos de la banda Details y se muestra justo abajo de ella. Al costado agregaremos un texto esttico para referenciar que es una Total Nota que dando asi.

Ahora para terminar agregaremos la variable PAGE_NUMBER que nos dice el nmero de pgina actual en el reporte. Arrastramos esta variable desde el Report Inspector hasta la banda Page ooter, la cual se muestra en la parte inferior de cada pgina. Tambin Agregaremos un texto esttico solo para indicar que el valor que estamos mostrando corresponde al nmero de pgina. Al final el reporte queda as y nuestro diseo de reporte abra terminado:

Guardamos nuestro reporte y luego los compilamos dandoPreview, al hacer esto nos generara un archivo .jasper que ser la que usaremos desde nuestra aplicacin web.

Con esto terminamos de disear nuestro reporte con ireport. Como se puede ver nuestro reporte no tiene datos, que indica que nuestro reporte esta correctamente diseado.

Você também pode gostar