You are on page 1of 30

Manual de iReport> (versin pura de Java de iReport) = 0.2.

1 Informacin general acerca de iReport

o o o o o

1.1 Qu es iReport 1.2 Breve historia de iReport 1.3 Libros sobre JasperReports 1.4 Las principales caractersticas de iReport 1.5 JasperReports y enlaces tiles relacionados con iReport

2 Instalacin de iReport

o o o

2.1 Requisitos del sistema 2.2 Instalacin y configuracin 2.3 La prueba final ...

3 iReport y JasperReports conceptos bsicos

o o o

3.1 Cmo funciona JasperReports 3.2 Compilacin de exportacin final de los informes 3.3 Nuestro primer informe muy simple

4 Conexiones y fuentes de datos

o o o o

4.1 Tipos de fuente de datos 4.2 Configuracin de una conexin JDBC 4.3 Configuracin de una fuente de datos personalizada 4.4 Implementar un nuevo origen de datos

5 bandas y grupos

o o

5.1 Bandas 5.2 Grupos

6 plugins iReport

o o o

6.1 El resumen de plugin de iReport 6.2 El complemento de descriptor de archivo 6.3 El complemento de hola mundo

7 Uso de la fuente de datos XML

o o o

7.1 Configuracin de una fuente de datos XML 7.2 La ruta de grabacin 7.3 Sintaxis XML Datasource

o o

7.4 Libreta de direcciones muestra 7.5 XML Datasource licencia

8 Grficos

8.1 Creacin de un grfico simple

1 Informacin general acerca de iReport


Este es el manual de referencia de iReport, que los documentos iReport versin 0.3.1. Como iReport es un trabajo en curso, el manual se actualiza con frecuencia (si tengo tiempo suficiente). As que hay una gran probabilidad de que esta versin no est actualizada, a menos que usted est buscando en lo on-line. La versin ms reciente de este manual est disponible en http://ireport.sourceforge.net/docs.html en muchos formatos diferentes. iReport es un potente, intuitiva y fcil de utilizar diseador de informes visual / constructor de JasperReports. iReport es software libre. Es licenciado con la licencia pblica general GNU http://www.gnu.org/ .

Si desea adquirir una licencia LGPL estilo de iReport, puede ponerse en contacto conmigo en gt (@) businesslogic.it. IMPORTANTE: Los informes de errores, as como preguntas y comentarios deben ser enviados a los foros en iReport http://sourceforge.net/forum/?group_id=64348
1.1 Qu es iReport
iReport es un programa que ayuda a los usuarios y desarrolladores que utilizan la biblioteca JasperReports para disear visualmente informes. Un pensamiento rico y muy fcil de usar interfaz grfica de usuario, iReport proporciona todas las funciones ms importatnt para crear informes de Niza en un poco de tiempo. iReport puede ayudar a las personas que no conocen la biblioteca JasperReports para crear informes complejos y aprender la sintaxis XML echar un vistazo al cdigo generado. iReport puede ayudar a un diseador de informes cualificados para componer pgina muy compleja en un ahorro de tiempo. iReport est escrito en Java. Desde la versin 0.2.0 se rewrited totalmente. Por esta razn, se trata de dos manuales de iReport. La direccin del nuevo desarrollo fue tomado por un montn de razones. iReport ha perdido un poco de salir de la interfaz grfica de usuario efficence win32 nativa para una interfaz clara, el swing puro. Pero esta es la direccin correcta ...

1.2 Breve historia de iReport


iReport es un diseador visual para JasperReports. Pero lo que es JasperReports? JasperReports es la mejor (en mi humilde opinin) del motor de notificacin abierta fuente disponible para la comunidad Java. Es desarrollado por un genio pequeo grande que se llama Teodor Danciu. JasperReports siempre ha tenido una falta: que no proporcionan una herramienta adaptada a diseo visual de informes. JasperReports tiene cientos de caractersticas, las posibilidades de uso son infinitas ... una persona que no tiene mucha confianza con el cdigo XML podra tener algunos problemas para aprovechar plenamente de la biblioteca JasperReports. As que en poco tiempo se nacido algunas de las herramientas para llenar el agujero de diseo ... con el fin de: diseo de Jasper por Jackie Manning y JasperEdit y Diablos por Erik Swenson, el primero un editor capaz de ver JasperReports XML y el segundo, un plugin de Eclipse. En el mismo perodo, yo estaba tratando de DataVision, una herramienta de Jim Menard. As que mi idea era unirse a los poderosos de JasperReports con la filosofa adoptada por DataVision. He resuelto el problema de una lenta interfaz de Java con ... VisualJ + +. El resultado fue uno de los mejores diseador visual para JasperReports. Despus de seis meses, me envi un mensaje en el

foro JasperReports con la idea de desarrollar una versin de Java puro de iReport. El entusiasmo era tal que el mismo da que empez la portabilidad ... iReport para Java ya es una realidad. 1.3 Libros sobre JasperReports La misin de este manual es introducir en el mundo de JasperReports. Sin embargo, le sugiero que para comprar por unos pocos dlares al JasperReports ltima gua, un manual fundamental para escribir jasperreports cdigo XML (a travs de iReport, o directamente a la mano). Usted puede encontrar JasperReports ltima gua en http://jasperreports.sourceforge.net/more.docs.html . 1.4 Las principales caractersticas de iReport La siguiente lista describe algunas de las caractersticas importantes de iReport:

98% de las etiquetas de JasperReports apoyo Visual de diseo WYSIWYG con herramientas para dibujar rectngulos, lneas, elipses, campos de campos de texto, grficos, informes integrados ... Editor incorporado con heighlighting sintaxis para escribir la expresin Apoyo a la lengua latina, Unicode y no (ruso, chino, coreano ,...) Documento navegador estructura Compilador integrado y exportador Apoyo de todas las bases de datos compatible con JDBC Apoyo de todo tipo de JRDataSource Asistente para crear informes automgicamente Soporte para subinformes Guardar copia de seguridad Soporte para plantillas Instalaciones para las fuentes

1.5 JasperReports y enlaces tiles relacionados con iReport


JasperReports tu pgina de inicio iReport tu pgina de inicio iText tu pgina de inicio

de la biblioteca pdf utilizado por JasperReports

2 Instalacin de iReport
iReport viene como un archivo zip. Contiene los archivos de distribucin principal (clases y la fuente), algunas plantillas de asistente, todos los frascos adicionales necesarios. <> 2.1 Requisitos del sistema Usted necesitar varias cosas para empezar a trabajar con iReport:

Sun JDK 1.4 o superior Ant (necesario si desea volver a compilar las fuentes, pero es altamente recomendable para iReport almuerzo tambin) JasperReports 0.4.6 (*) SAX XML Parser 2.0 (Apache Xerces 1.3 o posterior recomendado) (*) Commons Yakarta Digestor de componentes (versin 1.1 o posterior) (*) Jakarta Commons BeanUtils Component (versin 1.1 o posterior) (*) Commons Yakarta colecciones de componentes (versin 1.0 o posterior) (*) Yakarta Commons Logging Component (versin 1.0 o posterior) (*) JDBC 2.0 del controlador (driver MySql A ya est incluido) (*) iText - Free Java PDF Library de Bruno Lowagie y Paulo SOARES (*) Jakarta POI (versin 1.5.1 o posterior) (*)

JFreeChart (versin 0.9.8 o posterior) (*) Acrobat Reader 5.0 no es obligatorio, pero s muy recomendable. Si usted piensa utilizar en chino simplificado, chino tradicional caracteres, japons y coreano, debe descargar el paquete de fuentes asiticas de Adobe en: http://www.adobe.com/products/acrobat/acrrasianfontpack.html o usar una versin localizada de Windows. Si desea conectarse a una base de datos, debe proporcionar un controlador JDBC (no incluido con iReport).

(*) Un frasco de este software ya est incluido en el directorio lib de la distribucin de iReport, por lo que no tienes que descargarlo. Tenga en cuenta que por ahora JFreeChart se utiliza para generar los grficos. Esto se puede cambiar. Yo estoy evaluando JCharts, otra biblioteca de grficos OpenSource. Es posible que en iReport futuro apoyo tanto de este bibliotecas trought un nivel abstracto.
2.2 Instalacin y configuracin
Si usted ya su equipo installedon un JDK (no slo un entorno de ejecucin Java, pero un Java Development Kit) estamos listos para empezar ... 1. Descomprima iReport-xxxzip y copiar el directorio extrado en la que desea. 2. Busque un archivo llamado tools.jar en su jdk y cpielo en el directorio lib de iReport. Si tiene Ant instalado en su mquina, modificar el archivo o iReport.bat iReport.sh para ajustar la ruta de instalacin de hormigas (por defecto es c: \ ant en Win32 y la hormiga / bajo Linux). 3. Iniciar iReport.bat o iReport.sh . Si usted no tiene Ant instalado (olny para los usuarios de win32), vaya a la noAnt directorio y escriba:

startup.bat
En la primera ejecucin, iReport crear un directorio (. IReport) en su directorio personal. Aqu se almacenan todos los archivos de configuracin. iReport utilizar archivos XML de configuracin. *** Estos archivos no son compatibles con los antiguos archivos de propiedades 0.1.0 ***. En el inicio todos los frascos en el directorio lib de iReport se aaden a la ruta de clase. Si desea utilizar archivos de fuentes TTF instalados en el sistema, aadir en el directorio classpath sus fuentes. iReport viene con un directorio de fuentes propias agregan automticamente a la ruta de clase. Comenz iReport ... 1. Vaya a Men-> Herramientas-> Opciones 2. Ir a la ficha Programas externos 3. Establecer programas externos espectadores

Fig.2.1: Los programas externos pestaa de opciones.

2.3 Prueba final ...


Ok, probar si la configuracin es correcta .... Crear un nuevo informe en blanco. Haga clic en el iReport "Ejecutar sin conexin" botn Despus de unos segundos se abri appeare el pdf con el programa que nos hemos fijado, como seal de que todo est bien.

iReport y JasperReports conceptos bsicos


iReport no es til sin una biblioteca llamada JasperReports. Esta biblioteca de gran alcance es uno de los ms avanzados de motor de informes Disponible para la comunidad OpenSource. Antes de empezar a jugar con iReport, es importante entender lo que hacen y por qu iReport. En este captulo voy a explicar algunos conceptos bsicos sobre cmo funciona el JasperReports, iReport lo que hacer con "jaspe" en s y por qu semplify la vida de los usuarios.

3.1 Cmo funciona JasperReports


JasperReport funciona de manera similar a un compilador y un intrprete. Ver fig. 3.1. El diseo de usuario un informe de codificacin en XML de acuerdo a las etiquetas y atributos definidos en un archivo llamado jasperreports.dtd (parte de JasperReports). El uso de XML a un usuario definir el informe completo, que describe en los textos sitio, imgenes, lneas, rectngulos, cmo retrive datos, cmo hacer ciertos clculos para mostrar subtotales, etc ..

Fig.3.1: Cmo funciona JasperReports.

Este archivo fuente XML debe ser compilado con el fin de elaborar un informe real. La versin compilada de la fuente se llama "archivo jasper" (que termina con. Jaspe). Un archivo es una fuente de jaspe informe compilado. Cuando tenemos un archivo jasper, necesitamos otra cosa para producir un reporte: necesitamos datos. Esto no siempre es cierto. En algunos casos, podra querer generar un informe que no muestra los datos de dinmica, pero esto es slo el texto esttico, pero esto puede ser reducido a un informe que slo tiene un registro vaco. Para proporcionar este registro en el motor de jaspe es necesario que lo presente con una interfaz de jasperreports especial con nombre especfico JRDataSource. Una fuente de datos + un archivo jasper = a imprimir. Una impresin puede ser exportado en diversos formatos como PDF, HTML, XML, XLS, CVS, etc .. La exportacin se realiza mediante clases especiales a los exportadores la aplicacin especfica.

3.2 Compilacin de exportacin final de los informes


Para un novato, disear y crear el archivo jasper es la tarea ms difcil. Una vez que haya diseado y compilado el archivo jasper, se puede utilizar la biblioteca de JasperReport para llenar dinamycally su informe en diversos ambientes como una aplicacin web (es decir, el uso de servlets de Java, pero me han usado con xito para la generacin de informes JasperReports PDF llamarlo desde un script PHP ...). Jasper poner a disposicin un visor especial para mostrar una vista previa del informe, diseado para aplicaciones basadas en la tradicional oscilacin de Java.

Fig.3.2: JasperReports fcilmente integrado en una aplicacin web como en un programa basado en Java Swing.

3.3 Nuestro primer informe muy simple


iReport proporcionar a los usuarios de JasperReports una interfaz visual para construir reportes, generar archivos de jaspe y de impresiones de prueba. iReport naci como herramienta de desarrollo, pero puede ser utilizado como una herramienta de oficina a retrive e imprimir los datos almacenados en una base de datos, sin pasar a travs de otra aplicacin.

Fig.3.3: Cmo funciona JasperReports.

iReport puede leer y modificar los archivos XML y jaspe jaspe. Jasperreports trought, es capaz de compilar XML a archivos jasper y "ejecutar reportes" para llenar con varios

tipos de JRDataSource y exportar el resultado a PDF, HTML, XLS, CSV, ... Para entender mejor como funciona todo, vamos a hacer una prueba. Siga estos sencillos pasos: 1. Abrir iReport y crear un nuevo documento vaco.

Fig.3.4: Nuevas propiedades del informe.

2. Aadir a la banda de ttulo de un elemento de texto esttico

Fig.3.5: Cambio del tamao de la fuente ....

3. Ejecute el informe (iReport le pedir guardar el archivo antes de que se compile)

Fig.3.6: El informe final visto con GhostView.

En esta sesin hemos creado un informe simple, guarda como archivo XML, realizado

con el archivo de jaspe, lleno de un "EmptyDataSource" fin de exportar en formato PDF.

4 Conexiones y fuentes de datos


Los datos de impresin se pueden retrived de varias maneras en diferentes lugares, como una base de datos o un archivo XML. Estos datos se presentan para JasperReports siempre en forma de registros de uso de una interfaz especial llamada JRDataSource. JasperReports viene con un buen conjunto de implementaciones de esta interfaz para envolver de resultados de JDBC, TableModels, Colecciones, vectores y matrices de objetos, etc .. Pero no siempre es un JRDataSource es necesario para suministrar los datos del informe con el fin de llenar. De hecho JasperReports puedes ejecutar consultas SQL utilizando una conexin dada abierto a una base de datos, y utilizar el resultado para llenar el informe. Cmo vamos a ver, esta caractersticas ser muy til y fcil de usar.

4.1 Tipos de fuente de datos


iReport soporta conexiones JDBC y 4 tipos de fuente de datos (que pueden ser utilizados para envolver cualquier tipo de fuente de datos personalizadas).

Fuente de datos vaca (JREmptyDatasource): es una fuente de datos especiales para llenar el informe que no exponen ningn registro. Esta fuente de datos se utiliza cuando se presiona el botn para "correr" un informe. DataSource XML (an no implementado): es una fuente de datos capaz de envolver un archivo XML y normalizar su contenido. La informacin slo es necesario para crear este tipo de fuente de datos es un nombre (por la fuente de datos) y el nombre del archivo XML. Fig.4.1: fuente de datos XML de definicin.

JavaBeans Set origen de datos (an no implementado): es una fuente de datos capaz de envolver de una coleccin o un conjunto de JavaBeans. Cmo el resto de fuentes de datos utilizadas por iReport y que aqu se presenta, esta Fig. 4.2: Establecer fuente de datos JavaBeans definicin. fuente de datos necesita una clase de fbrica espacial que proporciona un mtodo esttico para generar una coleccin o un conjunto de JavaBeans (alias de un conjunto de objetos). Para crear esta fuente de datos que necesita un nombre para la fuente de datos, el nombre de una clase que proporcione el mtodo esttico para llamar a retrive la matriz / coleccin de objetos y el nombre de este mtodo que tiene una definicin como esta:
public static Collection createMyCollection()

public static Object[] createMyArray()

Recuerde que debe establecer el tipo de resultado (coleccin o matriz).

Origen de datos personalizado: este tipo de fuente de datos es genrico. iReport no s cmo la JRDataSource es implementado por esta conexin particular, pero no es importante. Esta fuente de datos necesita una clase de fbrica espacial que proporciona un mtodo esttico que devuelve un JRDataSource. Para crear esta fuente de datos Fig.4.3: Custom JRDataSource definicin. que necesita un nombre para la fuente de datos, el nombre de una clase que proporcione el mtodo esttico para llamar a la retrive JRDataSource y el nombre de este mtodo que tiene una definicin como esta:
public static JRDataSource createMyJRDataSource()

Un ejemplo de la aplicacin de una costumbre de origen de datos se proporciona al final de este captulo.

4.2 Configuracin de una conexin JDBC


Para configurar una conexin JDBC es necesario un funcionamiento JDBC capaz DBMS (me gusta MySQL), un apropiado driver JDBC para acceder a ella, una base de datos y una cuenta vlida. Est usted listo? Vamos! Seleccione el men de fuentes de datos> Conexin / Orgenes de datos. Se appeare el cuadro con la lista de conexiones de fuentes de datos JDBC y que ha definido. Tenga en cuenta que puede definir el nmero de fuentes de datos y connecgtions que quieras, pero puede, por ahora, el uso slo de uno en uno. Vamos a ver cmo configurar la "conexin activa". Pulse el botn "Nuevo".

En el nuevo marco, escriba un nombre de conexin (es decir, "Mi primera conexin JDBC"), seleccione el derecho driver JDBC, puede especificar un escrito directamente o Fig.4.4: Conexin JDBC marco de definicin. utilizar uno ya en la lista. Tenga en cuenta que los conductores no se envan con iReport (excepto driver MySQL), asegrese de que el controlador que desea utilizar est en la ruta de clases. Poner un recipiente en el directorio lib de iReport puede ser una buena idea, pero los frascos presente en este directorio se aaden a la CLASSPATH cuando iReport principio. Por el momento no es posible el cambio de la ruta de clase de iReport 2 dinmicamente. Antes de escribir la URL, escriba el nombre de base de datos y luego presione el botn "Asistente". De esta manera, si iReport reconocer al conductor, se le sugerir una direccin URL para su uso con. Establecer el nombre de usuario y la contrasea, pruebe la conexin pulsando el botn de prueba. Si todo est bien, un cuadro de dilogo (Fig. 4.5) le informar del xito de la prueba.
Fig.4.5: La conexin es correcta.

Muchos utilizan el software de una manera muy similar a la configuracin de una conexin JDBC. Puede referirse a la documentacin del controlador JDBC especfico para conocer todas las opciones ofrecidas por el conductor y la sintaxis exacta de la URL. Todos los DBMS ms usados tienen un driver JDBC. Si necesita acceder a una base de datos a travs de ODBC en un sistema Win32, puede utilizar al puente JDBC-ODBC, un especial driver JDBC desarrollado por Sun Inc.. Pero te sugiero verificar en primer lugar la presencia de un driver JDBC. iReport para el defecto no guardar las contraseas de conexin. Si desea guardarlo, primero debe marcar la casilla "Guardar contrasea" casilla de verificacin. Pulse el botn "Guardar" para almacenar definitivamente la conexin en la piscina de conexiones iReport.
4.3 Configuracin de una fuente de datos personalizada
Yo no voy a aburrir a usted con otras nociones bsicas leve en el botn que debe pulsar con el fin de ejecutar lo que est escrito en l ... Si no, lea el prrafo anterior que se explica dnde poner las manos para crear una nueva fuente de datos / conexin. Slo debe a kwnow que usted puede elegir el tipo de fuente de datos de su seleccin por el cuadro combinado en el marco de conexin. Cuando haya rellenado todos los campos, se prueba con el botn de prueba. En esta sesin hemos creado un informe simple, guarda como archivo XML, realizado con el archivo de jaspe, lleno de un "EmptyDataSource" fin de exportar en formato PDF.

4.4 Implementar un nuevo origen de datos


Este tema es ms un argumento JasperReports releated, que una explicacin caracterstica iReport. Pero creo que puede ser til saber cmo se puede desarrollar el controlador de datos personalizados (alias JRDataSource). Vamos a escribir un sencillo muy JRDataSource que los campos retrive desde un archivo CSV. Un archivo CSV es un archivo de texto que contiene un conjunto de filas. Cualquier fila contiene un nmero cartain de campos separados por un carcter especial (es decir, el punto y coma';'). Qu debemos hacer nuestra fuente de datos es retrive estos registros y devolver el valor correcto a JasperReport cuando se pide un campo (o columna). Lo que tenemos que hacer es implementar esta interfaz muy simple:

package dori.jasper.engine; public interface JRDataSource { public boolean next () throws JRException; public Object getFieldValue (JRField jrField) throws JRException; }

A JRField es una clase simple para variar. Contiene el nombre del campo (una cadena), y la clase Java que representa el tipo de este campo. En nuestro caso todos los campos son de tipo String, pero podemos optar por utilizar como nombre de campo (alias el nombre de columna), los valores de la primera fila de nuestro archivo cvs o un nombre genrico como columna_1, column_2, ... Se trata de la misma forma utilizada por JasperReport en la aplicacin de la envoltura TableModel fuente de datos, que puede utilizar indistintamente como nombre de la columna el valor de la cabecera de la columna (si existe) o el nombre especial COLUMN_<n> con n en el conjunto {0,1 ,

2,3 ,..., k}. Vamos a utilizar los nombres fijos para referirse columnas en nuestra fuente de datos (columna_1, column_2, ...). Este es el cdigo:

JRCSVDataSource.java
1 2 3 import java.io. *; 4 import java.util .*; 5 6 public class JRCSVDataSource implementa dori.jasper.engine.JRDataSource { 7 8 Cadena de la fila = ""; 9 LineNumberReader lineNumberReader; 10 11 / ** Crea una nueva instancia de JRCVSDataSource * / 12 JRCSVDataSource pblica (String cvsFile) { 13 try { 14 lineNumberReader = new LineNumberReader (nuevo FileReader (cvsFile)); 15 Coger} (Exception ex) {} 16 } 17 18 GetFieldValue pblica de objetos (dori.jasper.engine.JRField jRField) throws dori.jasper.engine.JRException { 19 Campo de cadena = jRField.getName (); 20 int fieldPosition = Integer.parseInt (field.substring (7)); / / Franja de COLUMN_ 21 StringTokenizer st = new StringTokenizer (fila ";"); 22 while (st.hasMoreTokens ()) 23 { 24 fieldPosition - / / La columna no es 0 indexados. 25 Cadena de smbolo = st.nextToken (); 26 if (fieldPosition == 0) smbolo de retorno; 27 } 28 return null; / / Columna que no se encuentra ... 29 } 30 31 public void next () lanza dori.jasper.engine.JRException { 32 try { 33 fila = lineNumberReader.readLine (); 34 if (row.length ()> 0) return true; 35 Coger} (Exception ex) {} 36 return false; 37 } 38 }

Cmo se puede ver, slo 38 lneas de cdigo ... Es el momento de probarlo ... Vamos a escribir un poco "JRDataSourcFactory" con el fin de utilizarlo con iReport. Esta fbrica ejemplo, un JRCSVDataSource y se lo devolver con el mtodo esttico:
getTheDatasource()

CSVDatasourceTestFactory.java
1 paquete it.businesslogic.ireport.connection; 2 3 public class {CSVDatasourceTestFactory 4 5 pblica dori.jasper.engine.JRDataSource getTheDatasource ()

6 7 8 9 10

{ nueva vuelta JRCSVDataSource ("test.csv"); } }

IReport abrir, crear una nueva costumbre JRDataSource conexin y rellenar todos los campos como en la fig. 4.6, probar y guardar la conexin.

Fig.4.6: La nueva fuente de datos CSV conexin.

Ahora ir a Build> Set Conexin y seleccionar nuestra nueva conexin ("CSV origen de datos (test.csv)")

Fig. 4.7: Establecer la conexin activa.

Este es el resultado. Pronto aprender a crear el informe del ensayo utilizado para poner a prueba nuestra fuente de datos.

Fig.4.8: La impresin de resultados.

5 bandas y grupos
En este captulo vamos a ver cmo un informe est estructurado y cmo modificar esta estructura.

5.1 Bandas
Un informe est compuesto por un conjunto variable de secciones llamadas bandas. Cada grupo se define por una altura (que debe ser considerada como una altura mnima). Si la altura de la banda es igual a cero, la banda nunca ser visible. La altura de la banda puede crecer si los elementos en su interior se estiran. Un documento de mnimos ha: Ttulo banda Encabezado de pgina Cabecera de la columna Detalle Columna de pie de pgina Pie de pgina Resumen Ttulo banda Encabezado de pgina Cabecera de la columna

se imprime una sola vez y es la primera banda. Se puede imprim se imprime en cada pgina. se imprime en cada pgina que contiene una banda de detalle. S dividida en una o ms columnas, esta banda se imprime en cada Detalle se imprime para cada registro del origen de Columna de pie de pgina se imprime en cada pgina que contiene una banda de detalle. S dividida en una o ms columnas, esta banda se imprime en cada Pie de pgina se imprime en cada pgina. Este es un buen lugar donde poner de Y" Resumen se imprime una sola vez al final del informe. Se puede imprimir e

Hay, pues, una banda especial llamado fondo que se puede utilizar para definir un fondo de la pgina (es decir, utilizando una imagen de marca de agua). La posicin de una banda de las bandas de los dems aspectos no pueden ser modifyed. Para cada banda puede modificar la altura mnima, el valor de un indicador que permite dividir una banda durante el proceso de llenado, si es ms grande que la porcin de la pgina en la que se debe imprimir, y una expresin booleana (alias una expresin de Java que volver un objeto Boolean), con el que es el control es posible si la banda se ve o nota. Si no se define la expresin de una banda, la visibilidad se establece en "true".

Fig.5.1: botn de Bandas en la barra de herramientas.

Al pulsar el botn de bandas (ver fig.5.1) o seleccionando la opcin de men Bandas> Ver, la forma de las bandas se le abrir.

Fig.5.2: formar bandas.

Desde aqu es posible modificar la altura de la banda y establecer la expresin de la banda. El ttulo y el resumen de las bandas se pueden imprimir en una pgina nueva. Para

utilizar esta funcin, tienes que ir en el formulario de informe de propiedades, seleccione la pestaa "Ms" y el uso de la casilla de verificacin apropiada.

Fig.5.3: propiedades del informe, en la ficha ms (Ver el punto de men> Propiedades del informe).

5.2 Grupos
Si es necesario agrupar los datos, puede agregar uno o ms grupos. Cuando se crea un grupo, dos nuevas bandas se suman a este informe: el encabezado de grupo y el pie de grupo. Ttulo banda Encabezado de pgina Cabecera de la columna Grupo 1 cabecera El grupo 2 de cabecera Detalle El grupo 2 de pie de pgina Grupo 1 pie de pgina Columna de pie de pgina Pie de pgina Resumen

Un grupo se define por una expresin. Por cada registro procesado, JasperReports evaluar esta expresin. Si el valor de expresin es cambiada, el grupo de cambio. Tenga en cuenta que JasperReports no se realiza ninguna orden en los datos, por lo que si se utiliza un campo de expresin y los valores de los campos son ABAB, cuatro grupos se crean, en contra de la espera de dos (uno para cada registro con el valor del campo en A , y otro para el nmero de registros 2 y 3, con el valor del campo al conjunto B). Si usted presenta a JasperReports los datos ordenados (AABB), todo se trabaja muy bien.

Fig.5.4: botn de la barra de herramientas Grupos.

Al pulsar el botn de los grupos (o seleccionando la opcin de men Ver> Grupos) puede abrir el formulario de grupos de los que usted puede manejar grupos.

Fig.5.5: Formulario de definicin de grupo.

De esta forma se pueden establecer todas las propiedades del grupo.

6 plugins iReport
Desde la versin 0.3.1, iReport soporta un sistema de plugins para extender sus funciones. En este captulo vamos a aprender cmo crear un plugin de iReport y cmo implementarlo. Un plugin de iReport est compuesto por un archivo de descripcin (un documento XML colocado en el "plugin" del directorio) y un conjunto de clases (o una jarra) colocado en la ruta. Normalmente, cuando plugin es cargado, iReport crea un elemento en el men de plug-in en el bastidor principal. Plugins slo se cargan en el inicio iReport. Cuando el elemento de men plugin es seleccionado, iReport ejemplo, el plug-in (si an no instancias) y llamar a la plagin de call() mtodo. Un plugin es instanciado una sola vez, y en el descriptor de fichero que es posible especificar a la instancia en el arranque iReport en lugar de esperar a que la invocacin del primer usuario. Esto es til cuando el complemento se marca como "oculto", y no es visible en el men de plug-in.

Fig.6.1: El men de plug-in en el marco iReport principal.

Un plugin puede ser marcado como configurable. En este caso, el complemento debe implementar el mtodo configure() que se ejecutar cuando el usuario pida a configurar el plugin.
6.1 El resumen plugin de iReport
Todos los plugins de iReport se extiende la clase abstracta

it.businesslogic.ireport.plugin.IReportPlugin . Esta clase es muy simple:

1 /* 2 * IReportPlugin.java

IReportPlugin.java

3 * 4 * Creado el 19 maggio 2004, 7.23 5 */ 6 7 paquete it.businesslogic.ireport.plugin ; 8 9 importacin it.businesslogic.ireport.gui.MainFrame; 10 / ** 11 * Esta clase debe ser extendido por todos los plugin de iReport. 12 * Para instalar un plugin en el iReport, puesto que el plugin XML en el directorio de plugins de iReport. 13 * Consulte la documentacin del plugin en la forma de crear un plugin para iReport 14 * 15 * Esta es la primera interfaz muy simple de plugin. Espero que no cambian, pero no podemos decir 16 * Lo que va a suceder en lo futuro ... 17 * 18 * @ Author Administrador 19 * / 20 IReportPlugin pblico clase abstracta { 21 22 MainFrame MainFrame = null; 23 Nombre de la cadena = ""; 24 25 26 27 / ** 28 * Este mtodo se llama cuando el complemento se selecciona en el men de plug-in 29 * / 30 convocatoria pblica abstract void (); 31 32 / ** 33 * Este mtodo se llama cuando el botn de configuracin del plugin en la lista de plug-in est seleccionado. 34 * El archivo de configuracin del plug-in se debe almacenar en IREPORT_USER_HOME_DIR / plugins / 35 * / 36 configurar public void () {} 37 38 / ** 39 * Retrive el nombre del plugin. Tenga en cuenta que el nombre del plugin debe ser nico y debe ser utilizado como 40 * El nombre del archivo de configuracin si es necesario. Este nombre puede ser diferente del nombre especificado 41 En XML, que es el nombre utilizado para el elemento de men. 42 * / 43 String getName pblico () { 44 devolver el nombre; 45 } 46 47 / Getter ** para Mainframe propiedad. 48 * @ Valor de retorno de mainFrame propiedad. 49 * 50 * / 51 getMainFrame it.businesslogic.ireport.gui.MainFrame pblica () { 52 volver mainframe; 53 } 54

55 56 57 58 59 { 60 61 62 63 64

/ ** Setter para Mainframe propiedad. * @ Param mainFrame Nuevo valor del mainframe propiedad. * */ setMainFrame public void (mainframe it.businesslogic.ireport.gui.MainFrame) este mainFrame = mainframe.; } }

Tenga en cuenta que el nico mtodo abstracto que debe implementarse es call() que se llama cada vez que se invoca el plugin para el usuario. Si desea agregar una interfaz grfica de usuario de configuracin de su plug-in, usted debe implementar la configure() mtodo tambin.

6.2 El complemento de descriptor de archivo


El descriptor de archivo plugin es un archivo con un nombre arbitrario que describen un plugin. Las informaciones principales sobre el plugin son los siguientes:

NOMBRE es el nombre que se mostrar en el elemento de men); Clase de la clase plugin que extendes IReportPlugin; Archivo de icono un icono que se utiliza en el men (debe ser de 16x16);

<? Xml version = "1.0" encoding = "UTF-8"?> <! Documento: iReportPlugin.dtd Creado el: 19 maggio 2004, 8.09 Autor: Giulio Toffoli Descripcin: Este DTD define el descriptor XML de un plugin de iReport. -> <! iReportPlugin es el elemento raz. ATRIBUTOS: El nombre del nombre del plugin clase La clase que se extiende it.businesslogic.ireport.plugin.IReportPlugin loadOnStartup Si es verdad, el complemento ser de instancia en iReport inicio ocultar Si es cierto, este plugin no ser visible en el men de plug-in -> <! IReportPlugin elemento (Autor? Descripcin?, IconFile?)> <! ATTLIST iReportPlugin nombre NMTOKEN # REQUIRED clase NMTOKEN # REQUIRED loadOnStartup (true | false) "false" ocultar (true | false) "false" congigurable (true | false) "false"> <! ELEMENT autor (# PCDATA)> <! ELEMENTO Descripcin (# PCDATA)> <! -

Archivo de icono debe ser un archivo en la ruta com es decir, / mi plug / / en icon.gif / Se utiliza como icono para el men opcional. Dim: 16x16 -> <! ELEMENT IconFile (# PCDATA)>

6.3 El complemento de hola mundo


El siguiente ejemplo muestra un plugin realmente simple que muestra un mensaje sencillo cuando se invoca o configurado.

HelloWorld.java
1 /* 2 * HelloWorld.java 3 * 4 * Creado el 21 maggio 2004, 7.36 5 */ 6 7 paquete it.businesslogic.ireport.plugin.examples ; 8 9 / ** 10 * 11 * @ Author Administrador 12 * / 13 pblico en la clase HelloWorld extiende it.businesslogic.ireport.plugin.IReportPlugin { 14 15 / ** Crea una nueva instancia de HelloWorld * / 16 pblica HelloWorld () { 17 } 18 19 llamada public void () { 20 javax.swing.JOptionPane.showMessageDialog (este getMainFrame (), "Hola desde plug-in".) 21 } 22 23 configurar public void () { 24 javax.swing.JOptionPane.showMessageDialog (este getMainFrame (), "Hola desde la configuracin de plug-in".) 25 } 26 27 } 28

<IReportPlugin name = "Ejemplo 1" class = "it.businesslogic.ireport.plugin.examples.HelloWorld" loadOnStartup = "false" hide = "false" configurable = "true"> IconFile> <IconFile> / It / businesslogic / iReport / icons / men / new.gif </ <description> Este ejemplo muestra cmo crear un plugin muy simple

helloworld_descriptor.xml

para iReport. </ Description> </ IReportPlugin>

7 Uso de la fuente de datos XML


A partir de la versin 0.3.2, iReport proporciona una fuente de datos XML que permiten llenar un informe de lectura de datos desde un archivo XML. iReport 0.4.0 uso JRXmlDatasource enviado con JasperReports (de la versin 0.6.x) Esta aplicacin fue desarrollada por Peter Severin (desarrollador de JasperAssistant). Esta nueva implementacin es mucho ms poderosa de apoyo real de las expresiones XPath. Esto es lo que dice acerca de la documentacin JasperReports JRXmlDatasource.

net.sf.jasperreports.engine.data

Clase JRXmlDataSource
java.lang.Object | + - Net.sf.jasperreports.engine.data.JRXmlDataSource

Todas las interfaces implementadas: JRDataSource , JRRewindableDataSource public class JRXmlDataSource extends java.lang.Object implementa JRRewindableDataSource De datos XML implementacin de cdigo que permite acceder a los datos de un documento XML mediante expresiones XPath. La fuente de datos se construye en torno a un conjunto de nodos (conjunto de registros) seleccionados por la expresin XPath del documento xml. Cada campo puede proporcionar un adicional de expresion XPath que se utiliza para seleccionar su valor. Esta expresin se debe especificar con el "FieldDescription" los elementos del campo. La expresin se evala en el contexto del nodo actual por lo tanto la expresin debe ser relativa al nodo actual. Para apoyar subinformes, las fuentes de datos se pueden crear sub. Hay dos mtodos diferentes para la creacin de fuentes de datos secundarias. El primero permite crear una fuente de datos sub raz en el nodo actual. El nodo actual puede ser vista como un nuevo documento alrededor del cual se crea la fuente de datos secundarios. El segundo mtodo permite crear una fuente de datos sub que tiene sus races en el mismo documento que es utilizado por la fuente de datos, pero utiliza una diferente expresin XPath selecciona. Ejemplo:
<A> <B Id="0"> <C> <C> </ B> <B Id="1"> <C> <C> </ B> <d Id="3"> <E> <E>

</ D> </ A>

Datos de creacin de la fuente


nueva JRXmlDataSource (documento, "/ A / B") - se crea un origen de datos con dos nodos de tipo A / B / nueva JRXmlDataSource (documento, "/ A / D") - se crea un origen de datos con dos nodos de tipo / A / D

Campo de seleccin

@ Id - se selecciona el atributo "id" del nodo actual C - se selecciona el valor del primer nodo de tipo C en el nodo actual.

Sub datos de creacin de la fuente

". ((Net.sf.jasperreports.engine.data.JRXmlDataSource) $ P {} REPORT_DATA_SOURCE) subDataSource (" / B / C ") - en el contexto del nodo B, se crea un origen de datos con elementos de tipo A / B / C "((Net.sf.jasperreports.engine.data.JRXmlDataSource) $ P {} REPORT_DATA_SOURCE) dataSource. (" / A / D ") - crea un origen de datos con elementos de tipo / A / D

En general, el poder de la expresin XPath est disponible. A modo de ejemplo, "/ A / B [@ id> 0"] selecciona todos los nodos de tipo A / B / con el identificador mayor que 0. Por un breve tutorial XPath consulte la siguiente URL: Autor: Peter Severin (peter_p_s@sourceforge.net, contact@jasperassistant.com) En este captulo se cubren la aplicacin iReport edad de XML datasource. Esto puede ayudar a utilizar la nueva.
7.1 Configuracin de una fuente de datos XML
El primer paso para utilizar un archivo XML como origen de datos se configura un origen de datos XML. Seleccione el men origen de datos> Conexiones / fuentes de datos, presione Nuevo y seleccione "archivo XML fuente de datos" como tipo de conexin.

Fig. 7.1: La fuente de datos XML panel de configuracin.

Rellene el campo Nombre con el nombre de esta fuente de datos (es decir, Adressbook), seleccione el archivo XML y establecer la ruta de registro.

7.2 La ruta de grabacin


Un documento XML se estructura como un rbol. JasperReports necesidad de datos organizados como un conjunto de registros, por lo que debern presentar un rbol como un conjunto de registros. La ruta de grabacin es una cadena que define el camino mnimo necesario para definir un registro. Ejemplo 1:

<palette> <color> Red </ color> <color> Verde </ color> <color> Blue </ color> </ Paleta>

Es este caso muy simple, la ruta de grabacin es el camino de la raz (la paleta de etiqueta) de la hoja (de etiquetas de color): / paleta / color Usamos el camino mismo registro de este documento (Ejemplo 2):
<palette> <color> NOMBRE Rojo </ name> <ROJO> 255 <ROJO> <Verde> 0 <Verde> <blue> 0 <blue> </ Color> <color> NOMBRE Verde </ name> <ROJO> 0 <ROJO> <Verde> 255 <Verde> <blue> 0 <blue> </ Color> <color> NOMBRE Blue </ name> <ROJO> 255 <ROJO> <Verde> 0 <Verde> <blue> 0 <blue> </ Color> </ Paleta>

Tenga en cuenta que en este caso el camino no termina con una etiqueta de la hoja. En general, la etiqueta de cierre es la primera etiqueta que tiene hijos de diferentes tipos o es una hoja. Cuando el documento se hacen ms complejos, podemos leer prodoce un punto de partida sub-fuente de datos de un nio. En el ejemplo 3 podemos ver que cualquier color puede tener 0 o ms es alias ...
<palette> <color> <name> Red </ name> <alias type="html"> # FF0000 </ alias> <alias type="rgb"> 255, 0, 0 </ alias> <alias type = " CMYK "> 0, 99, 100, 0 </ alias> </ color> <color> <name> Verde </ name> <alias type="html"> # 0000FF </ alias> <tipo de alias =" rgb " > 0, 0, 255 </ alias> <alias type="lab"> 88, -79, 81 </ alias> <alias type="CMYK"> 63, 0, 100, 0 </ alias> </ color > <color> <name> Blue </ name> <alias type="html"> # 0000FF </ alias> <alias type="rgb"> 0, 0, 255 </ alias> </ color> </ paleta >

En este caso podemos pensar que alias etiquetas como un conjunto de registros de registro maestro del nio / paleta / color, el expediente del nio tendr como ruta de registrar el valor / color / alias:
<color> <alias type="html"> # FF0000 </ alias> <alias type="rgb"> 255, 0, 0 </ alias> <alias type="CMYK"> 0, 99, 100, 0 </ alias> </ Color>

Tenga en cuenta, ya que XML es muy similar al ejemplo 1.

7.3 Sintaxis XML Datasource


Para enlazar los campos en el interior del XML, una sintaxis similar a XPath se utiliza. El camino de campo se almacena en la descripcin del campo (porque el nombre del campo no son compatibles con un nombre como "/ paleta / color"). La sintaxis de la ruta es muy sencillo. Es una expresin recursiva: <base_path> [<smbolo> <base_path> [<smbolo> <...>]] <base_path> es el camino desde la raz a la etiqueta. Si este camino es ms largo que la ruta de grabacin, es cuted a la ruta de grabacin. Se requiere de una definicin del campo. Si es solo, el valor de la etiqueta se devuelve. Ejemplo: / paleta / color <smbolo> se usa para agregar una ruta adicional a la ruta de la base y definir lo que debe ser devuelto. + Agregar la siguiente ruta de acceso a la base_path (esto sucede cuando la ruta de grabacin base_path =); @ Return el valor del atributo: es seguido por el nombre del atributo; * Devolver todas las etiquetas identificadas por la siguiente ruta de acceso como JRXMLDatasource Ejemplos: / Paleta / color + nombre / Color / tipo de alias @ / Paleta / * el color alias / Agenda / catogory / persona + + other_info extra_time / Ocio * aficin / Libreta de direcciones @ creation_date

7.4 Libreta de direcciones muestra


Este ejemplo muestra cmo utilizar el JRXMLDatasource con subinformes. La muestra est compuesta por cuatro archivos: addressbook.xml es el archivo de datos addressbook.jrxml es el archivo del informe principal hobby.jrxml es el subinforme aficin eamil.jrxml es el informe integrado de correo electrnico addressbook.xml

<addressbook> <category name="home"> <person id="1"> <LASTNAME> Davolio </LASTNAME> <FIRSTNAME> Nancy </FIRSTNAME> <hobbies> <hobby> Radio Control </hobby> <hobby> R/C Cars </hobby> <hobby> Micro R/C Cars </hobby> <hobby> Die-Cast Models </hobby> </hobbies> <email> email1@my.domain.it </email> <email> email2@my.domain2.it </email> </person> <person id="2"> <LASTNAME> Fuller </LASTNAME> <FIRSTNAME> Andrew </FIRSTNAME> <email> email3@my.domain3.it </email> <email> email4@my.domain4.it </email> </person> <person id="3"> <LASTNAME> Leverling </LASTNAME> <FIRSTNAME> Janet

</FIRSTNAME> <hobbies> <hobby> Rockets </hobby> <hobby> Puzzles </hobby> <hobby> Science Hobby </hobby> <hobby> Toy Horse </hobby> </hobbies> <email> email45@my.domain3.it </email> <email> email455@my.domain4.it </email> </person> </category> <category name="work"> <person id="4"> <LASTNAME> Peacock </LASTNAME> <FIRSTNAME> Margaret </FIRSTNAME> <hobbies> <hobby> Toy Horse </hobby> </hobbies> <email> Peacock@margaret.com </email> </person> <person id="5"> <LASTNAME> Buchanan </LASTNAME> <FIRSTNAME> Steven </FIRSTNAME> <hobbies> </hobbies> <email> Buchanan@steven.com </email> </person> <person id="6"> <LASTNAME> Suyama </LASTNAME> <FIRSTNAME> Michael </FIRSTNAME> </person> <person id="7"> <LASTNAME> King </LASTNAME> <FIRSTNAME> Robert </FIRSTNAME> </person> </category> <category name="Other"> <person id="8"> <LASTNAME> Callahan </LASTNAME> <FIRSTNAME> Laura </FIRSTNAME> <email> email25@my.domain3.it </email> </person> <person id="9"> <LASTNAME> Dodsworth </LASTNAME> <email> Dodsworth@my.anne.it </email> </person> </category> </addressbook>

Hemos definido una fuente de datos la libreta de direcciones que utilizan el nombre addressbook.xml como archivo de datos. La ruta de registro es: / agenda / categora / persona Campos en el informe se definen de la siguiente manera:
Nombre del campo CATEGORA Person_id APELLIDO NOMBRE HOBBIES Descripcin del campo / Agenda / @ name categora / Agenda / categora / persona @ id / Agenda / categora / persona + APELLIDO / Agenda / categora / persona + NOMBRE / Agenda / categora / persona + hobbies * aficin Tipo java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Object (convertible a JRDataSource) java.lang.Object (convertible a JRDataSource)

EMAIL_ADDRESSES / Agenda / categora / persona * e-mail

El informe principal (figura 7.2), hemos aadido un grupo llamado categora que tiene como expresin el nombre de categora.

Fig.7.2: El informe principal.

Tenemos dos subinforme tambin, uno para las aficiones de una persona y una de las direcciones de correo electrnico. El elemento de subinforme primer $ F {} HOBBIES como expresin de conexin (tipo de fuente de datos de expresin) y como expresin subinforme "/ hobby.jasper" de tipo String.

El elemento de subinforme segundo $ F {} EMAIL_ADDRESSES como expresin de conexin (tipo de fuente de datos de expresin) y como expresin subinforme "/ email.jasper" de tipo String. En hobby.jasper hemos definido un solo campo:
Nombre del campo Descripcin del campo Tipo HOBBY / Hobbies / pasatiempos java.lang.String

Lo mismo en email.jasper:
Nombre del campo Descripcin del campo Tipo E-MAIL / Persona / correo electrnico java.lang.String

Tenga en cuenta que todos los campos de subinforme se definen especificando como elemento raz en la trayectoria del elemento padre: HOBBY -> / hobbies / pasatiempos EMAIL -> / persona / correo electrnico Este es el resultado:

Fig.7.2: el resultado final.

Finalmente se muestra cmo utilizar el JRXMLDataDource en un programa:

XMLDataSourceExample.java
1 paquete it.businesslogic.ireport.examples ; 2 3 importacin it.businesslogic.ireport.connection.JRXMLDataSource; 4 importacin dori.jasper.engine.export.JRPdfExporter; 5

6 importacin dori.jasper.engine .*; 7 importacin java.util.HashMap; 8 9 10 pblica XMLDataSourceExample clase { 11 12 public static void main (String [] args) throws Exception { 13 14 ReportFileName String = "/ addressbook.jasper"; 15 OutFileName String = "/ addressbook.pdf"; 16 XmlFileName String = "/ addressbook.xml"; 17 RecordPath cadena = "/ agenda / categora / persona"; 18 19 JRXMLDataSource jrxmlds = new JRXMLDataSource (xmlFileName, recordPath); 20 21 HashMap hm = new HashMap (); 22 23 tratar de 24 { 25 JasperPrint imprimir JasperFillManager.fillReport = ( 26 ReportFileName, 27 hm, 28 jrxmlds); 29 30 JRExporter exportador = new dori.jasper.engine.export.JRPdfExporter (); 31 32 exporter.setParameter (JRExporterParameter.OUTPUT_FILE_NAME, outFileName); 33 exporter.setParameter (JRExporterParameter.JASPER_PRINT, impresin); 34 35 exporter.exportReport (); 36 System.out.println ("Archivo creado:" + outFileName); 37 } 38 catch (e JRException) 39 { 40 e.printStackTrace (); 41 System.exit (1); 42 } 43 catch (Exception e) 44 { 45 e.printStackTrace (); 46 System.exit (1); 47 } 48 49 } 50 51 }

7.5 XML Datasource licencia


JRXMLDatasource no est liberado bajo licencia GPL (como iReport es), pero bajo LGPL como jasperreports: de esta manera se puede utilizar el JRXMLDataSource en su programa sin problemas. Sin embargo, si usted lo usa, por favor haga una donacin simblica para el proyecto iReport.

8 Grficos
JasperReports no maneja directamente grficos: se deben crear de forma independiente como imgenes, incluso con uno de los numerosos de cdigo abierto disponibles bibliotecas Java para crear grficos. La imagen obtenida se muestran utilizando un elemento de imagen. La idea es muy simple, pero la creacin de un grfico en tiempo de ejecucin requiere un buen conocimiento de la programacin

de JasperReports, y muchas veces es necesario utilizar escribir scriptlets capaces de recoger datos que willl ser expuestos en la carta. Con la versin 0.4.0, iReport proporciona una solucin a la construccin de semplify tabla con una herramienta nueva carta. Esta herramienta permite crear un grfico de configuracin de las propiedades principales y los datos para darle de comer de una manera muy sencilla para el usuario final. Creacin de un grfico es delagated a una biblioteca de cdigo abierto denominado as saber JFreeCharts (versin 0.9.21), desarrollado por David Gilbert de la Refinera de Objeto Limitado. supportas iReport por ahora slo un pequeo nmero de tipos de grficos expuestos en JFreeCharts, y se pueden modificar las propiedades del grfico slo unos pocos (en JFreeChart efecto permite un control muy fino sobre todas las propiedades de la tabla), pero es posible, de todos modos, cree grfica clara con una gran la visin del impacto.

8.1 Creacin de un grfico simple


En este apartado vamos a tomar confianza con la herramienta grfica, la construccin de un informe con una tabla de paso a paso Pie3D, posteriormente vamos a echar un vistazo a todos los detalles relacionados con el manejo de grficos. En la muestra vamos a utilizar como fuente de datos la base de datos Northwind en HSQLDB. Empezamos a abrir un documento en blanco. Abra la ventana de la consulta mediante este botn: y escribir en el campo de texto SQL en esta consulta:

select SHIPCOUNTRY , COUNT(*) AS ORDERS_COUNT from ORDERS group by SHIPCOUNTRY

Fig. 8.1 La consulta de informe

La idea es crear un grfico para ilustrar las ventas en los diferentes estados. Ejecutado el Quey, campos seleced se appeare en la lista. Confirmar el registro de campo presionando el botn OK: todos los campos retrived de la consulta se registrar en el informe. Podemos posicin de los campos en el detalle del informe arrastrndolo, es decir, de la biblioteca de objetos (fig. 8.1).

Fig. 8.2 El informe con HIPCOUNTRY campo.

Tenemos que ajustar la altura de las bandas no til (Resumen de todos los excluse y detalles) a cero. Seleccione la herramienta grfica y dibujar un rectngulo en la banda de resumen con el ratn.

Fig. 8.3 Ponemos la tabla en la banda de resumen.

iReport se alerta sobre la necesidad de activar el soporte interno para manejar scriptlet scriptlet: haga clic en S. Desde la paleta Seleccionar tipo de grfico iethe tabla Pie3D y pulse Aceptar. Debemos estar ahora en la situacin de muestra en la figura 8.2. En este punto tenemos que configurar la tabla. Abra la ventana de propiedades del

elemento (doble clic en el elemento), vaya a la ficha Grfico y pulse el botn "Editar propiedades del grfico".

Fig. 8.4 de la ficha Grfico.

Se aparece la ventana de Propiedades del grfico (la misma de la que se elige el tipo de grfico, fig.8.5).

Fig. 8.5 de la ficha Grfico de tipo

Esta ventana est organizada con tres pestaas: e: tipo de grfico, los datos y detalles grficos. La primera pestaa permite elegir el tipo de grfico para mostrar: todos los grficos necesitan datos estructurados en serie, todas las series que necesita el tipo de grfico seleccionado se enumeran en el cuadro denominado "Informacin Grfica" en la parte inferior ficha donde se expone el nombre del tipo de grfico y la biblioteca se utiliza para generar (por ahora todas las cartas se producen usando JFreeChart 0.9.21, pero iReport puede apoyar otras bibliotecas). En nuestro caso vamos a necesitar una serie de almacenar etiquetas (expuestos en el eje Y), y una sola serie de nambers (llamada Serie 1). Nos mueven en la ficha Datos. Vamos a encontrar una tabla con dos filas dispuestos a obtener el nombre de las dos series que satisfacen las necesidades grfico (fig. 8.6).

Fig. 8.6 Los datos Tab.

Son maneras diferentes de crear una serie. Por ahora vamos a utilizar la forma ms sencilla: vamos a dejar manejar el iReport serie para nosotros. Seleccione la opcin "serie de informes" para abrir la ventana de una serie de informes (fig. 8.5).

Fig. 8.7 Informe serie.

Crear una nueva serie pulsando "Nueva serie". La ventana de la figura. 8.8 aparecer. Dar un nombre para la serie (pas) y establecer el "Reset Cuando" al . Ahora tenemos que escribir una expresin para el valor que queremos recoger para generar la serie. En nuestro caso vamos a tener una serie de cadenas de PasDestinatario y una serie de nmeros enteros para Serie1.

Fig. 8.8 Serie definicin.

Para utilizar el editor de expresiones, pulse el botn izquierdo del ratn sobre el rea de texto y seleccione la opcin "Use TextEditor" del men. Aadir todas las series de dos, volver a la ventana de la fig. 8.6 y seleccione las dos series creadas a partir de los dos cuadros combinados para asignar en las etiquetas de los SERIE_COUNTRY y en la Serie1 SERIE_ORDERS_COUNT. Confirman las propiedades del grfico modificaciones, guarde el archivo y ejecutar el informe con la fuente de datos activa (la barra de herramientas). Puede mostrar el resultado final en la figura 8.9.

Fig. 8.9 El informe final de la tabla.

En iReport Gua: Series: automtico, series personalizadas Tipos de grficos: Grfico de sectores, en el grfico Pie3D, Bar, Bar3D, Lnea, rea

You might also like