package reportes; import java.sql.*; import java.util.HashMap; import java.util.Map; import java.util.logging.Level; import java.util.logging.Logger; import javax.swing.JOptionPane; 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.*; /** * * @author Carlos Martinez */ public class IniciarReporte { Connection conn; public IniciarReporte(){ try { Class.forName("org.gjt.mm.mysql.Driver"); conn = DriverManager.getConnection(URL_MYSQL,USUARIO_MYSQL,CLAVE_MYSQL); } catch (SQLException ex) { Logger.getLogger(IniciarReporte.class.getName()).log(Level.SEVERE, null, ex); } catch (ClassNotFoundException ex) { Logger.getLogger(IniciarReporte.class.getName()).log(Level.SEVERE, null, ex); } } public void MiConsultaN(){ try{ String archivo = System.getProperty ("user.dir")+"\\src\\reportes\\MiReporte.jasper"; System.out.println("Cargando desde: " + archivo); if(archivo == null){ JOptionPane.showMessageDialog(null,"Error al generar reporte, verifique impresora\n", "Generar Reporte",JOptionPane.ERROR_MESSAGE); } JasperReport masterReport= null; try { masterReport= (JasperReport) JRLoader.loadObject(archivo); } catch (JRException e) { System.out.println("Error cargando el reporte maestro: " + e.getMessage()); JOptionPane.showMessageDialog(null,"Error al generar reporte, verifique impresora\n","Generar Reporte",JOptionPane.ERROR_MESSAGE); } JasperPrint jasperPrint= JasperFillManager.fillReport(masterReport,null,conn); JasperViewer jviewer= new JasperViewer(jasperPrint,false); jviewer.setTitle("Titulo de mi Reporte"); jviewer.setVisible(true); }catch (Exception j){ System.out.println("Mensaje de Error:"+j.getMessage()); } } }Y para llamarlo colocamos en cualquier evento lo siguiente:
IniciarReporte jasper = new IniciarReporte(); jasper.MiConsultaN();Lo mas importante a destacar es lo siguiente: "System.getProperty ("user.dir")+"\\src\\reportes\\MiReporte.jasper", esto es para indicarle al programa donde esta el archivo del reporte, una vez creado el programa y compilado, deberemos copiar dentro de la carpeta el paquete o archivos de reportes y cambiar la línea de código por la siguiente: "System.getProperty ("user.dir")+"\\carpeta\\MiReporte.jasper", con esto ya estamos listos para generar los reportes.
Recibe notificaciones por correo