Ir al contenido principal

IReport + Java - Ejemplo Parte 1


REPORTE EN JAVA + IREPORT DENTRO DE UN FORMULARIO

Este es un pequeño ejemplo de como trabajar reportes en java, utilizar el ireport ya sea como plugin dentro del Netbeans o externo. los dos funcionan de la misma manera, pero lo que vengo a mostrarles a continuación es como, poder montar un reporte en con extensión .jasper dentro de un Formulario ya sea un JDialogModal,  JFrame o un JInternalFrame, hasta en un jpanel. los pasos son muy parecidos. así que le explicare un ejemplo sencillo de como hacerlo.
Bueno a continuación veremos como lograrlo, pero para ello tenga en cuenta la secuencia de los pasos ok.

Paso nro 1: Este es el diseño que se quiere lograr.

Paso nro 2: Codificar la clase

package aq.reporte;

import aq.dao.BD;
import java.awt.Dimension;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import javax.swing.JDialog;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.view.JRViewer;

/**
 * @author Richard
 */

public class rptBalanceGeneral {
    
    private Connection cnn;
    
    public rptBalanceGeneral() {
        cnn = BD.getConnection();
    }
    
    public JRViewer runRBalanceGeneral(Date fechaApertura,JDialog inicio) {
        JRViewer viewer = null;
        try {
            String master = System.getProperty("user.dir") + "\\src\\aq\\reporte\\rptCuadreCaja.jasper";
            if (master == null) {
                System.out.println("no encuentro el archivo de reporte maestro");
                System.exit(2);
            }
            JasperReport masterReport = null;
            try {
                masterReport = (JasperReport) JRLoader.loadObject(master);
            } catch (JRException e) {
                System.out.println("error cargando el reporte maestro:" + e.getMessage());
                System.exit(3);
            }
            Map parametro = new HashMap();
            parametro.put("fechaApertura", fechaApertura);
            JasperPrint jasperPrint = JasperFillManager.fillReport(masterReport, parametro, cnn);
            if (jasperPrint.getPages().isEmpty() == false) {
                viewer = new JRViewer(jasperPrint);
                viewer.setOpaque(true);
                viewer.setVisible(true);
                viewer.setZoomRatio(Float.parseFloat("0.99"));
                viewer.setSize(new Dimension(1050, 580));
                viewer.setLocation(10, 100);
                inicio.getContentPane().add(viewer);
                inicio.pack();
            }
        } catch (Exception j) {
            System.out.println("mensaje de error:" + j.getMessage());
        } finally{
            try {
                cnn.close();
            } catch (SQLException ex) {
                System.out.println("mensaje :" + ex.getMessage());
            }
        }
        return viewer;
    }  
}


Paso nro 2: Codificar el Boton para cargar el reporte dentro del formulario.

Nota: Tener en cuenta la declaración de las variables jvRprtbgeneral y la clase rptBalanceGeneral().
          private rptBalanceGeneral rptbgeneral;
          private JRViewer jvRptbgeneral;

Espero que les sea de mucha ayuda :), y les sirva para sus proyectos que están iniciando :), ya que este ejemplo no solo carga el reporte dentro de un formulario sino, que también valida la si el reporte hay documento y te envía un mensaje.



Comentarios

Entradas más populares de este blog

Sistema de Ventas - Java

Este sistema de ventas esta desarrollado en java, utilizando como editor de lenguaje de programación NetBeans, la cual puedes conseguirlo gratuitamente desde su web oficial :  http://netbeans.org/downloads/index.html . Bueno el sistema no esta terminado pero ayudara a muchos a solucionar sus problemas de desarrollo en java como cargar imágenes a un jpanel desde un directorio, agregar datos jtable, consultas básicas en java conectados directamente a un gestor de base de datos " MYSQL ", que por cierto el scrip de la base de datos lo he subido junto con los archivos del sistema, también hay un ejemplo simple, utilizando reportes en java con ireport y jasperreport. bueno espero que les pueda ayudar en cualquier duda que tenga sobre como utilizar diferentes componentes que tiene java, con la finalidad de poder desarrollar un buen aplicativo que ustedes tengan en mente. Verdad me olvidaba si dese an visualizar el ejemplo de reportes...

SISTEMA DE PUNTO DE VENTA ONLINE - V2

Es una plataforma web que te permite administrar fácilmente tus ventas y poder administrar productos. Está plataforma es una versión actualizada de la versión 1  , la cual tiene más funcionalidades como control de inventarios, una interfaz mas amigable y mejorada. A continuación te mostraré puedes ingresar a la plataforma a través del siguiente enlace :  Sistema de Ventas V2 Puedes adquirir el software, realizando tu compra mediante paypal. haciendo click en el enlace "Buy Now", una vez realizado tu compra, tendrás que enviar la imagen del boucher generado al siguiente correo ricoru21@gmail.com.

SISTEMA DE PUNTO DE VENTA ONLINE - V1

Es una plataforma web que te permite administrar fácilmente tus ventas y poder administrar productos. Cuenta con una interfaz, amigable no solo para poder realizar tu proceso de ventas, si no también podrás registrar tus clientes, proveedores, realizar tu cuadre de caja, etc. A continuación te mostraré puedes ver un video demostrativo de la plataforma.  Puedes adquirir el software, realizando tu compra mediante paypal. haciendo click en el enlace "Buy Now", una vez realizado tu compra, tendrás que enviar la imagen del boucher generado al siguiente correo ricoru21@gmail.com.