Si has llegado aquí sin leer la primera y segunda parte, debes leerlos antes de continuar:
En esta última parte del tutorial veremos como ejecutar desde nuestra aplicación Java el reporte que ya hemos diseñado.
Si se percatarón que al ejecutar el reporte desde la vista de diseño, automáticamente se genero un archivo con el mismo nombre que el reporte pero bajo la extensión .jasper. Este archivo es el que deberemos mandar a llamar desde nuestra aplicación java.
Existen varias clases que nos serviran para ejecutar al reporte desde nuestra aplicación, por ejemplo la clase JasperPrint, JasperReport, etc.
Todas estas clases se encuentran en el paquete net.sf.jasperreports y dicho paquete esta en la libreria jasperreports-2.0.3.jar.
Aqui hay algo importante que señalar, cuando se descarga el programa de iReport trae consigo mismo a la libreria de JasperReport (recordemos que la que genera en si los reportes es JasperReport, iReport es solo la herramienta visual para diseñar los reportes y hace uso de JasperReport), además tambien trae algunas otras librerias que son necesarias para poder ejecutar los reportes y además algunas otras librerias que serán utiles por ejemplo cuando se desee generar reportes con gráficos, histogramas, exportar a excel, etc.
Entonces, lo que se hace cuando se trabaja con el programa de iReport, es propiamente diseñar el reporte ahi, una vez compilado, el archivo .jasper que nos genera lo copiamos a nuestra carpeta del proyecto, luego abrimos NetBeans, se escribe el código pero obtendremos algunos errores pues NetBeans no sabrá en que paquetes se encuentran las clases que arriba mencione (JasperPrint, JasperReport, etc). Entonces lo que se hace es agregar la libreria jasperreports-2.0.3.jar (panel izquierdo, click derecho en Libraries–add Jar/Folder) y con esto ya no obtendremos errores.
Ahora bien, no solo era necesario agregar esa libreria, también es necesario agregar otras más que como ya comentaba son necesarias al momento de ejecutar el reporte. Una vez que se tienen tales librerias, ahora si se proseguia a escribir el código y listo!!
¿A donde voy con todo esto?… Resulta que ahora no estamos usando el programa de iReport de forma independiente! Estamos usando el plugin de iReport para NetBeans. Por lo cuál era de suponerse ó al menos yo lo supuse, que al instalar dicho plugin, me agregaria esas librerias al path donde NetBeans busca los paquetes necesarios a importar y por lo cuál ya no iba a ser necesario agregar esas librerias en cada aplicación que generará reportes.
Sin embargo, esto no fué así. Al momento de escribir el código, obtuve errores precisamente porque no encontraba la localización de las clases JasperReport, JasperPrint, etc., clases que se encuentran como ya comenté en la libreria jasperreports-2.0.3.jar.
Entonces lo que tuve que hacer, fué copiar esas librerias que vienen al bajar el programa de iReport (ojo! dije programa de iReport, NO el plugin para NetBeans) y agregarlas a mi proyecto. Ahora bien, no estoy seguro de que esto deba ser así, sigo pensando que al instalar el dichoso plugin debe venir ya todo preparado para evitar la molestia de tener que estar agregando al proyecto esas librerias, sin embargo si no se hace así, se obtienen errores, desconozco en este momento si existe algún truco o alguna opción para evitar esto, por lo cuál tuve que agregar manualmente tales librerias.
Ahora bien, lo anterior no fué ningún problema, de hecho al momento que obtuve el error supe de inmediato que faltaba la libreria de jasperReport, sin embargo lo comentó aqui para que ustedes sepan.
En el proyecto que bajaron, existe una carpeta llamada misClases, dentro de dicha carpeta se encuentran las librerias. Si han abierto el proyecto, seguro se han percatado que en la clase ReporteAgenda hay errores:

Entonces, lo que deben hacer es copiar la carpeta misClases a C:\ ó a la carpeta de Java ó a algun otro lado donde ustedes deseen y entonces agregar todas las librerias de dicha carpeta al proyecto de NetBeans.

Al hacer esto, ya no obtendremos los errores y podremos ejecutar el reporte desde la aplicación Java. Bastará con introducir el número de ID del contacto que se desea visualizar y presionar el Botón.

Nuevamente pongo el link de descarga del proyecto:
http://www.mediafire.com/?dz9cxgtigzt
http://www.mundobyte.net/archivos/Java_2007/Ejemplo_Reportes.zip
El archivo de llama Ejemplo_Reportes.zip
Por último les comento que para crear el ejecutable, como saben, NetBeans generá la carpeta llamada “dist ” dentro de dist es donde deberan copiar la carpeta que contiene los reportes con su extensión .jasper, en este ejemplo, la carpeta es llamada “reportes”. Si dicha carpeta “reportes” no esta dentro de la carpeta “dist” el programa no se ejecutará, no funcionará sencillamente por que el programa no encontrará en el path al archivo .jasper.
Esperando este tutorial les sea útil como iniciación para aquellos que recien se inician en Java y llegado al tema de Bases de Datos, reportes, impresiones, etc. Si te ha servido la información, quizá puedas tomarte la molestia de dejar algún comentario y así saber si ha sido de interés para alguien.
Saludos!!
Archivado bajo: Bases de Datos, Java, MySQL, Programación | Etiquetado: imprimir reportes Java, iReport + JasperReport + NetBeans, Reportes en Java
Perfecto amigo justo lo q estaba buscando..
pero me puedes explicar como abrir tu proyecto directamente..
Hola Hugo!
Pues simplemente tienes que descargar el archivo, descomprimirlo, abrir netbeans y desde ahi abrir la carpeta!
Recuerda que antes debes ejecutar el script sql para crear la BD en MySQL y agregar las librerias a NetBeans. Todo esto se explica a lo largo de este tutorial.
Saludos!!
Estimado compañero en el ejecutable no me ejecuta el reporte hago la consulta pero sigo trabajando en ello creo que es porque no logra identificar la ruta del reporte
Hola amigo, no puedo descargar el proyecto, intente varias veces y me descarga fraccionado. Lo que estoy necesitando es el codigo del boton para llamar el reporte creado.
Desde ya muchas gracias.
Actualmente estoy intentando hacer funcionar el ejemplo.Pero igualmente creo que es fantastico que hayan paginas como esta que explican de una manera didactica paso a paso el desarrollo sobre todo del jasper report.
Ya lo compilo he creado varios reportes utilizando jasper y llamando a netbeans el problema se me da cuando utlizar el ejecutable de programa no encuentra el archivo especifico
HOLA!
Referente al problema del link de descarga, estoy teniendo unos problemas con ello y en estos momentos ya voy de salida, he estado un poco ocupado en estos dias y por ello tampoco he actualizado el blog.
Agradezco a ustedes sus comentarios, les pido me den 1 dia más, a más tardar el día de mañana MARTES 15 de ENERO arreglo el link de descarga.
REFERENTE AL PROBLEMA DE NO PODER CORRER EL EJECUTABLE ES DEBIDO A QUE NO ENCUENTRA LAS LIBRERIAS EN EL PATH. RECUERDEN NO SOLO CARGAR LA LIBRERIA jasperreport.jar SINO TAMBIEN LAS DEMÁS QUE MENCIONO, TODAS CARGUELAS EN NETBEANS Y AL INTENTAR GENERAR EL EJECUTABLE JAR LES AGREGARA TALES LIBRERIAS AUTOMÁTICAMENTE,.
SALUDOS!!
Buen aporte, gracias por el tiempo que dedicaste en eso.
Se espera el link de descarga del codigo.
Esta excelente esta pagina pero sigo con el problema el ejecutable no levanta el reporte en netbeans 6.0 si lo levanta cuando le doy f6 o run ejecutando la ventana creada pero cuando utilizo el .jar ejecutable no lo hace ya agregue las liberias de la carpeta que trae el proyecto pero aun asi no lo hace dice que la ruta del archivo no fue encontrada segun la excepcion que me lanza pero en netbeans es perfecto lo encuentra
si alguien que bajo el ejemplo, me podria enviar a mi mail mrotela81@gmail.com, les estaria muy agradecido.
HOLA A TODOS!
Si alguien de las anteriores personas que escribio antes a este mensaje visita el blog, les pido una disculpa, estuve muy ocupado y no tuve tiempo de corregir los links de descarga.
FInalmente estan solucionados. Cambie de host gratuito:
http://usuarios.lycos.es/mundobyte/Java/
El archivo de llama Ejemplo_Reportes.zip
Ya pueden descargar el proyecto, y el código. Recuerden seguir los pasos indicados en el tutorial para poder ejecutarlo.
Referente a lo que una persona comentaba de no poder correr el EJECUTABLE. lo único que necesita es COPIAR LA CARPETA DE LOS REPORTES DONDE ESTA EL FICHERO CON EXTENSIÓN .jasper A LA CARPETA “dist”. EN EL EJEMPLO, DICHA CARPETA SE LLAMA “reportes”, COPIE ESA CARPETA A “dist” Y CON ESTO EL PROGRAMA YA ENCONTRARÁ EL FICHERO .jasper
Saludos!!
Buenas compañeros primero que todo felicitar lo por esta pagina tan excelente, segundo ya se porque no podía levantar el reporte desde el dist el problema era la dirección yo lo digitaba asi dist/reportes/contactos.jasper cuando era asi “/reportes/contactos.jasper” el error era que no encontraba el directorio gracias por todo mi proyecto de bases datos ya genera los reportes y ahora con esta modificación esta casi completo pronto lo voy a subir para que lo vean los demas y me puedan jusgar
Felicidades, por su dedicaciòn y gran aporte. Quisiera preguntar si es posible incorporar clases ya compiladas (arhivos .class) de java a mis proyectos de NetBeans 6.0 y cual es el procedimiento a seguir.
Muchas gracias.
Hola Fernando:
SI es posible hacerlo. Solo coloque dichas clases en la carpeta “build” que es donde se guardan los bytecodes compilados (.class) de los ficheros .java
COn esto solo será necesario importar dicha clase, pero como sabe, netbeans le da la sugerencia de importar los paquetes. Por ejemplo si tiene el .class llamado Eemplo.class dentro del paquete prueba, deberia importar de esta forma:
import prueba.ejemplo.*;
y de esta forma ya puede hacer uso de la clase “Ejemplo”:
Ejemplo objeto = new Ejemplo();
objeto.metodo();
Reciba un cordial saludo!!
hey saludos
disculpa tengo un problemita al momento de llamar mi reporte desde netbeans, me manda que no puede ejecutarse la sentencia SQL de reporte, desde el modulo de iReporte al hacer el preview si hace bien la consulta netbeansme genera bien el reporte y todo bien pero ya cuando quiero llamarlo desde netbeans me marca ese error y nose que hacer que me recomiendas o como podria solucionar este problema.;
SI pudiera dar mas detalles o ser un poco mas entendido. Tambien seria bueno pusiera al menos las primeras lineas del error que le arroja.
Saludos!!
Saludos, tengo poco tiempo desarrollando en java, y el asunto es este, segun lo explicado para q funcione los reportes esta todo okey, pero esto solo funciona cuando la aplicacion funciona en windows, acabo de probar una aplicacion usando los mismo criterios para hacer andar los reportes y en windows XP funciono normal, pero en ubuntu, kubuntu y xubuntu no ubica a los reportes y manda una exception de que no encuentra el archivo.jasper, alguien le sucedio lo mismo?, alguna solucion?, gracias por el time
HOLA:
No es cosa de Windows o Linux, solo tiene que establecer bien en el código la ruta en donde se localiza el archivo .jasper.
No debe haber mayor problema en ello.
Intente cambiar la ruta, en caso de que no pueda, mandeme un correo a windoctor@mexico.com y trataré de responderle a la brevedad posible.
saludos!!
En respuesta a que no se ven los reporte en linux talves te funcione si pones la direccion completa te recuerdo que linux tiene que ser especifico sobre las direcciones por ejemple en tu carpeta home lo tienes todo intenta escribir asi home/Reportes/reportes.jasper para que encuentre la ubicacion o si no solo escribre reportes/reportes.jasper ya que en el ejecutable entra de esta manera al reporte
Esta muy bueno el material, ahora quisiera hacerte una pregunta, yo necesito realizar reportes con este estilo me viene muy bien, pero yo no utilizo bases de datos, los datos lo genero en el tiempo y no tienen persistencia, es decir crees que se pueda utilizar para hacer reportes sin base de datos.
Gracias por la data, el manualcito es realmente util para Net Beans..Soy de Argentina
lo maximo esta ayuda sobre ireport y net beans. ahora puedo avanzar sólo gracias a los primeros pasos que aprendi de este tutorial
.
Hola buen aporte lo que queria pregunarte es lo siguiente estoy haciendo un pequeño sistema de facturacion pero al generar la vista previa de una factura “x” no puedo porque aun no se guardan en la base de datos y no puedo hacer la consulta sql(”select * from factura”) , te agradeceria de antemano si me podrias ayudar gracias
Hola buenas noche, lei todo el tutorial y pues solo lo manejas con NetBeans, sabras como le puedo hacer para hacerlo con JSP y en dreamweaver
hola
esta super bueno el tutorial, pero tengo un gran problema, hace una semana que estoy tratando de hacer un reporte que contenga dos paginas, he tratado con subreportes y saltos de pagina pero siempre estan limitados al tamaño de la hoja. si alguien sabe como hacer esto me ayudaria bastante.
Luis
tengo problemas a la hora de importar las librerias no se como hacerle, ya me desesperé, y no encuentro la manera de jalar las clases..alguno de tus consejos me haria bien..
Hola, fijate k tengo un problema… esta muy kageta tu pagina… jaajaja pero bien kalabaza… weno almenos les kitas las orejas de burro a unos kuantos… oye x cierto… le voy a dar matarile a tu UBUNTU.. jaja saludos!!
atte. KM_CORP!
p.d. felices vacaciones…
HOla KM_Corp
La idea original del sitio no era publicarla, solo era para referencias personales. Después lo kgta del sitio es por que no me gusta diseñar y por que no tengo tiempo para hacerlo.
Por otro lado, actualmente no uso mucho la distro de ubuntu, fue la primera que use, estoy usando mandriva y gentoo.
Por último, reciba un cordial saludo xD
por cierto, ya supe quien es. Póngase mejor a estudiar sus temas de labview.
Hola, soy novata programando; me gustaria saber si podrias ayudame orientandome en como crear un reporte desde un programita desarrollado en netbeans el cual almacena un conjunto de datos de unos habitante, lo que necesito es desarrollar un modulo que permita al usuario , elegir los campos que quiere que se visualicen en el reporte y por cuales campos quiere filtrar la informacion, yo he creado unos reportes en ireports que trabajan con parametros , pero esto igual me restringue un poco.
Conoceran algun componente que cubra estas caracteristicas que yo pueda reutizar??
Agaradezco de antemano su pronto colaboracion
Estiamdo, excelente tuto, va directo a favoritos.
Muy didáctico y claro. Como dicen arriba sería genial poder contar con una pequeña reseña del código Java necesario para la ejecución del reporte y una explicacioncilla del mismo. Pero ya es quejarse de lleno
Gracias nuevamente y Sludos desde Argentina,
Muy buen aporte, espero que me funcioné y si asi es me has ganado el cielo
Muchas gracias y es muy importante tu aporte
Una consulta si quiero consultar fechas debo de crear dos parametros de la mima manera como se crea para los obtenga java?
hola que tal, excelente aporte, pero sigo sin poder ver los reportes cuando ejecuto el .jar ya copie los reportes a la carpeta dist y no me los muestra, cabe mensionar que no los mando a llamar com lo haces tu, sin embargo en netbeans me funciona perfecto pero en el ejecutable no…
este es el codigo que uso para llamarlo
String reportName=”SOLCAA/”+reporte+”.jasper”;
Map parametro = new HashMap();
parametro.put(”fech_ini”, fecha1);
parametro.put(”fech_fin”, fecha2);
parametro.put(”Total”, total);
InputStream fis=this.getClass().getClassLoader().getResourceAsStream(reportName);
JasperPrint print=JasperFillManager.fillReport(fis, parametro, conex.con );
JasperViewer jv=new JasperViewer(print,false);
jv.setTitle(”SOLCAA REPORTES”);
jv.setVisible(true);
Hola!!!
gracias me sirvio mucho
ta chido k alla gente como tu pa yudarnos jiji
tks
Perfecto! manual dumb-proof…
Por cierto, sabes como agregar una imagen (la tengo en la base de datos en bytes[ ]) a un reporte sin necesidad de crear el archivo en un directorio… ?
Agradecería mucho tu respuesta…
te antemano arigatoo!
Buenisimo, la verdad que te mereces 100 puntos loco.
Me sirvio mucho.
Mucha Gracias!!!!!!!!!!!!!!!!!
saludos para los que le salia el error “master …..” no se que mas copien la carpeta reportes del ejemplo al pero no lo hagan en dist sino ponganlo al costado de las carpetas principales (src, buid, dist, etc) y eso es todo
Saludos,
Como puedo colocarle una fotografia en el reporte usando este plugin?
Gracias
Que buen material este buscaba como conectar a Cryatal Report y encontre ireport es una buena herrmienta descgue el Pluing y sin problemas desde el princiop feliciades de verdad he guadado este sito entre los favoritos uno nunca sabe cuando puede necesitar estas cosas
hola… era para preguntar si existe algun tutorial para conectar el ireport con el hibernate ya que estamos haciendo una tesis y estamos utilizando estas herramientas que son fantasticas pero se nos presento este problema… queremos hacer reportes y queremos que el ireport se conecte con la persistencia que estamos manejando y no directamente con la base de datos.. desde ya muchisimas gracias…
Hola, gracias por el tutorial la verdad que lo estoy estudiando para hacer un proyecto, pero estoy atorada en algo y necesito ayuda porfavor.
Pueden explicarme el codigo que se usa para el formulario donde lleva el boton para mandar llamar el reporte.
Estoy un poco confusa al intentar, pues es la primera vez k lo intento y necesito ayuda.
Tengo el archivo .jasper que se genera tras diseñar tu reporte pero despues no estoy muy segura de entener…
Help…..!!!!!
Espero que se apiaden de mi. Muchas Gracias….
que buen aporte tu tutorial, hoy por hoy trato de descargar de la pagina y me sale error, si puedes me envian el ejemplo a jcarlo23@hotmail.com
POR FAVOR..
Para Juan Carlos:
El PRIMER enlace para descargar el ejemplo funciona correctamente, no así el segundo pues el hosting ha vencido, pero el primero si funciona:
http://www.mediafire.com/?dz9cxgtigzt
}saludos!!
efecitivamente ya lo descargue, pero al momento de hacer la consulta me aparece este error Error cargando el reporte maestro: java.io.FileNotFoundException: C:\Users\JUANCHO\Documents\NetBeansProjects\Expedition\Reporteprueba.jasper
gracias por tu atencion y ayuda
buenas.. segui paso a paso lo del tutorial.. y perfecto… algunas dificultades pero solucionadas….
Ahora el problemas es que genere el jar y cuando le envio el dato para que genere el reporte se sale de la aplicacion …… en netbeans no pasa eso…. ya copie la carpeta con los .jasper y agrege la carpeta con los jar del jaspert report y nada…
necesito ayuda gracias por la pronta respuesta
String reportUrl = System.getProperty(”user.dir”) +
“/src/reportes/”;
parametro.put(”SUBREPORT_DIR”,reportUrl);
ahhh y este es el codi go que agregue para que me funcionara en el netbenas ya que tengo 3 subreportes en cadena…. lo unico que estoy pensando es sobre esta direccion por que es la misma que tiene el reporte maestro.
ahora si gracias por la ayuda
saludos instale el ireport en netbeans y todo bien.. probe algunos reportes y todo sale bien el proble es cuando coloco el codigo para llamrlo desde un clase .ja utilizo el siguiente codigo
try{
Class.forName(driver);
Connection con =DriverManager.getConnection(urlCon,usuBD,passBD);
String fileName=”C:\report.jasper”;
Map parameters = new HashMap();
parameters.put(”cod”,”584″);
JasperPrint jv = JasperFillManager.fillReport(fileName,parameters,con);
JasperViewer jviewer = new JasperViewer(jv,false);
jviewer.setVisible(true);
}
}
catch( Exception e ){
System.out.println(e.getMessage());
e.printStackTrace();
}
y me da este error
java.lang.NullPointerException
at net.sf.jasperreports.engine.JRPropertiesMap.readObject(JRPropertiesMap.java:185)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:88)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:232)
at siaap.Menu.jMenu10MouseClicked(Menu.java:212)
at siaap.Menu.access$600(Menu.java:22)
at siaap.Menu$7.mouseClicked(Menu.java:118)
at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:253)
at java.awt.Component.processMouseEvent(Component.java:6044)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
at java.awt.Component.processEvent(Component.java:5806)
at java.awt.Container.processEvent(Container.java:2058)
at java.awt.Component.dispatchEventImpl(Component.java:4413)
at java.awt.Container.dispatchEventImpl(Container.java:2116)
at java.awt.Component.dispatchEvent(Component.java:4243)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3995)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
at java.awt.Container.dispatchEventImpl(Container.java:2102)
at java.awt.Window.dispatchEventImpl(Window.java:2440)
at java.awt.Component.dispatchEvent(Component.java:4243)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
Muy bueno sin embargo falta darle unos toques ya que la mayoría ya trabajamos con netbeans 6.1.
hola no puedo descargar el proyecto
no se si alguien lo puede colgar en otro sitio please
saludos
Esta informacion que brinda me parece de mucha ayuda dado que estoy trabajando en una aplicacion en java. quisiera consultar como generas el .jasper para llamarlo luego desde java.
porque mi problema es el siguiente:
quiero mostrar los reportes pero solo llamandolos desde java igual que lo haces en este ejemplo. Pero no puedo mostrar mi .jasper o no se como generarlo.
agradeceria mucho tu ayuda y si me pudieras mandar informacion a mi correo.
gracias de antemano.
holas muchachos haber si acaso hay alguien que sepa cpmp hacer reportes dinamicos los estoy necesitando plis, si alguien tiene ejemplos o direccioens de tutoriales pongalos aqui o si no por fis mandenme a mi corro paolo@kernel.com.bo les estare muy agradecido
Muchas Gracias Windoctor! que buen tutorial, te la comiste es una buena ayuda para la gente que se esta iniciando con ireport y netbeans.
Ayudaaaaaaaaaaaa…..tengo una duda muy grande, es que me baje el ejemplo que esta en esta pagina, lo corro sin modificarle y jala a la perfeccion, pero al momento de modificar el reporte digamos un StaticField y darle vista previa si hace bien la modificacion, pero al correrlo me marca erroe en la linea
masterReport = (JasperReport)JRLoader.loadObject(master);
Marca error nulo, alguien me podria decir porque, si lo unico que movi fue un StaticField y le di en vista previa…Gracias y hasta luego
Que tal.
Muchas gracias por el aporte. Esta muy bueno y sencillo.
HOLA
Me parecio fantastico este minitutorial, y muy informativo. Pero no es por minimizar el esfuerzo de su creación, pero creo que a este tutorial le falta una cuarta parte, donde se explique la creación de reportes con graficas. Eso sería genial!!!!
Espero concideren este comentario y nos ilustren con una cuarta parte de este tutorial.
SALUDOS!!!!
este mini tutorial esta bueno ,pero mi pregunta es como generar el pdf a partir de una aplicacion web ya q es lo que intento hacer desde un servlet pero la aplicacion no puede encontrar el archivo por mas que lo ponga en la carpeta dist me podrias ayudar con esto pues ya no se que hacer gracias
Saludos. Ya he instalado el iReport y he logrado realizar reportes y exportarlos a pdf con una aplicacion desarrollada por mi en NetBeans 6.0.1. La pregunta es la siguiente. Es posible que pueda modificar el query del archivo jasper mandando como un parametro desde la aplicacion en netbeans. Si no se puede, como puedo entonces lograr ejecutar y visualizar un subreporte. Cual seria el código. Agradezco la respuesta q puedan darme.
Windoctor
El problema que mencionas al inicio de este documento se soluciona agragando la “LIBRERIA JASPEREPORT 2.0.5-SNAPSHOT AL PROYECTO”, esta librería se creó al instalar el PlugIn
Click derecho sobre Libraries en el Proyecto, “Add Librarie”, seleccionar de la lista “JasperReports 2.0.5-SnapShot”, y Oleeeeeeee, problema solucionado
Tiz
aquí un totorial en donde explica como generar un reporte HTM y PDF, creo que es lo que estás necesitando
http://wiki.netbeans.org/ReportesEnNetBeansConIReport
Ve la parte de Programando el lanzamiento del Reporte
Hola estimado Pablo
A forma de cuidar mi “reputación” :p le comento que en este tutorial esta escrita esa parte que comenta… lastimosamente me doy cuenta, que la mayoria no ha leido bien el tutorial… mire bien al inicio de este tutorial y enontrara esta parte….
“…..pues NetBeans no sabrá en que paquetes se encuentran las clases que arriba mencione (JasperPrint, JasperReport, etc). Entonces lo que se hace es agregar la libreria jasperreports-2.0.3.jar (panel izquierdo, click derecho en Libraries–add Jar/Folder) y con esto ya no obtendremos errores.”
Y como ahi dice claramente, se indica que se debe agregar dicha libreria.
Saludos!!
Buenas Tardes:
Primero muchas gracias por el Tutorial.. Fue de mucha ayuda.. y a continuacion una pregunta..
En mi aplicacion ya logro generar los reportes sin problema exportandolos a pdf.. pero tengo ahora el siguiente reto…. debo imprimir un documento directamente a la impresora sin visualizarlo.. eso lo logro supuestamente con estas instrucciones
JasperPrintManager print = new JasperPrintManager();
print.printReport(JasperPrint,true);
El “true” hace que me muestre la ventana para seleccionar la impresora en la que quiero imprimir. El problema que tengo es que la ventana me la muestra en el servidor y no en el cliente.. y si lo coloco en “false” me imprime en la impresora que tenga predeterminada el servidor y no el cliente..
En terminos generales lo que necesito es que desde el cliente cuando termine de ingresar ciertos datos a la bd automaticamente se genere un documento impreso con la informacion pero que salga en la impresora del cliente sin visualizar previamente el reporte..
No se si me he hecho explicar.. espero que si.. y espero tambien que alguien tenga la respuesta a esta inquietud y pueda ayudarme… De antemano muchas gracias por todo….
Saludos!
Gracias maestro!!!!!!.
Definitivamente fue de gran ayuda, tu explicación es de los más clara y entendible, lo hize todo paso a paso y resultó tal y como lo describes.
Infinitas gracias,
Saludos.
Buenas, escribo en esta oportunidad para ver quien me puede ayudar a resolver lo siguiente: Quisiera saber como poder ejecutar el llamado a un reporte maestro en iReport, el cual contiene varios subreportes. He probado con muchos codigos que sale por ahi de tomar los paths y todo eso pero siempre me sale el error “Couldn’t load from location …” con el path de mi subreporte.. Si alguien sabe por favor ayudenme..
Gracias, Saludos
Alguien me puede decir como puedo mostrar la fecha actual en el reporte.
Además quiero imprimir por ejemplo “Impreso por:” Usuario y pasarle desde el NetBeans el Usuario como un String
Desde ya gracias nuevamente
Ola … una pregunta para el autor del manual…
he leido todo y lo he entendido a la perfeccion pero no entiendo porque salta a la excepcion en esta linea:
masterReport = (JasperReport) JRLoader.loadObject(master);
y me manda por consola el mensaje
Mensaje de Error:null
Alguna sugerencia porfavor..
Gracias
Excelente el tutorial, pero a la hora de llamar el reporte desde la aplicacion mediante el boton, en la linea de comando me aparece “mensaje de error = null”, no me aparece el informe. me podés ayudar
Gracias
MV
Hola excelente articulo yo resolví ese problema agregando a mi proyecto le librería jasper pero en la versión 3.1 eso resolvió el problema
mi problema es
javax.xml.parsers.FactoryConfigurationError
Pues yo te quiero dar las gracias por tomarte el tiempo de compartir tus conocimientos para los que vamos empezando en el mundo de java, sin duda será muy util para mi. Te deseo muchos exitos.
Que tal amigo, estoy haciendo una aplicacion web JSP con ayuda del Netbeans, queria saber como hago para mostar el reporte desde un navegador, y si este me permite imprimirlo en pdf. Gracias por la atencion.
saludos, perfecto , pero no me puedo descargar el proyecto de ejemplo, asi que no se como llamar mi reporte. si alguien puede por favor indiqueme como llamar el reporte desde el boton que se ve en el proyecto. en la imagen.
rafaelvtaveras@hotmail.com
Hola tambien me sale ese mismo error al hacer click en Preview y aun no se por que
javax.xml.parsers.FactoryConfigurationError
por fa si alguien soluciono eso que me diga como lo hizo
hola, felicidades esta muy bueno el tutorial,
MARIO ENTRA AL LINk QUE TE PONGO ABAJO SEGURO SOLUCIONARS TU `PROBELMA QUE ES EL MISM QUE YO TENIA http://krloxzz.wordpress.com/category/java/
Hola gracias ya solucione ese problema ahora el problema que tengo es que no puedo usar mas de un criterio por ejemplo busco por id o por nombre y no me resulta
EJ.
SELECT * FROM prueba WHERE id=$P{numero} or nombre=$P{nombre1}
y no me resulta no se como hacer mas de una condicion solo me ha resultado con una pregunta quiero preguntar por mas criterios
hola, alguien sabe por qué me aparece este error?
Error cargando el reporte maestro: java.io.FileNotFoundException:… reportes\contactos.jasper
he leido todo el tutorial y no entiendo por que me sale este error, le he adicionado todas las librerias y he hecho el procedimiento explicado
Hola bueno supongo que es por que no encuentra el archivo .Jasper yo lo dejo dentro de la carpeta src del proyecto luego creo una carpeta en mi caso de nombre reporte y ahi copio los dos archivos del reporte
reporte.jasper
reporte.jrxml
espero te sirva
otra cosa alguien sabe como hacer una consulta con una fecha no me resulta por Ej. SELECT * FROM tabla WHERE fecha=$P{fecha} y como le paso los valores de la fecha desde mi aplicacion y la otra pregunta como hago para imprimir algo que le envio desde mi formulario no desde la base de datos por ej en un Jtextfield ingrese mi nombre y luego que ese nombre aparezca en el reporte sin estar guardado en la BD. y eso porfa si alguien sabe esas respuestas que me ayude nos vemos
Hola, muy bueno el tutorial de NetBeans y Jasper asi como el de Visual JSF..pero tengo el siguiente problema: Descargue y estoy probando el ejemplo que publicaste, pero al ejecutarlo manualmente (desde contactos.jrxml) me muestra el reporte muy bien; pero al hacerlo desde la aplicacion Java envia un error que dice: “Error cargando el reporte maestro”..¿Alguien me puede ayudar?? por fa’, necesito aprender a generar reportes desde java con urgencia
Hola necesito ayuda urgente alguien puede decirme como enviar dos parametros por Ej. quiero preguntar por nombre y por edad de una persona de verad necesito eso ya hice la consulta en el reporte pero no se como pasarle esos parametros por mi formulario porfa todas las ideas de como hacer eso me sirven gracias
Map parametro = new HashMap();
parametro.put(”fech_ini”, fecha1);
parametro.put(”fech_fin”, fecha2);
parametro.put(”Total”, total);
Hola me pueden decir de donde salen esos valores por ejemplo fecha1 o fecha se supone que esos valores los extraen desde un formulario java como capturan su valor necesito preguntar por dos parametros y aun no he podido hacerlo
Excelente, justo estaba buscando eso, ya no podia imprimir mis reportes a traves de mi aplicacion.
Si tuviesen ejemplos mas avanzados me podrian pasar para practicar mas. Gracias.
Gracias por este material, el cual me ha sido de mucha ayuda lo he utilizado en mi proyecto, seria posible como comenta julio 16 si tuviese un codigo mas avanzado que permita pasar desde java a un mismo reporte parametros para consultas sobre varias tablas de la BD, me seria de mucha ayuda para orientarme como lo ha hecho este tuto, buen aporte
hola, soy nueva haciendo reportes , me podrian ayudar a hacer un reporte de acuerdo a una fecha que se introduzca.
Excelente tutorial , lo lei todo y esta bastante completo…
Saludos !!!
En el post anterior dices que vas a indicar como programas el botón; pero no lo haces, simplemente dices descarguenlo… y para quitar los errores…
Mi pregunta es fácil, vas hacer una IV parte para indicar como hacerlo?
alguien me puede ayudar me da este error
compile-single:
run-single:
masterC:\Ejemplo_Reportes/reportes/contactos.jasper
Error cargando el reporte maestro: java.io.FileNotFoundException: C:\Ejemplo_Reportes\reportes\contactos.jasper
Java Result: 3
BUILD SUCCESSFUL (total time: 3 seconds)
quisiera que me ayudaran para aprender hacer reportes en java ya que estoy haciendo un proyecto con netbeans
exelente, gran aayuda sobre todo por la falta de doceumentacion q hay en cuanto anetbeans, congratulations
¿Alguien sabe por qué me sale cada línea de la lista en una página diferente? Es decir, si tengo que mostrar una lista con 10 elementos, me salen 10 páginas, cada una con una línea! Muchas gracias
hermano que tal un saludo, tengo una aplicacion y tengo la data en sqlite, como hago para que el plugin de netbeans qe dice conexion a datos me aparezca sqlite en la lista y asi conectarme por alli?
gracias
men me sale este erro y no se a ke se debe t agredeceria
una explicacionn
o si sabes como solucionarloo de
antemano graxx
——————————————————————-
run:
master C:\Users\Georgina\Documents\NetBeansProjects\login\src\Reportes\contactos.jasper
Mensaje de Error:null
—————————————————–
Quisiera saber como puedo hacer para que el reporte que yo genero se almacene en un archivo temporal del equipo, ya que cuando genero el archivo inmediatamente me sugiere abrirlo o guardarlo, yo no quiero este mensaje sino que se guarde inmediatamente en alguna ruta especifica
¿Hola, alguien ha solucionado el error: Mensaje de Error null al llamar al reporte?
Un Saludo.
He hecho todo lo que esta en tu ejemplo pero al momento de ejecutar mi aplicacion me aparece el error:
Mensaje de error:null
He hecho de todo, hasta copiar tus archivos .jasper y .jrxml y modificarlos para ajustarlos a mis requerimientos, pero ni asi.
Si ejecuto tu ejemplo todo va de maravilla, se ejecuta el reporte y lo muestra, el problema es con mi aplicación, y deje todo exactamente igual solo cambiando mi BD y la ubicación del reporte.
Copié el reporte tanto en el raíz del proyecto como dentro de src y nada.
Ayudenme x favor que ya llevo varios dias con esto y no consigue arreglarlo. De antemano mil gracias.
Hola Axelv, yo tenía el mismo error “Mensaje de error:null” y ya lo he solucionado, el problema es que las librerías que había añadido al proyecto eran una versión diferente al plugin de jasper instalado en netbeans.
Un Saludo.
Yo logre hacer correr todo en la aplicación pero me sale el siguiente mensaje de error.
Mensaje de Error:key can’t be empty
Si alguien sabe el pq le agradeceríamucho
Holas, buen tutorial, una consulta si por ejemplo quiero cambiar el color de un static field el del titulo por ejemplo pero no desde el ireport sino desde codigo java, como puedo hacerlo?, ojala puedas ayudarme.
saludos.
GarZa yo aun tengo el problema que tu tenias…. me puedes decir donde consigo las librerias indicadas.. te lo agradezco.
El software lo tienes en http://jasperforge.org/projects/ireport, tienes que descargar el paquete iReport Plugin for NetBeans y el paquete iReport.
- Instalas el plugin en Netbeans.
- Descomprimes el paquete iReport, y en el directorio ./iReport-nb-3.5.2/ireport/modules/ext están todas las librerías, despues añades las librerías a tu proyecto, yo he usado las siguientes: commons-beanutils-1.7.jar, commons-digester-1.7.jar, commons-logging-1.1.jar, jasperreports-3.5.1.jar, commons-collections-3.2.1.jar commons-javaflow-20060411.jar, iText-2.1.0.jar, js_commons-discovery-0.2.jar (puede que sobre alguna,
o que te falte según el tipo de informe que uses).
El paquete iReport tiene completa funcionalidad, es decir, que puedes diseñar
informes sin Netbeans, aunque es mejor tenerlo todo integrado.
Un Saludo.
Malas noticias…este link no mas no…http://www.mundobyte.net/archivos/Java_2007/Ejemplo_Reportes.zip
Quisiera saber quien sabe llamar al .jasper y toda la conexion por medio del “JasperRunnerButton”… espero que alguien me pueda ayudar, es muy util este boton, ya que solo trabajariamos con sus propiedades y ahi se hace la conexion DRIVER , URL , USER , PASSWORD. directamente y se llama al .jasper…. se que se puede hacer porque he obsevado personas que lo hacen asi, pero soy nuevo en esto y necesito ayuda…please!
Hola a todos, saludos!!
Tengo una duda, como puedo haccer para abrir un reporte desde una ventana de mi aplicación, dentro de mi aplicación, no independiente??? Alguien sabe, puede ayudarme, estoy usando iReport y netbeans en ubuntu.
Gracias
Que tal brother pues me agrada mucho tu blog realmente muy bueno.
Tengo una pregunta que realizarte acerca de este proyecto de los reportes ya le he probado y todo funciona excelente.
Ahora el problema que tengo es que cuando intento llamar dos parámetros mediante cuadros de dialogo me manda este error y la verdad ya trate de ver en que estoy mal pero no logro solucionarlo. Me manda este mensaje de error:
Exception in thread “AWT-EventQueue-0″ java.lang.NullPointerException
at jbg.Alumnos.ImprimirGrupo(Alumnos.java:770)
at jbg.Alumnos.actionPerformed(Alumnos.java:550)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.AbstractButton.doClick(AbstractButton.java:357)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1220)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1261)
at java.awt.Component.processMouseEvent(Component.java:6041)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
at java.awt.Component.processEvent(Component.java:5806)
at java.awt.Container.processEvent(Container.java:2058)
at java.awt.Component.dispatchEventImpl(Component.java:4413)
at java.awt.Container.dispatchEventImpl(Container.java:2116)
at java.awt.Component.dispatchEvent(Component.java:4243)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
at java.awt.Container.dispatchEventImpl(Container.java:2102)
at java.awt.Window.dispatchEventImpl(Window.java:2440)
at java.awt.Component.dispatchEvent(Component.java:4243)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
Espero me puedas o puedan ayudar con este pequeño problema hasta luego y sigue así con tu blog gracias.
Se me olvidaba la forma en la que trato de hacerlo es la siguiente:
String OGrado= JOptionPane.showInputDialog(null,
“Introduce el Grado que desea imprimir”,
“Grado”,JOptionPane.QUESTION_MESSAGE);
grado = OGrado;
String OGrupo= JOptionPane.showInputDialog(null,
“Introduce el Grupo que desea imprimir”,
“Grupo”,JOptionPane.QUESTION_MESSAGE);
grupo = OGrupo;
//ReporteAlumno jasperAlumno = new ReporteAlumno(id_alumno);
jasperGrupo.runReporte(grado, grupo);
Y muchas gracias por el que me pueda ayudar bye.
Cool, buen aporte, muchas gracias!
buenos dias.
primero que nada felicidades por el tutorial me esta ayudando mucho, solo que no he podido ver el resultado ya que me da el siguiente error:
Exception in thread “main” java.lang.NoSuchMethodError: com.lowagie.text.pdf.PdfWriter.setRgbTransparencyBlending(Z)V
at net.sf.jasperreports.engine.export.JRPdfExporter.exportReportToStream(JRPdfExporter.java:484)
at net.sf.jasperreports.engine.export.JRPdfExporter.exportReport(JRPdfExporter.java:383)
at reportepdf.Main.main(Main.java:29)
uso jasperreports-3.5.2 y jdk 1.6, supongo que es una libreria antigua pero he bajado las mas recientes y sigue sin funcionar…
gracias por tu ayuda.
Exelente tu ayuda, estoy enpezado con java y voy a probarlo