Está en la página 1de 29

LB

Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

MANUAL IREPORTS

Creado por Lenin Boada Pino


Fecha Creación 04/06/2018
Fecha Modificación 04/06/2018

DELTA21 WEB 1
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

INDICE

1. INSTALACION ..................................................................................................................................... 3
2. LEVANTAR IREPORTS....................................................................................................................... 4
3. CONFIGURAR DATA SOURCE ......................................................................................................... 5
4. DISTRIBUCIÓN DEL LAYOUT ......................................................................................................... 8
5. BARRA DE HERRAMIENTAS ......................................................................................................... 10
6. DEFINICIÓN PARÁMETROS, CAMPOS Y VARIABLES ............................................................. 11
7. DEFINICIÓN CONSULTA CON PARÁMETROS ........................................................................... 15
8. CAMPOS CALCULADOS.................................................................................................................. 16
9. MANEJO DEL PRINT WHEN EXPRESSION .................................................................................. 17
10. GRAFICOS EN IREPORTS ......................................................................................................... 18
11. SUBREPORTES ............................................................................................................................ 21
12. REPORTES DINAMICOS ............................................................................................................ 26
13. USO DE CLASES JAVA .............................................................................................................. 27
14. ENLACES DE INTERES.............................................................................................................. 29

DELTA21 WEB 2
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

1. INSTALACION

1. Instalar DB2 como cliente para conectarse a un servidor de Base de


Datos.

2. Instalar j2sdk y configurar las variables de entorno

a. JAVA_HOME

b. PATH

DELTA21 WEB 3
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

3. Instalar Ireport
a. Copiar la carpeta en el siguiente PATH

2. LEVANTAR IREPORTS

Ejecutar C:\Archivos de Programa\Apache\Ireport-1.2.0\ireport.bat

La interfaz gráfica de iReport comienza a cargarse:

DELTA21 WEB 4
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

3. CONFIGURAR DATA SOURCE

 Verificar que los archivos *.jar que permiten la conexión vía JDBC estén
definidos en la variable de sistema

DELTA21 WEB 5
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

 Configurar los DataSource JDBC

Seleccionar DataSource--> Connection/DataSource-->New

 Name: Escribir el nombre de la base de datos.


 JDBC Driver: Seleccionar el Driver de la base de datos con la cual
se realizará la conexión.
 JDBC URL: La dirección URL de donde se encuentra alojado el
ambiente de trabajo de la base de datos.
 Especificar la cadena de conexión con la base de datos, colocar
usuario y password.
 Salvar la configuración de la conexión.

DELTA21 WEB 6
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

Presionar el botón Test, para verificar que la conexión este correcta, para la
cual deberá aparecer la siguiente ventana:

DELTA21 WEB 7
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

Para Oracle los parámetros son:

4. DISTRIBUCIÓN DEL LAYOUT

La apariencia del layout (plantilla) de la página del reporte es la siguiente:

DELTA21 WEB 8
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

Donde:

 title Aparece sólo al inicio del reporte. El título se escribe en está


sección. Ejemplo: “Reporte de Desempeño de los empleados”
 pageHeader Aparece en la parte superior de cada página. Puede
contener información como la fecha y hora, nombre de la organización,
etc.
 columnHeader Sirve para listar los nombres de los campos que se van
a presentar (desplegar). Por ejemplo: “Nombre del Empleado”, “Hora de
Entrada”, “Hora de Salida”, “Horas trabajadas”, “Fecha”, etc.
 detail En esta sección se despliegan los valores correspondientes a las
entradas de campos definidas en la sección anterior. Por ejemplo “Juan
Perez”, “09:00”, “18:00”, “9”,”2005-04-27”
 columnFooter Puede presentar información sumarizada para cada uno
de los campos. Por ejemplo “Total de Horas Trabajadas: 180”

 pageFooter Aparece en la parte inferior de cada página. Este parte


puede presentar, el contador de páginas como “Página 1/7”

 summary Esta sección se usa para proporcionar información


sumarizada de los campos presentes en la sección “detail” por ejemplo
para el caso de las horas trabajadas de cada empleado se puede definir
un objeto gráfico tipo “pie” para tener una mejor comparación y
comprensión visual de los datos.

DELTA21 WEB 9
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

5. BARRA DE HERRAMIENTAS

Los objetos de texto, imágenes, etc pueden ser colocados en la plantilla del
documento usando el método de arrastrar y pegar.

Para insertar texto puro usar:

Para insertar campos (Fields) usar:

Para insertar imágenes usar:

Cuando insertamos un objeto de texto lo haremos arrastrando el elemento


hasta el lugar del documento donde queramos visualizarlo. Seguidamente se
presionará clic derecho para editar las propiedades del objeto y así poder
definir los valores de fuente, bordes y el contenido mismo del texto.

DELTA21 WEB 10
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

A medida que insertemos objetos de texto (estáticos y campos dinámicos),


nuestro reporte empezará a definir la apariencia visual que buscamos.

6. DEFINICIÓN PARÁMETROS, CAMPOS Y VARIABLES

Para definir los parámetros se tiene que pulsar el botón “Parameters” desde la
barra de herramientas

Los documentos que se generan con iReports + jasperreports tienen varios


valores que son seteables o configurables, estos son parámetros, campos
(Fields) y variables:

DELTA21 WEB 11
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

a)Parámetros: son valores generales como el titulo del reporte / subreporte,


ubicación, autor, etc.

b)Campos (Fields): son los campos tipo texto que llenaremos desde las
consultas lanzadas a la aplicación durante la ejecución del reporte.

DELTA21 WEB 12
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

c) Variables: una variable es un valor calculado como una sumatoria.

DELTA21 WEB 13
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

Los objetos de tipo TextField, deben definir un campo field en su viñeta de


propiedades y deben usar el key “textField”. En general debe configurarse
como se indica en las siguientes pantallas.

Una vez que hemos terminado de diagramar nuestro reporte, debemos


compilar y luego ejecutarlo. La herramienta nos permite tener una vista previa
en varios formatos de la apariencia de nuestro documento.

DELTA21 WEB 14
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

7. DEFINICIÓN CONSULTA CON PARÁMETROS

RECOMENDACIONES:

 USAR SQL ESTÁNDAR


 USAR FUNCIONES DE USUARIO PARA EVITAR JUNTURAS
 NO USAR ALIAS EN LAS TABLAS
 NO USAR FUNCIONES COMO COUNT(*), SUM(*), UNION

Para que un Query maneje parámetros en ireports de debe hacer referencia


a los parámetros previamente creados en el reporte. De la siguiente
manera:

SELECT CODIGO,TIPO,NOMBRE
FROM mutual.CO_CTA
WHERE CODIGO BETWEEN $P{CodigoIni} AND $P{CodigoFin} AND
ID_EMPRESA=$P{Empresa}
DELTA21 WEB 15
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

ORDER BY CODIGO

8. CAMPOS CALCULADOS

 Crear un nuevo TextField , dar clic derecho e ir a sus propiedades.


 Poner la fórmula cálculo en TEXTFIELD EXPRESSION.
 Tanto parámetros, campos o variables pueden participar en una fórmula.
Parámetros -> $P{nombre_parametro}
Campo -> $F{nombre_campo}
Variable -> $V{nombre_variable}

 Se deben respetar estrictamente el manejo de tipos de datos del


lenguaje JAVA.
o Por ejemplo:
o No se podrán sumar String y tipos de Datos Double.
o No se podrán sumar DATE , para eso se usan los métodos
propios de la Clase DATE.

 Ejemplos de fórmulas utilizados:

o Suma de valores Double.

DELTA21 WEB 16
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

new Double ( V{totalactivo}.doubleValue()+


$V{total4}.doubleValue()+ $V{total61}.doubleValue()+
$V{total63}.doubleValue()+ $V{total71}.doubleValue()+
$V{total73}.doubleValue())

o Obtener la fecha actual


new Date()

o Fórmula de condición.- Si el signo es N, el saldo lo multiplica por -


1

( $F{SIGNO}.equals("P") ? $F{SALDO} : new Double


($F{SALDO}.doubleValue() *
new Double(-1).doubleValue()))

o Para la paginación:

"Pagina: " + $V{PAGE_NUMBER} + " de "

9. MANEJO DEL PRINT WHEN EXPRESSION

Sirve para indicar una condición para que el campo pueda ser mostrado en el
reporte o no. Debe recibir un resultado Booleano.

DELTA21 WEB 17
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

10. GRAFICOS EN IREPORTS

A partir de la versión 0.4.0, iReport proporciona una herramienta para


simplificar la construcción de un gráfico. Esta herramienta permite crear un
gráfico configurando propiedades y datos principales que serán vistos de
manera simple por el usuario final.

La creación de un gráfico se basa en una librería muy conocida de código libre


llamada JFreeCharts desarrollada por David Gilbert de Object Refinery Limited.
iReport soporta por ahora solamente un pequeño número de tipos de gráficos
presentados en JFreeCharts, y pueden modificarse solamente algunas de las
propiedades del gráfico, pero es posible aún así, crear gráficos limpios con un
gran impacto a la vista.

DISEÑO DE EJEMPLO

DELTA21 WEB 18
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

Para insertar un gráfico en un reporte de iReport, seleccione el objeto Chart


tool de la barra de herramientas de iReport y dibuje el gráfico sobre la sección
summary del reporte:

A continuación deberá seleccionar el tipo de gráfico deseado, para este


ejemplo seleccionamos el tipo BAR. Oprimir el botón OK y el componente que
contendrá al gráfico ya ha sido creado, lo que resta es configurar las
propiedades del mismo y los datos que mostrará.
Haciendo doble click sobre el componente del gráfico, se mostrará la pantalla
de propiedades de este, sitúese en la pestaña Chart, a continuación oprima el
botón Edit chart properties, deberá aparecer una pantalla como la siguiente:

DELTA21 WEB 19
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

En la pestaña Chart properties de esta pantalla, se encuentran las


propiedades que pueden modificarse para el gráfico en turno, como el nombre
del gráfico, las fuentes, leyendas, ect. Puede dejar las propiedades actuales
por ahora y modificarlas posteriormente. Ahora centraremos la atención en la
manera de configurar los datos para el gráfico.

Debe situarse en la pestaña Chart data de la pantalla anterior y enseguida en


la pestaña Details. En el apartado Seriesexpression, coloque la descripción
para el eje de las X , en el apartado Category expresión coloque el campo $F{}
para los valores del eje X y en el apartado Value expresión coloque el campo
$F{} para los valores del eje Y. Estos campos son precisamente los que se
obtienen de la consulta que se estableció anteriormente, estos a su vez se
mostrarán en la sección detail del reporte.

DELTA21 WEB 20
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

Fuente reporte Ireport: cliPrestamo.jrxml

11. SUBREPORTES

DELTA21 WEB 21
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

Los pasos a seguir sarán los siguientes:

1. Diseñar el reporte maestro un elemento vacío de subreporte


2. Diseñar el subreporte como un reporte más
3. Definir los enlaces entre el reporte maestro y el subreporte

Después de llevar a cabo los puntos 1 y 2 debemos ser capaces de visualizar


por separado reporte y subreporte usando iReport.

 Inclusión del subreporte en iReport

La inclusión de un subreporte en un reporte usando iReport supone lo


mismo que incluir un campo de texto o un texto estático. Simplemente hay
que pulsar el botón de Subreport tool de la barra de herramientas y después
arrastrar el ratón en la banda que nos interese hasta conseguir el tamaño
deseado para nuestro subreporte.
La siguiente imagen muestra la parte de la barra de herramientas que
incluye el botón de
subreportes:

DELTA21 WEB 22
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

 Definir en el reporte maestro un parámetro, al que llamaremos


SUBREPORT4, de tipo net.sf.jasperreports.engine.JasperReport.
Para ello, abriremos la vista de parámetros del menú View y
accederemos a la ventana de definición de parámetros. En esta ventana,
pulsaremos el botón New para acceder al diálogo que nos permitirá
definir nuestro parámetro. La siguiente figura intenta sintetizar lo dicho
hasta ahora:

 Dar clic Derecho del subreporte y acceder a sus propiedades.

DELTA21 WEB 23
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

 En la pestaña Bajo el título Connection / Datasource expression, vemos


una lista desplegable. De ella, podemos seleccionar el método que
usará nuestro subreporte para obtener los datos. En nuestro caso,
seleccionamos el elemento Use connection expression ya que los vamos
a obtener de una base de datos mediante una conexión.
A continuación, escribimos la expresión que nos va a llevar a la conexión
deseada. En nuestro caso, el parámetro REPORT_CONNECTION.
Es decir, nuestro reporte maestro le va a pasar a nuestro subreporte la
conexión referenciada en el parámetro REPORT_CONNECTION para
que pueda ejecutar su consulta SQL.

DELTA21 WEB 24
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

 Enlazar y subreporte al parámetro que enlazamos anteriormente


(SUBREPORT4) y crear los parámetros que recibirá el subreporte.

DELTA21 WEB 25
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

 Si intentamos visualizar el reporte maestro desde iReport, veremos sólo


el reporte maestro. En el espacio del subreporte, no veremos nada.
La razón es simple, no le hemos pasado al reporte maestro todos los
datos necesarios para que pueda mostrarnos el subreporte.
Simplemente le hemos indicado dónde los puede encontrar. La
aplicación iReport no sabe crear un objeto JaspeReport y pasárselo en
un parámetro al reporte maestro.
Para ver el resultado final, escribiremos un pequeño programa en Java
que nos acabará de llenar los huecos que iReport no puede.

Fuente reporte Ireportco: coBalanceGeneral.jrxml

Llamada al reporte ver en el archivo: BalanceGeneral.jsp

12. REPORTES DINAMICOS

El problema a solucionar es tener un solo reporte y pasarle dinámicamente


el Query de consulta.
 No definir una Query estática
 Definir un parámetro sql_query de tipo string
 En lugar del Query estático colocar la siguiente instrucción
$P!{sql_query}

DELTA21 WEB 26
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

Fuente reporte Ireport: invInversiones.jrxml


Llamada al reporte ver en el archivo: inversiones.jsp

13. USO DE CLASES JAVA

 Definir un Directorio CLASSPATH , que contendrá las clases


compiladas.

 Registrar las Directivas de importación.

DELTA21 WEB 27
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

DELTA21 WEB 28
LB
Documentación
MANUAL IREPORTS Fecha: 04/06/2018
NORMAS-001

En el ejemplo se Accede al método hello() de la clase Prueba. Devuelve un


String

14. ENLACES DE INTERES

 http://jasperreports.sourceforge.net/
 http://www.forosdelweb.com/showthread.php?t=280528

DELTA21 WEB 29