Sei sulla pagina 1di 7

Reportes con iReport Atreves de Netbeans Por: Javier Estupiñan

HERRAMIENTAS UTILIZADAS

NetBeans 6.7.1
Plugin iReport para NetBeans 3.6.0 Descargar iReport-nb-3.6.0-plugin.zip
MySQL 5

INSTALANDO IREPORTS

Al descargar el Archivo iReport se descomprime quedan 4 archivos extensión nbi.


Abrir Netbeans por Herramientas-Complementos, Seleccionamos la pestaña de descargado y
damos clikc sobre el botón Agregar plugins.

Buscamos la carpeta los archivos que acabamos de descomprimir, los agregamos e instalamos y
finalmente cerramos.
Queda Netbeans listo para hacer reportes.

Connections/DataSources

Una vez instalado el plugin y creada la BD, vamos a establecer la conexión a la Base de Datos por medio de
JDBC pero antes de eso, debemos establecer el classpath donde se encuentra el driver JDBC para nuestro
DBMS, en este caso el driver Connector/J. Dicho conector viene por defecto con NetBeans.

En el menú Herramientas–Opciones buscamos en la parte superior un botón con el logo de iReport y le


damos clic para posteriormente ir a la pestaña de CLASSPATH. Agregamos el fichero jar del driver y con
esto ya podemos pasar a establecer la Conexión a la BD.

Vamos al menú Report DataSources y pulsamos sobre el botón


New para agregar una nueva conexión. Aparecera una ventana como la mostrada en la imagen.
Reportes con iReport Atreves de Netbeans Por: Javier Estupiñan

Tenemos varias opciones las cuales no explicaré (además que no he usado todas). Usaremos una conección
JDBC que es la que debemos usar para conectarnos a DBMS como MySQL, PosgreSQL, Oracle, entre
otros más, por lo cuál seleccionaremos la segunda opción “NetBeans DataBase JDBC Connection”.

Posteriormente pasaremos a otra ventana en donde debemos seleccionar la conexión que previamente
establecimos en NetBeans

Diseñando el Informe

Una vez guardados los cambios deberemos agregar un archivo visual para diseñar nuestro reporte, para ello
vamos al “source package” (Paquete de fuentes) y agregamos un “Empty Report” (si no aparece en la lista,
lo buscamos en otros). Al hacer esto, aparecera en NetBeans el diseñador visual de iReport. Tendremos un
área dividida varias regiones, PageFooter, columnFooter, columnHeader, etc. Para más información
referente a cada una de ellas puede visitar el siguiente tutorial, aunque maneja una versión algo vieja de
iReport sirve como referencia o bien, se puede buscar más información en internet.

Para este ejemplo, solo vamos a utilizar las regiones de title, pageHeader, columnHeader, detail y
pageFooter, por lo cuál deberemos ocultar las demás estableciendo un valor de 0. En uno de los paneles
izquierdos que hay en NetBeans encontraremos algo como lo que muestra la
siguiente imágen.

Por lo tanto, deberemos seleccionar las regiones sobrantes y en el panel de


propiedades que esta en el lado derecho, debemos establecer el valor de Band
height a 0 y con esto notaremos que desaparecerá dicha región en el área de diseño.

Una vez hecho lo anterior, solo deberemos tener en el área de diseño las 5 regiones
mencionadas con anterioridad.
Reportes con iReport Atreves de Netbeans Por: Javier Estupiñan

Podemos observar que en el panel derecho tenemos una pequeña paleta de componentes. Entre ellos el
Static Text y Text Field.

La diferencia entre ámbos es que el Static Text es en si como su nombre lo dice, “Texto Estático”, es decir,
nos va servir para poner los rotulos y titulos de nuestros reportes. En cambio, el Text Field sirve para
mostrar los resultados de la consulta a la Base de Datos para generar nuestro reporte.

Antes de hacer el diseño, primero vamos a establecer la consulta y a definir las variables necesarias. En el
menú File–Report query deberemos escribir la consulta SQL. Haga click en la figura de abajo para ver su
tamaño original y observe la sencilla consulta SQL y el resultado que nos genera en la parte de abajo.
Realice esto mismo y al término presione el boton de OK.

En el panel de la izquierda de iReport, veremos que al desplegar la opción de Fields, tendremos los campos
que deseamos obtener con la consulta SQL. En este caso, tendremos id, código, nombre, etc…

Ahora ya estamos listos para diseñar el reporte. En la segunda parte de este breve tutorial veremos como
hacerlo.

La región details es la que contendrá los datos que devuelva la consulta SQL, por lo tanto, es de suponerse
que estos deberán ser componentes Text Field y no Static Text.

Para insertar los componentes, los seleccionamos del panel derecho presionando con el mouse y sin soltarlo,
arrastramos al área de diseño. Al igual que pasa con los controles SWING, al seleccionar un componente
tenemos el panel de propiedades, así podemos modificar el color, tamaño y tipo de fuente. Entendido esto,
procedemos a realizar un diseño similar al mostrado por la figura:
Reportes con iReport Atreves de Netbeans Por: Javier Estupiñan

Al agregar un Text Field a nuestra área de diseño, observaremos que tienen el texto de $F{field} .
Deberemos cambiar la palabra “field” que se encuentra dentro de las llaves y poner el nombre de los
campos que nos devolverá la consulta SQL. Si a estas alturas hay aún algún despistado que no sabe de lo
que hablo, me refiero a los campos de la consulta SQL que hicimos:

“SELECT * FROM estudiante”

Y estos campos son los que encontraremos en el panel izquierdo al desplegar la opción de Fields. Ahora
bien, para asignar esos campos a los Text Fields, basta con dar doble click al Text Field y editarlo ó bien
seleccionar el TextField y en el panel de propiedades ir a la propiedad Expression y ahi cambiar el valor.

Las cajas de texto que estan en la región de pageFooter son para indicar el número de página, pongo a
continuación el valor de las dos Text Field en caso de no identificar bien lo que esta escrito en la imágen.

“Page ” + $V{PAGE_NUMBER} + ” of “

“” + $V{PAGE_NUMBER}

Con esto, si hemos hecho todo correctamente, ya podemos tener una vista de nuestro reporte, así que
podemos ir al menú Designer y ejecutar el reporte con Run report.

La figura muestra el resultado de ejecutar dicho reporte!


Reportes con iReport Atreves de Netbeans Por: Javier Estupiñan

Llamando el Informe desde la Interfax Grafica

Cree un Nuevo archivo de Ventana grafico.


Añádale un botón.
Agregue el siguiente código de las librerías.
import java.sql.*;
import java.util.*;
import javax.swing.JOptionPane;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
import net.sf.jasperreports.view.JasperViewer;
Para que se le quiten los errores que le cargan dentro de la carpeta de instalación de netbeans esta la
carpeta de ireports Busque los archivos que muestra en la figura y cópielos en una carpeta aparte.

Depues clik derecho en biblitecas y agragar archivo JAR/ Carpeta y buscamos nuestro archivos y
los añadimos todos. (Ya no hay errores por importación de archivos solo la alerta por no usarlos pero
eso se quitara mas adelante).

Agregamos El siguiente código de conexión al la base de datos y generación del reporte:

public static Connection getConnection() throws ClassNotFoundException, SQLException {


//Configuración de la conexión.
String driver = "com.mysql.jdbc.Driver";
String connectString = "jdbc:mysql://localhost/universidad";
String user = "root";
String password = "root";

Class.forName(driver);
Connection conn = DriverManager.getConnection(connectString, user, password);

//Retornamos la conexión establecida.


return conn;
}

public static void imprimirReporte(){

//La Ruta de nuestro reporte


String filejasper="c:\\Reporte.jrxml";
try
{
//cargamos parametros del reporte (si tiene).
Map parameters = new HashMap();
Reportes con iReport Atreves de Netbeans Por: Javier Estupiñan

parameters.put("REPORT_LOCALE",new java.util.Locale("es","CL"));
parameters.put("parametro1","Hola Mundo!");
JasperDesign jasperDesign = JRXmlLoader.load(filejasper);
//Compilar el Reporte.
JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);

//Preparacion del reporte (en esta etapa se inserta el valor del query en el reporte).
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters,
getConnection());

//Cargar reporte en el visor.


JasperViewer jasperviewer = new JasperViewer(jasperPrint,false);

//Le ponemos un titulo personalizado al visor, y desplegamos el reporte.


jasperviewer.setTitle("Reporte de Prueba");
jasperviewer.show();

}
catch(Exception e)
{
JOptionPane.showMessageDialog(null,"Hay datos no validos, Revise y calcule
nuevamente","Validacion de campos",JOptionPane.WARNING_MESSAGE);
}
}

Finalmente en acción de botón llamamos el procedimiento

imprimirReporte();

Al ejecutar de primera sale la ventana con un boton.


Reportes con iReport Atreves de Netbeans Por: Javier Estupiñan

Al dar click en el botón aparecerá el informe.

Para tener en cuenta:

El archivo .jrxml lo estoy llamado desde la ruta c:/ por lo tanto debemos copiar el archivo en esta ruta, si solamente
quieren dejarlo dentro del programa quitamos el c:/ lo que quiere decir que lo buscara dentro de la carpeta donde
se genera proyecto .

Cualquier inquietud o Aporte con Gusto.

La Ruta Para Quienes desean la fuente del proyecto es: Reportes

Potrebbero piacerti anche