Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Base de Datos / Base de Datos / iReport / Java / Java / MySQL / Proyectos / Como hacer una factura en Java (Proyecto)

Como hacer una factura en Java (Proyecto)

Autor jc mouse lunes, junio 27, 2011

Factura JavaTiempo atras me pidieron un ejemplo de como realizar un reporte con iReport tipo factura, recibo o como le llamen, complicado no es y se resumen en una consulta a la base de datos para luego mostrar este en un reporte previamente formateado, pues bien me hubiera gustado realizar un tutorial paso a paso de como hacer eso, pero «el tiempo» no perdona asi que mejor alternativa que dejarles el codigo fuente de ejemplo para que el que este interesado, explore este y le saque provecho.

¿Que necesitamos?

  • Un IDE, Netbeans 6.9
  • Un gestor de base de datos MySql
  • La libreria necesaria para conectar Mysql con Java (mysql-connector-java-5.1.6-bin – ultima versión a la fecha)
  • Las librerias necesarias para iReport (Añadidas en el RAR al final)
  • JasperReport para realizar el modelado de la Factura
  • Ganas, muchas Ganas!!!

La base de datos.

Como dije hay diferentes formas de realizar una base de datos sobre ventas, y por lo general en una aplicación comercial, estas cuentan con varias tablas y campos, para el ejemplo, utilizaremos una base de datos muy básica, consta de 4 tablas (CLIENTES,FACTURA,PRODUCTO, DETALLE)

MERCon esta BD tenemos lo necesario para simular una venta de un producto «X» a un cliente «Y» previamente registrado el cual se almacenara en la tabla FACTURA, ademas los diferentes productos que formen parte de la venta, se almacenaran en la tabla DETALLE.
En a la Tabla Factura, podemos ver un campo Vendedor, este campo por lo general cuenta con su propia tabla y sus propios datos, para fines de este ejemplo lo dejamos solamente como un campo.
Repito, esta es una forma, en otras BD la tabla Factura y  Detalle no existe, y los datos de esta son extraidos de varias tablas que forman la base de datos, todo depende de quien diseñe la Base de Datos.

Tambien en esta ejemplo podremos ver el trabajo mediante la programacion por «Capas», esto quiere decir que se separa la interfaz de la logica del programa, la clase encargada de realizar la comunicacion entre la interfaz y los datos se llama «Control».

Capas programmingComo algunos recibos muestran el total de la transaccion en numero y en literal, podemos ver una clase Numero_a_Letra.java,  la cual realiza dicha conversion. La clase conectate.java encargada de la conexion MySql con Java, la clase Sql.java, en donde se realizan todas las consultas a la base de datos, la clase iFactura, la encargada de mostrar la factura la cual hace uso de los archivos .Jasper y .jrxml.

Aqui podemos ver la aplicacion en funcionamiento

El enlace de descarga

Enlace de descarga

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Rompecabezas con forma irregular

Rompecabezas con forma irregular

En este post vemos una manera de como crear un juego de rompecabezas en java sin el uso de java2d, ademas, las piezas de...

Impresión de Interfaz Gráfica de Usuario

Impresión de Interfaz Gráfica de Usuario

En este post veremos como imprimir secciones de un formulario en java implementando la Interface Printable. La clase que...

Blog MVC en PHP (Código Fuente)

Blog MVC en PHP (Código Fuente)

En este post dejo el código fuente de un blog en PHP desarrollado siguiendo el patrón de diseño MVC (Modelo, Vista y Con...

Formateo de registros en Excel con JExcel

Formateo de registros en Excel con JExcel

Tenia un problema, me pasaron unos archivos excel con unos cientos de registros (ver imagen más abajo) que exportaron de...

Crear archivos JNLP con Netbeans

Crear archivos JNLP con Netbeans

¿Que son los archivos JNLP? Java Network Launching Protocol (JNLP) es una especificación usada por Java Web Start. Esta...

Agregar soporte para JNLP en servidor Apache

Agregar soporte para JNLP en servidor Apache

Java Network Launching Protocol (JNLP) es una especificación usada por Java Web Start. Esta especificación, permite tene...

57 comentarios en “Como hacer una factura en Java (Proyecto)”

  1. elite dice:

    mil disculpas he estado testeando el codigo de factura
    y tengo un problema me dice «no se ha encontrado la biblioteca reportes o bien todo funciona pero al imprimir no imprime nada de paso te digo que es con netbeans 6.9.1
    y me arroja lo siguiente

    Exception in thread «AWT-EventQueue-0» java.lang.NoClassDefFoundError: org/codehaus/groovy/control/CompilationFailedException
    at java.lang.Class.getDeclaredConstructors0(Native Method)
    at java.lang.Class.privateGetDeclaredConstructors(Class.java:2406)
    at java.lang.Class.getConstructor0(Class.java:2716)
    at java.lang.Class.newInstance0(Class.java:343)
    at java.lang.Class.newInstance(Class.java:325)
    at net.sf.jasperreports.engine.JasperCompileManager.getCompiler(JasperCompileManager.java:472)
    at net.sf.jasperreports.engine.JasperCompileManager.loadEvaluator(JasperCompileManager.java:238)
    at net.sf.jasperreports.engine.fill.JRFillDataset.createCalculator(JRFillDataset.java:421)
    at net.sf.jasperreports.engine.fill.JRBaseFiller.(JRBaseFiller.java:428)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:76)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:86)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:56)
    at net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:142)
    at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:52)
    at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:417)
    at jcfactura.iFactura.ver_Factura(iFactura.java:33)
    at jcfactura.Control.VerFactura(Control.java:95)
    at jcfactura.Interfaz.jButton6ActionPerformed(Interfaz.java:197)
    at jcfactura.Interfaz.access$400(Interfaz.java:6)
    at jcfactura.Interfaz$5.actionPerformed(Interfaz.java:114)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2012)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2335)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:404)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:253)
    at java.awt.Component.processMouseEvent(Component.java:6203)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
    at java.awt.Component.processEvent(Component.java:5968)
    at java.awt.Container.processEvent(Container.java:2105)
    at java.awt.Component.dispatchEventImpl(Component.java:4564)
    at java.awt.Container.dispatchEventImpl(Container.java:2163)
    at java.awt.Component.dispatchEvent(Component.java:4390)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4461)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4125)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4055)
    at java.awt.Container.dispatchEventImpl(Container.java:2149)
    at java.awt.Window.dispatchEventImpl(Window.java:2478)
    at java.awt.Component.dispatchEvent(Component.java:4390)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:649)
    at java.awt.EventQueue.access$000(EventQueue.java:96)
    at java.awt.EventQueue$1.run(EventQueue.java:608)
    at java.awt.EventQueue$1.run(EventQueue.java:606)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:116)
    at java.awt.EventQueue$2.run(EventQueue.java:622)
    at java.awt.EventQueue$2.run(EventQueue.java:620)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:619)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)
    Caused by: java.lang.ClassNotFoundException: org.codehaus.groovy.control.CompilationFailedException
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
    … 56 more

    1. Mouse dice:

      yo tengo guardado las librerias de jasper en una carpeta llamada «reportes», es esa libreria la que te pide y el error que te sale por no encontrarla au si tu tienes el jasper instalado, lo que puedes hacer es crear desde netbeans una nueva libreria, no importa el el contenido, y la llamas «reportes», despues la agregas al proyecto como otra cualquier otra libreria y el error debe desaparecer, cuando el error desaparesca, eliminas esa libreria y ya, la aplicacion te debe compilar sin problemas

  2. francisco dice:

    Hola Mouse: Soy un aprendiz de java que ha estado siguendo tu pagina por un buen rato y sacado muy buenos ejemplos de ella ¡Gracias!. Una pregunta: Estoy tratando de bajar el codigo de la factura y no logro hacerlo, solo llego hasta donde pide escribir la palabra que ves ¿hay algún truco? ¿Otra pagina o lugar de donde bajarlo?

    1. Mouse dice:

      el problema es de freakshare, pero lo subire a mega o a otro server, paciencia 🙂 saludos y gracias

  3. francisco dice:

    Hola Mouse:Te pido un favor ¿Me permites el fuente de JcFoto? Te cuento que yo hice un programa con el mismo proposito y quiero comparar nuestros códigos porque mi clase no esta funcionando como componente

  4. sadalsuud dice:

    waaaaao!!! muchas gracias por compartir de esa forma, que bacano, y muy buen ejemplo y el sitio se ve muy bueno, aun no he mirado el ejemplo, creo que la impresion xD un saludo. Estaré pendiente del sitio.

  5. Paul dice:

    Holamuchas gracias amigo buen trabajo me gustaria que me ayudaras en algo,
    lo que quiero saber es como hacer pra en elmomento que abres ejemplo la ventana clientes y si doy otra vez abrir ventana clientes me salga ese mensaje que ya esta abierta la ventana como en tu ejemplo ayudame porfavor

  6. Alexis dice:

    Mouse, por alguna razón no puedo bajar ninguno de tus ejemplos, porqué motivo no me deja hacerlo?.

    Gracias.

    1. Mouse dice:

      si estas usando IE, trata con otro navegador y fijate que tienes js activado, si ese no es el error, ten paciencia que este fin de semana revisare la pagina de las descargas 🙂

  7. huggggo dice:

    JC ya descargue tu ejemplo, pero tengo una dificultad, al crear la base de datos me sale muchos errore, lo que hago es, copia el contenido del blog de notas donde esta el los codigos y lo pego en la base de datos que cree, ojo que menos el create database, explicame como debo de hacer. ojala q me respondas, gradias de antemano

    1. Mouse dice:

      pero que error te sale, ¿error de sintaxis?, prueba creando las tablas uno por uno

  8. yamid dice:

    jc tengo varios problemas.
    1) soy novato en esto, pero estoy dando base de datos y me pidieron que hiciera un proyecto que se integrara a con java.
    2)me sale varios errores. creo que es por lo del usuario y la contraseña, yo utilizo el xaamp dentro del cual viene mysql pero no se cual es ese usuario y contraseña que tu dices.
    3) no se si debo crear la base de datos en phpmyadmin o me lo ejecuto y el me agrega los clintes.
    espero tu pronta respuesta.
    ya estan integradas las librerias
    saludos

    1. Mouse dice:

      el error que te sale es por datos incorrectos, en xaamp el usuario por defecto es «root» y el password no tiene, osea dejas la cadena vacia.
      el proyecto tiene las instrucciones en un archivo TXT para crear la base de datos junto a las tablas, y debes crearlas utilizando phpmyadmin.

  9. mauro dice:

    Hola Mouse. Sabes cuánto me puede costar un programa hecho a medida para mi negocio, es una distribuidora de insumos médicos, el programa necesitaría llevar cuenta de las notas de venta, clientes, vendedores, contabilidad de las ventas, inpresion, etc. O tal vez tengas algún contacto para que lo cotice gracias de antemano

    1. Mouse dice:

      no se puede realizar una cotización así nomas, se necesitan muchos más datos, el «etc» deja mucho cosas al aire 🙂 si deseas saber más comunícate por privado 🙂

  10. Alex dice:

    tengo problemas me sale este error he intentado y no he podido resolver sugerencias

    Exception in thread «AWT-EventQueue-0» java.lang.NoClassDefFoundError: org/codehaus/groovy/runtime/callsite/CallSiteArray
    at newReport_1337668011458_877894.$createCallSiteArray(calculator_newReport_1337668011458_877894)
    at newReport_1337668011458_877894.$getCallSiteArray(calculator_newReport_1337668011458_877894)
    at newReport_1337668011458_877894.(calculator_newReport_1337668011458_877894)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    …..

    1. Alex dice:

      En contre la solucion si alguien se le presenta es solo modificar la propiedad del reporte se seleciona lenguaje java

  11. sergi dice:

    Compañero, muchas gracias por el aporte, era exactamente el que buscava, tanto para uso particular, como, claramente, para aprender de este lenguaje.

    Si puedo ayudar en alguna cosa aqui dejo mi correo: djseku@gmail.com

    1. christian dice:

      Hola, queria saber si tuviste dificultad al momento de imprimir

      Exception in thread «AWT-EventQueue-0» java.lang.NoClassDefFoundError: net/sf/jasperreports/compilers/GroovyEvaluator
      at java.lang.ClassLoader.defineClass1(Native Method)
      at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
      at net.sf.jasperreports.engine.util.JRClassLoader.loadClass(JRClassLoader.java:338)

      esto me dificulta poder avanzar.
      tienes alguna sugerencia

      1. Mouse dice:

        lo dice en la primera linea del error, revisa las versiones del jasperreport, casi siempre los problemas es por incompatibilidad de versiones :/

  12. Dario dice:

    oye mira hago todo lo que dice en el txt pero al momento de ejecutar el programa me arroja el siguiente error y no me muestra ni los clientes ni me deja realizar una factura

    error: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database ‘dbfactura/dbfactura’

    porfavor colaborame

    1. Mouse dice:

      el error esta en la base de datos, dice que no reconoce dbfactura, verifica que lo hayas creado correctamente y que el nombre en java sea el mismo 🙂

  13. VIANEY VARGAS dice:

    amigo mouse como hago si me hace un gran favor de explicarme para consultar una imagen con un numero de referencia asignado pero que no esta en base de datos sino en una carpeta y necesito q esa consulta me la haga propiamente en la ruta donde estan guardadas?????

    1. Mouse dice:

      :/ pues entonces recorres todos los archivos de tu carpeta IMAGENES y buscas el ID que corresponde a la imagen retornando el nombre completo del archivo «123_miimagen.jpg», si no lo encuentra pues retornas NULL 🙂

  14. Emanuel dice:

    Hola mauose! Muy buenos tus ejemplos, pero mira, me he bajado el proyecto de factura, creando la bd de datos y todo, pero al momento de conectar me sale este error..
    java.sql.SQLException: Access denied for user ‘factura’@’localhost’ (using password: YES)
    ya le di los privilegios en phpMyAdmin pero no se cual sea el problema, si puedes darme una manito estaria muy agradecido..

  15. Emanuel dice:

    Asi esta armado la conexion mouse

    private final String bd = «dbfactura»;
    private final String login = «factura»;
    private final String password = «ruc»;
    private final String url=»jdbc:mysql://localhost/»+bd;

    1. Mouse dice:

      el error te dice que tus datos de conexión son incorrectos :/ comprueba que sean los correctos 🙂

  16. sergi dice:

    Buenas tardes compañeros, primero antes que nada si puedo ayudar a Emanuel, has comprovado que en el phpmyadmin tengas el usuario factura y que la base de datos tenga el mismo nombre, si la base de datos lo tiene prueva en canviar los datos de coneccion en el programa y probar con root y la contraseña que tengas para acceder al phpmyadmin y si asi entra ya sabes que es problema del usuario.

    Ahora queria comentar que, me voy a montar una tienda de informatica y como necesitava algun programa para hacer la facturacion etc este proyecto me gusto mucho y ahora mismo me encuentro mejorando el programa («para mis necesidades») asi que si quando este listo si quereis os lo puedo pasar.

    Un cordial saludo.

    1. Mouse dice:

      esperando tu aporte entonces 🙂

  17. Eleazar dice:

    Buenas Tardes..
    Desearia saber si tuvieses aplicativos web desarrolados para que los compartas…..

    1. Mouse dice:

      como cuales por ejemplo 🙂

  18. Anonimo dice:

    jc-mouse muy buena pagina me gusta mucho este ejemplo podrias implementar esta factura cliente-servidor…. me gustaria mucho saber sobre ese tutorial espero pronta respuestas…

  19. VIANEY VARGAS dice:

    jcMouse te agradezco bastante sigo con tus tutirilaes no termino de verlos pero he aprendido muchas cosas; amigo muose tenes muchos proyectos hechos y que nos sigues compartiendo muchisimas gracias………….

  20. Fred dice:

    hola amigo aquí de nuevo, oye disculpa como podría hacer para que por ejemplo si escribo el ID de un producto en un jTexfield en el jCombobox se cambie automaticamente al id del producto tecleado en el jTexfield es que mi idea es como para un lector de codigo de barra, hice que se cargaran los datos al teclear el id del producto en el jTexfield pero al agregar el producto este me registra bien pero salvo el id puesto que en el jCombobox hay un id diferente al id insertado en el jtexfield pues no me registra los datos con ese id, ejemplo en el jcombobox esta el id=1 que pertenece a Chocorroles y están cargados los datos de Chocorroles en cantidad=2 precio=11 etc. pero al teclear el id por ejemplo id=10 que pertenece a Gansitos si me carga los datos de gansitos es decir su precio=8 la cantidad=20 etc. solo que al registrar queda así id producto=1(ese seria el error porque ese id no pertenece al producto) nombre producto=Gansitos cantidad=20 y precio=8 <== esos datos son los correctos, entonces por eso quisiera saber si hay una manera para que al teclear el id en el jtexfiel el jcombobox automáticamente cambie igual al id del jtexfield tecleado, no quiero modificar la consulta que se hace en la base de datos por que es correcto todo y porque si por ejemplo se llegara a dañar el lector de código de barra quiero que se pueda seguir operando el programa sin la necesidad de este, hasta que se sustituya por uno nuevo, saludos espero tu ayuda jc-mouse y gracias como siempre por todos tus tutoriales, por ejemplo ahorita ando buscando información sobre como hacer mi propio lookandfeel ya que hay muy buenos pero de pago en cuanto yo haga uno hago un tuto y lo comparto con la comunidad aunque por lo que llevo investigado es un tanto complejo por toda la codificación que hay que hacer saludos jc mouse, quizas no vea tu respuesta en algo de tiempo pues me cuelgo a las redes que pueda gggg la situacion no es muy buena y no cuento con internet en casa, hago lo que pueda por aprender.

    1. Mouse dice:

      no te entiendo bien, pero creo que quieres cambiar la selección de un jcombo diatónicamente, para hacer esto dispones de

      jcombo.setSelectedItem -> cambia al valor que pases si es que existe ej. «articulo 1», «articulo 2»
      jcombo.setSelectedIndex -> cambia el index de la opción seleccionada, 0,1,2,3 ,etc

      1. Fred dice:

        ammm nop es por ejemplo escribir en el jtextfield 0001 y que en el jcombobox aparezca 0001 use el selecteditem o el additem pero ninguno de los dos va o me da error o desaparece misteriosamente el jtextfield gggg

        1. Mouse dice:

          bueno entonces debes hacer uso de un listener en el jtextfield y que de acuerdo al valor que se ingrese realice la seleccion en el jcombo 🙂

      2. Fredd dice:

        hola jc mouse pues resulta que volvi a intentarlo de esa manera y misteriosamente funciono ya no me gnero ningun error aveces mi netbeans me marca errores y no los hay =s lo que queria hacr quedo de esta manera: jcombobox.setSelectedItem(jtextfield.getText()); usando el eventos/key/keyReleased gracias por todo eres grande tio

        1. Mouse dice:

          me alegro 🙂

          1. Fred dice:

            sabes podrias hacer un tuto de como evitar que un jar se ejecute varias veces? ya lo hice y me funciona pero tengo un pequeño detalle mi programa hace uso de dos jframe el primero es para el Login y el segundo es el programa en si cuando me logueo hago un dispose(); a la ventana de login para cerrar y realizo un setVisible(true); para mostrar la interfaz de mi programa ahi todo bien, si quiero volver a abrir el programa pues ya no lo hace porque estoy utilizando un puerto el cual verifica que si esta ocupado este de un aviso y cierre la segunda instancia del programa, bueno diras donde esta el detalle o problema? el problema esta en que tengo un boton para «cerrar secion» que lo unico que hace es hacer un dispose(); en la interfas de mi programa y un setVisible(true) en el login de echo ya lo hice con solo setVisible(true o false); en ambos pero a la hora de segun cerrar secion pues secierra mi aplicacion diciendo que ya hay una instancia del programa en ejecucion =S ya le movi todo pero mas no doy espero tu ayuda amigo, mi programita cada vez lo veo mejor gggg solo me falta comprar cajon, lector de codigo de barra y miniprinter eh visto uno que hace el corte automaticamente pero es muy caro.

  21. Freed dice:

    Tendrias por ahi algo sobre el uso de sockets amigo? algun libro que recomiendes? quiero que mi punto de venta sea tipo cliente servidor…. o alguna idea?? saludos!!!! creo que soy el que mas te pregunta xD

    1. Mouse dice:

      ya se vienen mas tutos , perdon estaba ocupado 🙂

  22. VIANEY VARGAS dice:

    Amigo mouse que buena honda muchisimas gracias por compartir con humildad tus proyectos de verdad te agradezco y que Dios siempre sea bendiciendote y dandole mas conocimiento,,, muchas gracias de verdad… mil gracias..
    quisiera pedirte un favor como es la clase Conexion para una base de datos sql server ??? pero q sea estructurada asi como la de los proyectos a base de datos access me ayudas con esta clase ?? como conecto sql server

    1. Mouse dice:

      la conexión es prácticamente como la de cualquier otro, solo cambia el driver

  23. abigail dice:

    gracias por el proyecto me sirvio de mucho, solo una duda, intente hacer un nuevo proyecto y empleando muchas de tus clases, pero cuando creo un repotre nuevo nunca me lo muestra en pantalla, y si modifico el tuyo, aunke le quite campos o texto siempre me aparece igual(el reporte de la factura) osea que siempre muestra lo mismo, que puedo hacer para editarlo??
    Gracias

  24. abigail dice:

    y cuando hago mis propios reportes me aparece este error
    Atributo ‘uuid’ no se le permite aparecer en ‘JasperReport’ elemento.
    podrias ayudarme… pliss

    1. Mouse dice:

      es por incompatibilidad de jasperreport con versiones anteriores, en el ejemplo del post utilice la version 3.7 donde no existe el atributo uuid, para resolver el problema tienes la solución en este enlace:
      http://thinkinginsoftware.blogspot.co.at/2012/10/ireport-attribute-uuid-is-not-allowed.html

      🙂

  25. freddy molleda dice:

    buenas hermano espero este bien..!! mira el programa me esta generando un error tengo las librerías correctas las tome de la carpeta librerías del proyecto y las agregue a un paquete que lo llame reportes. ahora estoy utilizando la versión 7.3 de netbeans sera posible que sea por eso..???? ademas otra pregunta deberia utilizar el plugin ireport correspondiente a la versión de la libreria jasperreport 3.7.2…?? esta es la excepcion que genera

    Exception in thread “AWT-EventQueue-0″ java.lang.NoClassDefFoundError: org/codehaus/groovy/control/CompilationFailedException

    la cual como tu comentas es porque posiblemente no encuentre las librerias

    1. Mouse dice:

      por lo general al hacer reportes el problema es por la versión de las librerias de jasper, si sigues el tuto y creas el reporte desde cero utilizando las librerias de ireport 5 (que es la ultima version) no hay ningun problema 🙂

  26. Juan Enrique dice:

    Ayudame con este error que me sale al generar el reporte:

    Exception in thread «AWT-EventQueue-0» java.lang.NoClassDefFoundError: org/codehaus/groovy/runtime/callsite/CallSiteArray
    at null_1373336430792_523120.$createCallSiteArray(calculator_null_1373336430792_523120)
    at null_1373336430792_523120.$getCallSiteArray(calculator_null_1373336430792_523120)
    at null_1373336430792_523120.(calculator_null_1373336430792_523120)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

  27. Jesus sanchez dice:

    Hola muchas gracias por la ayuda tengo el siguiente problema quiero añadirle a jcreportfactura dos campos mas de la tabla detalles ya lo adicione en el qry pero no me aparece en el formulario al momento de crear el textfield no me deja añadir el campo de la tabla y cuando lo hago en el jtexfield expresion y compilo me genera error gracias.

    1. Mouse dice:

      :/ los errores mas comunes de jasper son las versiones, esta factura esta hecha con una version antigua y si tratas d editarla con una nueva version de jasper puede que sea la causa del error lo mejor seria que crees desde cero tu reporte con la nueva version de jasper 🙂

  28. Paúl Velasteguí dice:

    Hola muchas gracias por tu código he aprendido bastante analizando quice modificar lo de la factura (ireport) alguien mas ya pregunto dices que es incompatibilidad del ireport cual usas tu? y cual incompatibilidad con le netbeas 8.0.1? el error es este
    Exception in thread «AWT-EventQueue-0» java.lang.NoClassDefFoundError: net/sf/jasperreports/compilers/GroovyEvaluator
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:760) at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
    at net.sf.jasperreports.engine.util.JRClassLoader.loadClass(JRClassLoader.java:338) at net.sf.jasperreports.engine.util.JRClassLoader.loadClass(JRClassLoader.java:338)
    at net.sf.jasperreports.engine.util.JRClassLoader.loadClassFromBytes(JRClassLoader.java:261)

  29. Rodolfo Ruiz dice:

    Hola Mouse, gracias por tu aporte, he tratado de descargar el proyecto pero no se puede por los links de descargar, me podes facilitar una copia.

    Gracias.

    1. Mouse dice:

      hola 🙂 revisado los link, funcionan 🙂

  30. Franco dice:

    hola JcMouse, escribo porque necesito saber como impimir facturas el papel continuo (ticket) urilizando impresoras fiscales. Alguna idea??
    Aquí te dejo una imagen de una impresora fiscal

  31. Fabián dice:

    Amigos para los que tengan el problema con la libreria «jasperreports»
    Simplemente creen una nueva libreria llamenla «reportes» y busquen el jar que tambien deben llamarlo «reportes».. Fue la unica manera de que me pudiera leerla y funcionará esa libreria…

    Se los recomiendo.. este es solo un error de identificacion de la libreria.. asi fue nombrada y es la manera para poder agragarla correctamente..

Los comentarios estan cerrados

Comparte lo que sabes

Categorias

Últimas entradas

Por lo general se usan transacciones a nivel base de datos y posteriormente se llaman estos a través de procedimientos a...

En este post, aprenderemos como conectar Visual Basic 6 con SQL Server, abrir una tabla, leer su contenido y mostrar est...

Lo que veremos en este post es la configuración del driver para PHP de SQL Server que ha creado Microsoft el cual permit...

Google Bard la inteligencia artificial de Google se actualiza con una mejora que entra a competir con el resto de IAs y...

Herramientas

Generador de Enlaces a Whatsapp