Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Aprendareportes 090816161705 Phpapp01 PDF
Aprendareportes 090816161705 Phpapp01 PDF
plugin de
en N Diapositivas
Por:
Domnguez Geniz Amalio Javier
< ajdgeniz@hotmail.com >
< ajdgeniz@yahoo.com.mx >
http://ajdgeniz.wordpress.com
Javier
Firmado digitalmente por Javier
Dominguez Geniz
Nombre de reconocimiento (DN):
En este Manual mostrar como Generar Reportes para una aplicacin basada
en el SWING de JAVA, utilizaremos por supuesto a MySQL como nuestro
motor de base de datos predeterminado aunque tambin funcionaria con una
base de datos de PostgreSQL ya que lo conectaremos mediante JDBC (Java
DataBase Connectivity) y por supuesto funcionaria bien con SQL Server, Oracle
u otro a travs de una conexin ODBC. Para empezar estableceremos nuestro
entorno de trabajo:
Adobe Reader: Este ser utilizado para ver nuestros reportes que estarn en
formato PDF. Aunque en esta ocasin no es indispensable ya que los
visualizaremos a travs del Jasper Viewer.
http://ireport.sourceforge.net Ireport
Paso 2
Una vez creada la base de datos, abra Netbeans y cree un nuevo Proyecto como
a continuacin se indica:
Como se dio cuenta nos abri un proyecto de ejemplo, puede trabajar sobre
este mismo y agregar los componentes que aadiremos en los siguientes pasos
o puede continuar con los siguientes pasos que se mencionaran a continuacin.
Clic AQUI
Despus
AQUI
Ahora complete los parmetros pedidos, cuando los tenga haga clic en el botn
test, si la conexin se realiza con xito haga clic en save, de lo contrario corrija
los que estn mal, si el mensaje de error indica acceso denegado, puede que su
usuario o password sean los incorrectos, u otro problema comn es que el
servidor no este activado.
Despus en la pantalla de
datasources seleccione el
origen Reportes, aunque por
default se selecciona el
recin creado.
Disee el reporte a su gusto, en este caso solo utilizare 4 bandas que son: title,
page header, Detail, Page Footer. Las dems puede eliminarlas haciendo clic
derecho sobre la misma y seleccionando Delete Band o estableciendo el valor 0
en las propiedades del lado derecho.
Si por algn error elimino alguna que no debera haberse borrado, puede volver
activarla desde le Inspector de Ireport.
Ahora seleccione uno por uno y arrstrelo a la banda detail, esto nos evitara
problemas con el tipo de datos ya que cada tipo de datos en MySQL tiene un
equivalente en JAVA y esto al realizarlo de esta manera se realizara en
automatico, por ejemplo, el VARCHAR equivale a un String, el Int a INT, etc. El
reporte habara tomado una forma como la sig.
Recuerde que los campos son de tipo Text Field y no estticos y que ademas
el tipo de dato para Date() deber ser tipo Date.
Despus crearemos una clase de java que ser la encargada de crear y lanzar el
reporte, en la siguientes pantalla se muestra todo el cdigo fuente.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import javax.swing.*;
import java.util.HashMap;
import java.util.Map;
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.view.*;
import net.sf.jasperreports.view.save.JRPdfSaveContributor.*;
import net.sf.jasperreports.view.JRViewer.*;
import net.sf.jasperreports.view.save.JRMultipleSheetsXlsSaveContributor.*;
public IniciarReporte()
{
try
{
Class.forName("com.mysql.jdbc.Driver"); //se carga el driver
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/reporte","root","");
JOptionPane.showMessageDialog(null,"Conexin establecida");
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
catch (Exception j)
{
System.out.println("Mensaje de Error:"+j.getMessage());
}
Despus solo aada un evento al botn , para ello seleccione el botn y haga
doble clic o inclyalo desde la paleta de propiedades en la ficha eventos.
Ojala y les sirva este manual, recuerden que si tienen duda pueden escribirme a mi correo o visitar
mi blog donde encontraran mas manuales y recursos adems de establecer contacto directo
conmigo. Gracias y hasta pronto.
http://ajdgeniz.wordpress.com