Este documento describe cómo crear reportes usando NetBeans, JasperReports y MySQL. Explica cómo instalar las herramientas necesarias como NetBeans, MySQL, e IReport. Luego guía al lector en la creación de una base de datos de ejemplo, un proyecto de NetBeans, y una plantilla de reporte en IReport. Finalmente, presenta el código para generar e imprimir el reporte basado en un parámetro de entrada.
Creación de reportes con NetBeans, JasperReport y MySQL
1. Creación de reportes con NetBeans,
JasperReport y MySql.
Presentado:
Geovanny Mendoza Gonzalez
Blogs: http://geovanny0401.blogspot.com/
geovanny0401@gmail.com
Ingeniero de Sistemas
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 1
2. Este manual se basa en la integración del IDE Netbeans, el Motor de base de
datos MySql y la librería de creacion de informe JasperReports. Además se
incluye el plugin de IReport para Netbeans, se explicara a detalle cómo se
utilizara la biblioteca grafica para Java SWING para generar el reporte, en
este caso recibirá un Parámetro para generar dicho reporte y todo esto se
realizara en el IDE mencionado. Si llegan a tener alguna duda me pueden
escribir al correos electrónicos de la portada.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 2
3. INTRODUCCIÓN: En este Manual se desarrollara una aplicación para
Generar Reportes basado en el SWING de JAVA, utilizaremos como
mencionamos anteriormente el motor de base datos MySQL. Este ejercicio
también puede funcionar con otra base de datos que puede ser Oracle,
SQL Server y PostgreSQL. Para comenzar vamos a establecer nuestro
entorno de trabajo:
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 3
4. HERRAMIENTAS PARA EL DESARROLLO:
Netbeans 7.4(Puede utilizar esta versión e inclusive la versión mas
actual.
MySQL 5.1: Sera el encargado de alojar a nuestra base de Datos.
Ireport 5.1: El entorno grafico que nos ayudara a crear el Reporte.
Jasper Reports 5.1: Librerías que nos ayudaran a compilar y ejecutar el
reporte que son las siguientes:
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 4
5. LIBRERÍAS
• commons-javaflow
• commons-logging-1.2
• commons-beanutils-1.8
• commons-digester-2.1
• commons-collections-4-4.0
• jasperreports-fonts-3.7.5
• itextpdf-5.5.2.jar
• itext 5.5.2
• MySQL Connector para JAVA(mysql-connector-java-5.1.6-bin):este es nuestro
puente JDBC que nos permitirá la conexión entre el servidor de base de datos y el
lenguaje de programacion Java.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 5
6. LINK PARA DESCARGAR LOS INSTALADORES A USAR
• Todo el Software utilizado es Open Sourcey puede descargarlo desde:
• http://www.netbeans.org : Netbeans 7.4 o superior y en la sección de
PLUGINS encontrara el de Ireport
• http://dev.mysql.com/downloads/ : MySQL 5.1, Conector para Java y
Herramientas Graficas.
• http://community.jaspersoft.com/ : Ireport librería de creación de informes.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 6
7. INSTALACIÓN DEL PLUGIN
Para realizar este manual, por el momento se va a utilizar una tabla que
llamaremos afiliado. Digitaremos un registro que en este caso será el
código de afiliación de un usuario y utilizaremos exclusivamente el Ireport
que instalaremos dentro de Netbeans.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 7
8. Paso 1: Seleccionamos en el menú a
tools(Herramientas) y en el submenú le damos
click a puglins
Paso 2: ahora buscamos en la pestaña con
el nombre downloaded(Descarga) ,
seleccionamos con click Add Plugins
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014
8
9. Paso 3: Consultamos la ubicación en nuestro PC del archivo iReport-5.1.0.nbm y la
seleccionamos el botón abrir
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014
9
10. Paso 4: A continuación ya aparece nuestro plugin para instalarse en la parte derecha
aparece una descripción, seleccionamos el botón install(instalación) y presionamos click.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 10
11. Paso 5: A continuación seleccionamos el botón Next(Siguiente) y presionamos click para
continuar el proceso de instalación.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 11
12. Paso 6: A continuación seleccionamos la opción para aceptar los términos de licencia y después
presionamos click en el botón Install.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 12
13. Paso 7: En esta figura nos muestra El plugin ya está instalado y presionamos click en el botón
Finish.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 13
14. Paso 8: Para comprobar en la siguiente figura que se encuentra instalado y configurado
iReport en NetBeans.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 14
15. CREAR BASE DE DATOS
04 de Agosto de 2014
Geovanny Mendoza Gonzalez V
1.0 15
16. CREACIÓN DE LA BASE DE DATOS:
Como primer paso crearemos la base de datos junto con la instrucción
SQL de crear tabla e insertar registro, hay dos formas para INSERTAR
datos en una tabla: Una es insertar una fila vez, y la otra es
insertar filas múltiples por vez, en este caso utilizaremos la segunda
Opción también la pueden crear con algún asistente grafico o desde la
terminal de MySQL.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 16
17. CREACIÓN DE LA BASE DE DATOS:
SQL:
/*
Software : Generacion Reportes
DBMS : Mysql
Esquema : Afiliado
Script : Crea el esquema con sus respectivas tablas
Responsable : Geovanny Mendoza Gonzalez
Email : geovanny0401@gmail.com
Blog : http://geovanny0401.blogspot.com
*/
-- =============================================
-- CREACION DE LA BASE DE DATOS
-- =============================================
CREATE DATABASE REPORTE;
-- =============================================
-- CONECTARSE EL USUARIO
-- =============================================
USER REPORTE;
-- =============================================
-- CREAR LA TABLA AFILIADO
-- =============================================
CREATE TABLE AFILIADO
(COD_AFILIACION INTEGER,
TIPO_IDE CHAR(2),
NUMERO_IDE VARCHAR(30),
APEPATERNO VARCHAR(50),
APEMATERNO VARCHAR(50),
NOMBRE VARCHAR(60),
FEC_NAC VARCHAR(15));
ALTER TABLE AFILIADO ADD PRIMARY KEY
(COD_AFILIACION);
INSERT INTO AFILIADO (COD_AFILIACION, TIPO_IDE,
NUMERO_IDE, APEPATERNO, APEMATERNO, NOMBRE,
FEC_NAC)
VALUES
(1,'CC','12345678','SANTOS','BULLOSO','MARIA','23/04/1987');
INSERT INTO AFILIADO (COD_AFILIACION, TIPO_IDE,
NUMERO_IDE, APEPATERNO, APEMATERNO, NOMBRE,
FEC_NAC)
VALUES
(2,'CC','36985214','CALLE','ALVAREZ','OVIDIO','06/10/1940');
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014
17
18. Crear Proyecto en Netbeans
04 de Agosto de 2014
Geovanny Mendoza Gonzalez V
1.0 18
19. PASO 1: Como ya creamos la base de datos en este caso es el motor de base de datos MYSQL.
por lo tanto procedemos a crear un proyecto en Netbeans.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 19
1) En el menú principal del IDE nos
dirigimos a File escogemos New
Project
2) En Categories escogemos la
carpeta Java y en Projects
Seleccionamos Java Application y
presionamos el botón Next con un
click.
20. PASO 2: En Project Name: colocamos el nombre del proyecto, en Project Location donde vamos
a guardar el Proyecto, deseleccionamos la opción de Create Main Class y oprimimos el botón
Finish.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 20
21. Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 21
PASO 3: Por defecto ya tenemos el JFrame
En este caso vamos agregar los
Siguientes componentes
1) Dos JButton
2) Un Jpanel
3) Tres Jlabel
4) Un JTextField
22. Crear Plantilla en Ireport
04 de Agosto de 2014
Geovanny Mendoza Gonzalez V
1.0 22
23. PASO 1 : Seleccionamos el proyecto le damos click derecho file->other: Escogemos en
categoría Report y en File Types: Empty Report y presionamos Next
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 23
24. PASO 2 : Colocamos el nombre del archivo y presionamos click en Finish
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 24
25. PASO 3 : Como podemos observar ya se puede visualizar la plantilla del reporte.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 25
26. PASO 4: ahora vamos a crear el origen de datos para realizar nuestra conexión con la base de
datos.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 26
27. PASO 5: Damos click en opcion default y seleccionamos la opcion New.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 27
28. PASO 6: En este paso seleccionamos el tipo de datasource en este caso escogemos Database
JDBC connection y damos click en Next.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 28
29. PASO 7:. Completamos los parámetros como se muestra en la figura en la parte de abajo.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 29
Name: reportes
JDBC Driver: MySQL (com.mysql.jdbc.Driver)
JDBC URL: jdbc:mysql://localhost/reporte
UserName: root
Password: root
30. Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 30
PASO 8: En este paso vamos agregar un
parámetro seleccionamos la pestaña Report
Inspector y damos click derecho encima de
Parameteres y escogemos Add Parameter.
PASO 9:Despues que agregamos el parámetro
le colocamos el nombre, la clase de parámetro.
31. PASO 10: Seleccionamos la pestaña Report
Inspector y damos click derecho encima del
reporte1 y escogemos Edit Query.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 31
32. PASO 11: Escribimos la siguiente consulta en sql: SELECT * FROM AFILIADO WHERE
ID=$P{id}.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 32
33. PASO 12: Seleccionamos Fields para que nos muestre todo los campos de la tabla Afiliado,
agregamos al reporte en la parte Detail todos los campos que queremos visualizar.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 33
34. PASO 14: Por ultimo ante de realizar la codificación agregamos las librerías necesaria para
ejecutar la aplicación, nos ubicaremos en el proyecto y seleccionamos la carpeta libraries, damos
clikc derecho y presionamos en Add JAR/Folder. Después ubicamos donde tenemos guardado los
Archivos *.JAR y los adicionamos al proyecto.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 34
37. /**
*
* @author Geovanny
*/
public class Reporte {
public static final String DRIVER = "com.mysql.jdbc.Driver";
public static final String RUTA = "jdbc:mysql://localhost/reporte";
public static final String USER = "root";
public static final String PASSWORD = "root";
public static Connection CONEXION;
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 37
39. Ahora nos dirigimos al formulario y seleccionamos con doble clik el boton Generar y agregamos el
siguiente codigo.
int id = Integer.parseInt(txtAfiliado.getText());
reporte.EjecutarReporte(id);
Despues Ejecutamos el proyecto y enviamos el parámetro en este caso es el numero 1 listo.
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 39
40. Finalizamos el proyecto espero que sea gran ayuda y lo puedan implementar en sus proyecto, para
la próxima publicaciones voy a realizar y explicar ejercicios con JFreeChart, Realizar un Login y un
Aplicativo aplicando el patrón MVC.
Geovanny Mendoza Gonzalez
Blogs:
http://geovanny0401.blogspot.com/
Geovanny Mendoza Gonzalez V 1.0
04 de Agosto de 2014 40