lunes, 16 de enero de 2012

Integración de Netbeans IDE 7 con Ireport y SQL SERVER Parte II

En la primera parte les mostré como integrar SQL SRVER con NETBEANS e Ireport, ahí encontraran los links de descarga de los plugins y librerías que necesitaremos.

Veremos cómo hacer un reporte básico en una aplicación web y mostrarlo en un JSP en la web.

Ya teniendo integrado a NETBEANS con Ireport y abierto SQL SERVER con nuestra base de datos, vamos a nuestra aplicación y creamos un nuevo reporte.

Clic derecho en Web Pages / New / Report Wizard.















Colocamos un nombre al reporte sin borrar su extensión .jrxml













Escogemos el nombre que pusimos a nuestra conexión a la base de datos.













Podemos escribir la consulta directamente o ir al diseño.














En el diseño escogemos el esquema dbo para que muestre nuestras tablas
















Y en mi caso seleccionare la tabla paciente le podemos dar doble clic o arrastrar hacia el espacio negro.















Y seleccionamos todos los campos que queremos mostrar en el reporte. Y aceptamos.















Se genera la consulta y siguiente.












Pasamos todos los campos, si desean los ordenan pasando uno por uno.

























Escojo la segunda apariencia o formato de reporte porque son varios registros y campos.













Siguiente y finalizamos.

Nos aparece el diseño del reporte para poder modificar su encabezado y el nombre de los campos por si lo deseamos.












Seleccionan cada elemento y ala derecha nos aparecerá sus propiedades para editarlas si es necesario.













Una vez editado. Le damos en Preview.











Y nos muestra un reporte básico.














Ahora lo mostraremos en un JSP para al ejecutarlo nos muestra el reporte en PDF en la web.

Primero haremos un JSP de enlace al reporte, lo hacemos en nuestro JSP Index.










Colocamos un texto de enlace al reporte. EL reporte JSP del reporte se llamará Reporte1.










Al ejecutar nos debe mostrar el texto de enlace.







Creamos el JSP Reporte1.












Bien, cambiamos su código y ponemos el siguiente que les mostraré:



<%@page contentType="text/html" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">



/*Importamos las librerías de JasperReports* y las demás que usaremos/

<%@page import="java.io.*"%>

<%@page import="java.sql.Connection"%>

<%@page import="java.sql.DriverManager"%>

<%@page import="java.util.HashMap"%>

<%@page import="java.util.Map"%>

%@page import="net.sf.jasperreports.engine.*"%



<html>

<%

/*Parametros para realizar la conexión*/

Connection conn;

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

conn = DriverManager.getConnection("jdbc:sqlserver://127.0.0.1:1433;databaseName=BDClinica", "sa", "");

/*Establecemos la ruta del reporte*/

File reportfile = new File(application.getRealPath("Reporte1.jasper"));

/* No enviamos parámetros porque nuestro reporte no los necesita */

Map parameter= new HashMap();

/*Enviamos la ruta del reporte, los parámetros y la conexión*/

byte[] bytes = JasperRunManager.runReportToPdf(reportfile.getPath(), parameter,conn);

/*Indicamos que la respuesta va a ser en formato PDF*/

response.setContentType("application/pdf");

response.setContentLength(bytes.length);

ServletOutputStream outputStream= response.getOutputStream();

outputStream.write(bytes,0,bytes.length);

/*Limpiamos y cerramos flujos de salida*/

outputStream.flush();

outputStream.close();

%>

</html>

Luego de esto ejecutamos la aplicación y damos clic en el enlace al reporte y nos mostrará el reporte.
















Y eso es todo.

En la tercera parte haremos reportes con parámetros de entrada y gráficos estadísticos.

Integración de Netbeans IDE 7 con Ireport y SQL SERVER Parte I

Veremos cómo integrar Netbeans a Ireport trabajando con una aplicación web y una base de datos en SQL SERVER 2008.

Para esto necesitaremos descargar algunos plugins y algunas librerías que agregaremos o intalaremos a Netbeans para poder trabajar con Ireport y la base de datos.

Aquí les dejo los links de descarga:

Librería JasperReport: Enlace Libreria JasperReport

Plugins Ireport: Enlace Pugins Ireport

Librería Reporte Gráficos: http://www.megaupload.com/?d=GNYHBK90

 
Abrimos nuestra aplicación web en Netbeans.








Instalaremos en Netbeans los plugins necesarios para Ireport, vamos al menú herramientas o tools y damos clic en complementos o plugins.









Vamos a la pestaña instalados o downloaded y hacemos clic en el botón agregar plugins o add plugins.







Buscamos la carpeta de nuestra descarga y ubicamos los plugins de ireport seleccionamos todos y abrir.









 
Damos check a los 4 plugins y clic en el botón instalar o install.












 
Damos clic en siguiente o next ,damos check aceptando los terminos , esperamos que carge y finalizamos.




























Ahora cerramos la ventana de plugins y veremos q se nos agregaron las funciones de Ireport.







Bien ahora tenemos que agregar la librería del jasperReport a Netbeans.
Vamos a herramientas o tools y clic en librerías o libraries.








Agregamos una nueva librería.









Le colocamos un nombre y aceptamos.











 
Damos clic en Agregar JAR/Carpeta o Add JAR/Folder y ubicamos la carpeta de jasperReport-4.2.1 y abrimos. Luego le damos Aceptar u Ok.










Ahora agregamos los archivos .jar de reportes gráficos a nuestra librería en nuestra aplicación.
Clic derecho en librerías y Agregar JAR/Carpeta o Add JAR/Folder.








Buscamos nuestra carpeta de Librería de reportes gráficos, seleccionamos todos y abrimos.








También agregamos el Driver de SQL SERVER a la librería de la aplicación.

Ahora tenemos que establecer la conexión a nuestra base de datos a la aplicación y a los reportes con Netbeans.
Vamos a Servicios o Services y desplegamos Base de datos o Databases.








En mi caso la base de datos esta en SQL SERVER y para hacer la conexión con Netbeans lo hare usando el driver o complemento de SQL SERVER; tendremos que agregar el driver y crear la conexión a la BD.
Damos clic derecho en Drivers o Complementos y luego Nuevo Complemento o New Driver.






Clic en Agregar o Add y buscamos el archivo .jar.









 
Luego aceptamos.








 
Desplegamos los drivers y clic derecho en el driver de sql server luego click Conectar usando o Connect Using.










Aquí crearemos la conexión a nuestra base de datos. En host colocaremos la dirección: 127.0.0.1 que hace referencia a la máquina que estamos usando o host local, usaremos el puerto: 1433, colocan el nombre de su base de datos y el usuario y contraseña que usan al momento de conectar a SQL SERVER y probamos la conexión.











Le damos siguiente y escogemos el esquema dbo y finalizamos.










Y podemos ver que se creó una cadena de conexión y nuestra BD.












(Recomiendo que el driver de SQL SERVER lo tengan dentro de la librería de su aplicación al igual que las carpetas de los plugins y la librería de jasperReport y los gráficos por algo que pueda pasar ya lo tendrían dentro de su proyecto)
Ahora también deberemos agregar el driver de SQL SERVER dentro de las funciones de Ireport en Netbeans para poder conectarlo a la BD.
Vamos a Herramientas o Tools luego a Opciones u Options.










Vamos a la pestaña Ireport.










 
Luego vamos a Classpath , damos clic en agregar JAR y agregamos el driver de sql.







Le damos check a driver agregado y aceptamos.








 
Luego vamos al icono de conexión de base de datos en la funciones de Ireport.

 




 
Le damos clic en Nueva o New para crear una nueva conexión.











Escogemos la primera opción.










Siguiente y colocamos el nombre de nuestra conexión, en JDBC Driver escogemos el de SQL SERVER que está en negro. , server adress: 127.0.0.1. , el nombre de su BD (le damos en WIZARD para que cambie la url del jdbc), usuario y contraseña de sql. Probamos la conexión.
Y Guardamos.















 
Y eso es todo. Ya tenemos integrado a Ireport con Netbeans y nuestra Base de Datos en SQL SERVER.
En la II parte les mostraré como crear un reporte de una o varias tablas de nuestra BD y agregarle tmb gráficos estadísticos para posteriormente mostrar nuestro reporte en un JSP