Encontre una solución para el tema de la impresión en las bandas cuando tengo columnas:
Properties-->Common-->Remove line when blank (destildo esa opción)
Muchas Gracias.
Cecilia.
| |||
RE: Problema con columnas Encontre una solución para el tema de la impresión en las bandas cuando tengo columnas: Properties-->Common-->Remove line when blank (destildo esa opción) Muchas Gracias. Cecilia. |
| |||
Hola que tal, quiero preguntar como hago para mostrar la vista previa del pdf en un servlet, me explico, tengo el tipico static void main(String arg[]) y desde alli llamo una clase que sirva para esto: JDialog viewer = new JDialog(new JFrame(),"Vista previa del reporte", true); viewer.setSize(800,600); viewer.setLocationRelativeTo(null); // Cargar el archivo .jasper JasperReport template = JasperManager.loadReport(archivo); // En mapa se especifican los parametros del reporte Connection conn = this.getConnection("inventario","root",""); JasperPrint report = JasperManager.fillReport(template, mapa, conn); // Mostrar el reporte JRViewer jrv = new JRViewer(report); viewer.getContentPane().add(jrv); viewer.show(); ************* En fin , me sale perfecto, sale la vista previa, cuando trato de adaptarlo a un servlet /VISTA PREVIA QUE NO FUNCIONA!!!!!!!!!!!!!!! JDialog VistaPrevia=new JDialog(new JFrame(),"Vista Previa del Reporte",true); VistaPrevia.setSize(800,600); VistaPrevia.setLocation(150,50); JRViewer jrv= new JRViewer(jasperPrint); /*jrv.setZoomRatio(123); jrv.setFitPageZoomRatio(); jrv.setFitWidthZoomRatio(); jrv.show(true); VistaPrevia.getContentPane().add(jrv); VistaPrevia.show(true);*/ ***** NO FUNCIONA, es el mismo codigo que uso en forma static pero en servlet simplemente se queda haciendo tiempo, no mensaje de error ni nada , solo tiempo, si alguien sabe como sacarlo que me explique porque no se si hay error o no se podra crear Jdialog con servlet.? Posdata: Soy nuevo en esto de servlet, perdonen si la pregunta es muy tonta |
| |||
Otra pregunta, trate de darle la vuelta al problema y encontrarle la salida, asi que llamo la clase que previsualiza desde el servlet: public class miprimerPDFStatic extends HttpServlet implements Servlet{ //public static void main(String arg[])throws IOException { public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException { preview p=new preview("C:/Archivos de programa/JasperSoft/iReport-1.2.2/Reportes/HojadeVida.jasper",new HashMap());; //} } } **** Y ME SALE LA SIGUIENTE Excepcion: excepción javax.servlet.ServletException: El Arropador (Wrapper) no puede hallar clase de servlet miprimerPDFStatic.class o una clase de la que depende org.apache.catalina.authenticator.AuthenticatorBas e.invoke(AuthenticatorBase.java:432) org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:105) org.apache.catalina.connector.CoyoteAdapter.servic e(CoyoteAdapter.java:148) org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyo teHandler.java:199) org.apache.jk.common.HandlerRequest.invoke(Handler Request.java:282) org.apache.jk.common.ChannelSocket.invoke(ChannelS ocket.java:754) org.apache.jk.common.ChannelSocket.processConnecti on(ChannelSocket.java:684) org.apache.jk.common.ChannelSocket$SocketConnectio n.runIt(ChannelSocket.java:876) org.apache.tomcat.util.threads.ThreadPool$ControlR unnable.run(ThreadPool.java:684) java.lang.Thread.run(Thread.java:536) causa raíz java.lang.ClassNotFoundException: miprimerPDFStatic.class org.apache.catalina.loader.WebappClassLoader.loadC lass(WebappClassLoader.java:1352) org.apache.catalina.loader.WebappClassLoader.loadC lass(WebappClassLoader.java:1198) org.apache.catalina.authenticator.AuthenticatorBas e.invoke(AuthenticatorBase.java:432) org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:105) org.apache.catalina.connector.CoyoteAdapter.servic e(CoyoteAdapter.java:148) org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyo teHandler.java:199) org.apache.jk.common.HandlerRequest.invoke(Handler Request.java:282) org.apache.jk.common.ChannelSocket.invoke(ChannelS ocket.java:754) org.apache.jk.common.ChannelSocket.processConnecti on(ChannelSocket.java:684) org.apache.jk.common.ChannelSocket$SocketConnectio n.runIt(ChannelSocket.java:876) org.apache.tomcat.util.threads.ThreadPool$ControlR unnable.run(ThreadPool.java:684) java.lang.Thread.run(Thread.java:536) *** que significa esto? , alguien sabe, la clase preview es una clase que tiene lo que tiene mi mensaje de arriba, la parte del JDialog y todo eso. en Fin, no se que mas hacer, configure el web.xml, para agregarle el preview.class, pero nada, sigue igual. |
| |||
Lanzar informe con JasperRepors Buenas a todos. Explico mi problema: Genero mediante el iReport 1.2.2 un informe conexionandole con una base de datos mysql, y haciendo select * from tabla, lanzo el informe y todo ok. Pero ahora quiero lanzarlo desde una aplicacion java. Genero el .jasper. Cambio la sql y pongo "select * from tabla where id= $P{id} y uso el codigo del primer post de este hilo. Y me da el siguiente error: Class not found when loading object from file : C:\probando_dinamico.jasper Class not found when loading object from file : C:\probando_dinamico.jasper class net.sf.jasperreports.engine.JRException net.sf.jasperreports.engine.JRException: Class not found when loading object from file : C:\probando_dinamico.jasper GRACIAS Última edición por prm83; 17/05/2006 a las 09:37 |
| |||
El error es porque no tienes la clase esa, debes de verificar que tienes el paquete actualizado, lo mas facil es que la mismas librerias que usa Ireport que es el que genera el *jasper, sean las mismas que utilizes para compila y ejecutar tu aplicacion java, asi que añadelas a tu classpath y listo. Todo lo que tenga que ver con Class not found es por eso. |
| |||
Gracias jorge. Copie las *.jar del irepot en las del jdk del que tira el java y funciona correctamente. Muchisimas gracias. Me estaba volviendo loco con esa tonteria. Pero ahora tengo otro problema, creo un servlet y lo subo a un servidor tomcat. Y me lo ejecuta perfecto con el acrobat 7. Pero ahora entro en red desde un pocket pc y cuando me descarga el archivo, lo hace sin formato, osea, sin ".pdf" sabeis xq puede ser? Última edición por prm83; 18/05/2006 a las 08:53 |
| |||
Hola a todos mi pregunta es .. ¿Por que mi reporte corre bien cuando ejecuto desde mi ide net beans pero desde tomcat no me muestra ningún dato sale el pdf en blanco...? los agradezco si a alguien sabe por que ..? Y que debo hacer
__________________ "Si por un instante Dios se olvidara que soy una marioneta de trapo y me regalara un trozo de vida, no hablaria todo lo que pienzo en difinitiva pensaria todo lo que hablo" |
| |||
Para abieliseo. Te dejo mi codigo, que corre en tomcat perfecto haber si te dirve de algo. Acuerdate de pegar todas las librerias necesarias. incluida le del servlet import net.sf.jasperreports.engine.*; import net.sf.jasperreports.engine.export.*; import net.sf.jasperreports.engine.util.*; import net.sf.jasperreports.view.*; import java.sql.*; import java.io.*; import java.util.*; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class informe_servlet extends HttpServlet { public void doGet (HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { try { InputStream in = this.getClass().getResourceAsStream("probando_dina mico.jasper"); //Pasamos parametros al reporte Jasper. Map parameters = new HashMap(); String id="4"; parameters.put("sql", new String("select * from animales where id="+id)); byte[] bytes = JasperRunManager.runReportToPdf(in, parameters, getConnection()); response.setContentType("application/pdf"); response.setContentLength(bytes.length); ServletOutputStream ouputStream = response.getOutputStream(); ouputStream.write(bytes, 0, bytes.length); ouputStream.flush(); ouputStream.close(); } catch (Exception e) { System.out.println(e.getMessage()); } } /**Metodo para crear la conexion a DB*/ public static Connection getConnection() throws ClassNotFoundException, SQLException { //Configuración de la conexión. String driver = "com.mysql.jdbc.Driver"; String connectString = "jdbc:mysql://localhost:3306/prueba"; String user = "root"; String password = "vc"; Class.forName(driver); Connection conn = DriverManager.getConnection(connectString, user, password); //Retornamos la conexión establecida. return conn; } |
| |||
boy a probarlo gracias prm83 ahora que veo tu codigo tengo otro problema con ireport de que tipo sera los parametros si le boy a pasar un parametro de tipo consulta ?
__________________ "Si por un instante Dios se olvidara que soy una marioneta de trapo y me regalara un trozo de vida, no hablaria todo lo que pienzo en difinitiva pensaria todo lo que hablo" |
| |||
pues seran $P{nombre de la variable} Luego tienes que declarar en el ireport la variable tb, con el mismo nombre claro. te dejo este enlace mygnet.com/articulos/java/412/ para hacerlo como el mio, donde pone el report query que le añade el where y pone where clv_are_ads = $P{nombre de la variable}, tu borra la consulta entera y solo deja lo q es la variable osea solo dejarias $P{nombre dela variable} |
| |||
Problema al ejecutar Hola: Estoy desarrollando una aplicación con swing y utilizo JasperReports para imprimir unos listados. He creado los informes con iReport y desde dicho programa los puedo compilar sin problemas, luego al ejecutarlo desde mi compilador (JCreator) también puedo ver los reportes correctamente. Después creo un .jar agregando la ruta de las librerias externas que ulizo(./lib), cuando ejecuto el .jar puedo tener acceso a la base de datos, pero a la hora de tratar de ver un reporte da el siguiente error: Error compiling report java source files: c:\horarios\profesores_1148436584875_212659.java En el directorio c:\horarios es donde tengo mi .jar y todas las carpetas que utilizo en mi proyecto, incluyendo la carpeta lib con los siguientes archivos: commons-beanutils-1.5.jar commons-collections-2.1.jar commons-digester-1.7.jar commons-logging-1.0.2.jar commons-logging-api-1.0.2.jar itext-1.3.1.jar jasperreports-1.2.2.jar poi-2.0-final-20040126.jar mysql-connector-java-3.1.1.11-bin.jar Esos mismos .jar son los que utilizo en el iReport para compilar y crear mis reportes. Si alguien supiera que puede estar pasando y me ayudara lo agradecería ya que llevo unos días bloqueado con ese problema. Muchas gracias. |
| |||
Estoy en un apuro, necesito ayuda urgentemente!! Hola, tengo un problema importante, estoy realizando un proyecto basado en la realizacion de un generador dinámico de pdf, y la verdad es que estoy muy perdido en cuanto a las herramientas que tengo o debo utilizar, me han comentado que me puedo basar por ejemplo en el código fuente de ireport, ya que mi aplicación va a ser una copia de ireport, cambiando ciertos objetos y algunas cosas mas. Pero estoy encontrando varios problemas, para empezar no sé como conseguir el código fuente de ireport (que está en java), y una vez que lo tenga que es lo que necesito para poder utilizarlo en mi provecho. Por favor es muy importante, porque la verdad es que no consigo meterme en faena y encaminar un poco mi trabajo, estoy dando palos de ciego y la verdad es que me estoy desesperando porque no sé qué es lo que tengo que hacer, es decir, básicamente mi problema reside en que, aparte de no tener ni idea, pues no sé donde buscar las cosas que necesito y como utilizarlas. Si alquien pudiera por lo menos encaminarme un poco hacia donde tengo que ir le estaría muy agradecido. Muchas gracias a todos. Un saludo |
| |||
Buenas estoy liado y me ha surge un problema d a la hora de ejecutar el report y el error q me da es este Class not found when loading object from file : C:\reports\lis_uno.jasper A q es debido |
| |||
Necesito ayuda de cómo plantear un report Hola a todos necesito una ayuda haber como puedo plantear un report que puede parecer tonto pero que es lo que tengo que hacer. Se basa en mostrar la información de varias tablas totalmente independientes y con diferente número de registros obviamente. Del estilo de: Tabla 1 -------- pepe gonzalez teresa oller Tabla 2 -------- Almacen 1 93333 Almacen 2 9111 Almacen 3 9588 ... y así unas 10 tablas. ( con la posibilidad de que en un futuro en vez de pedirmelas una debajo de otra me la pidan al lado ). La primera solución que se me ocurrió es crear sub-reports pero es que son como 10 tablas y luego es dificil de mantener 10 sub-reports para cambios de estilos, etc. A alguien se le ocurre alguna solución usando grupos, frames, crosstab, .. etc. Los datos los traigo de un datasource no de una conexión sql. A lo mejor es algo muy sencillo y no lo veo pero es que no se me ocurre nada, porque claro para mi lo más sencillo era mostrar los campos uno debajo de otro en la sección detail pero como me repite la sección detail para cada registro, me repite las cabeceras de las tablas y además no muestra los registros de cada tabla en orden. No se me ocurre nada de nada así que espero alguien me ilumine para que vea la luz en este negrísimo tunel en el que estoy!! PD: A todo esto, yo puedo tener un parámetro que sea del tipo java.util.vector y que al mostrar hacerle algún tipo de concat para que me los muestre uno debajo de otro?? |
| |||
Ayuda para pasar de un jsp a pdf con iReport He estado usando el código que han posteado en el foro pero tengo un pequeño problema: Mi jsp manda llamar al acrobat reader pero no me abre el archivo pdf que le especifico en el jsp, me manda un archivo pdf con el nombre del jsp que lo está mandando llamar por lo que me me muestra uno en blanco. Mi código es el siguiente: <%@ page import="java.sql.*,java.util.*,java.lang.*, java.io.File"%> <%@ page import="net.sf.jasperreports.engine.*" %> <%@ page import="javax.sql.*" %> <%@ page import="javax.naming.*" %> <% File reportFile = new File(application.getRealPath("/reportes/credenciales.jasper")); Map parameters = new HashMap(); parameters.put("universidad","Nombre de universidad"); byte[] bytes=JasperRunManager.runReportToPdf(reportFile.g etPath(), parameters, UtilDB.getConnection()); response.setContentType("application/pdf"); response.setContentLength(bytes.length); ServletOutputStream ouputStream = response.getOutputStream(); ouputStream.write(bytes, 0, bytes.length); ouputStream.flush(); ouputStream.close(); %> El reporte jasper que estoy manejando se llama "credenciales.jasper" pero el pdf se nombra como el jsp que lo llama. Por favor si alguien me puede ayudar, es urgente!! Gracias de antemano! SuperJazzo |
| ||||
como aprender a hacr reportes Saludos, aqui les ofrezco una secuencia de libros y paginas que pueden visitar y bajar para que aprendan a trabajar con el Ireport, Jasperreport y jfreechart. les recomiendo que se los estudien en ese orden y ademas que miren de punta a cabo los mensajes que se han hosteado en este foro... (quitenle los espacios y los parentesis de por medio pues el foro no me deja escribir links hasta que no tenga un numero de mensajes puestos en el mismo....) - Sitios oficiales de IReport, JasperReport y JFreeChart: ht (tp://ire port.s(o urce(fo rge.n et/ htt (p://jas (perrep orts.s(our ceforge.net/ ht t(p://w ww(.jfre (e.org/jfre (echart/ - Informes en Java con IReports ht tp:(//w ww.a)dictosalt rabajo.)com/tu toriales/tut oriales.php?pa gina=i)report - Videos flash del IReport ht tp://ire )port.sour)c eforge.n (et/vid eo_tuto rials.zip - Open Source Java Reporting with JasperReports and IReport ht (tp://w( ww.dev x.com/J(a va/Arti cle/29309 - A Tutorial on Generating Reports by IReport Designer for Jasper Reports and Reporting them in Java ht t(p://w ww.cis(e.u fl.edu/~oto p(saka/CIS 4301/R(epor tDemo/ - JasperReport tutorial h tt(p://ja(sper reports.so)ur ceforg(e.net/tu torial/ - Subreportes con JasperReport ht tp://ww(w.javahis pano.org/down lo)ad.down load.a(ction?type=tut orials&id=50 - A Tutorial on Reporting in JAVA using JasperReports, IReport and JFreeChart ht t(p://w (ww.studenti master.u s)ilu.net/de rino/web/tu)tor ials/JavaRepo rting/JavaRepo(r tingTutorial.htm - JasperReports, IReport y Subreportes ht )(tp://ire po(rt.sourc ef(orge.net/subr eport_tu(torial.zip |
| |||
OC4J y JasperReport hola a todos, un pregunta, alguien sabe si la version 9.0.4.0.0 es incompatible con jasper report??? no puedo hacerlo funcionar, me sale un error de csting de clases, y al subir la misma aplicacino al Aplication Server 10g si resulta bien! si es incompatible, que vercion del OC4J es compatible?? estoy usando jasper report 1.2.2 y el iReport 1.2.2 gracias! |
| |||
Ayuda con iniciacion en JasperReports Buenas Tardes: Estoy iniciandome en el tema de JR y en la empresa donde trabajo quieren montar plataforma sobre BI, en realidad he estado leyendo mucho acerca del tema: Jaspersoft(Reports, Server, Ireports). Cuando monto todo el entorno completo de Jasperserver las consultas generadas por el mismo servidor funcionan de maravilla pero no he podido encontrarle la logica al funcionamiento de estas librerias. He descargado el jasper reports y lo he agregado a las librerias del jsdk, tambien he descargado las librerias que son necesarias para el funcionamiento correcto de los reportes: commons-beanutils.jar, commons-collections.jar, commons-digester.jar, commons-logging.jar, itext e poi. Y no me funciona nada cuando voy a compilar la clase que hay al pricipio de este foro me saca un error cuando voy a ejecutar el Main.class porque cuando lo compilo no genera ningun error, el error es el siguiente: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/javaflow/bytecode/Continuable En verdad puede que este obviando algo sencillo pero estoy ya loco con estos reportes, le agradeceria a quien me pudiera brindar ayuda acerca de la utilizacion y configuracion de estos reportes Gracias |
| |||
Hola, alguien me prodria decir la manera de llamar a un reporte sencillo (sin parametros) en ireport desde otra aplicación, de manera que el reporte se me despliegue en JRviewer inmediatamente. He visto algo del codigo al inicio del foro pero no se como ajustarlo a JSP para que ejecute un reporte. Espero despejen mi duda. |
| |||
Como guardar el .pdf desde la jsp Hola a todos... quisiera saber si me podrían ayudar... Tengo que guardar el pdf generado en un ruta especifica en el servidor una vez mostardo el .pdf por pantalla, yo ya genero el pdf por la jsp con el código posteado en el foro .... me podrían decir como es el código para guardar ese .pdf ? gracias de antemano... |
| |||
Enviar Parámetros a un IN de un query Hola: como están?..tengo una pregunta haber si alguien me puede ayudar... quiero pasar una cadena de tipo "valor, valor, valor" a un reporte, para ello creo un parametro de tipo string q recibirá la cadena y luego lo quiero enviar a la consulta del reporte precisamente en un IN ..seria " suc.id IN ($P{cadena})"...para q me muestre todos los registros cuyo id este en la cadena...esto compila bien pero me dice q no encuentra registros..y registros en realidad SI hay...gracias! Ticky |
| |||
Subreporte con diferente base de datos Hola, tal vez este sea un caso frecuente pero soy nuevo usando el ireport (v. 1.2.3). Tengo un reporte maestro y dentro de el un subreporte que efectua una consulta en otra base de datos. Cuando creo el subreporte me aparece una ventana donde se puede elegir una fuente de datos diferente a la activa, ahi elijo otra conexion de las que tengo definidas. Pero al momento de ejecutar el reporte maestro me marca un error de no conocer la tabla sobre la que hago la consulta ya que lo intenta sobre la activa. Que tengo que hacer?? Debo modificar algo en Conection/ Datasource Expression en las propiedades del subreporte. De antemano gracias. |
| |||
Problema al imprimir un pdf Hola! Tengo unos reportes hechos en iReport 1.1.0, al exportar a pdf se los ve bien, pero al imprimir sale con un márgen izquierdo muy amplio, cosa que no está configurada en el iReport y no se ve en el archivo pdf una vez exportado. ¿Podrían decirme qué puede ser? Ncesito que al imprimir lo haga exactamente igual a cómo se ve en el pdf. Muchas Gracias. Cecilia. |
| |||
Bajaste algun tutorial Cita:
Iniciado por rodrigo_correa Hola, tal vez este sea un caso frecuente pero soy nuevo usando el ireport (v. 1.2.3). Tengo un reporte maestro y dentro de el un subreporte que efectua una consulta en otra base de datos. Cuando creo el subreporte me aparece una ventana donde se puede elegir una fuente de datos diferente a la activa, ahi elijo otra conexion de las que tengo definidas. Pero al momento de ejecutar el reporte maestro me marca un error de no conocer la tabla sobre la que hago la consulta ya que lo intenta sobre la activa. Que tengo que hacer?? Debo modificar algo en Conection/ Datasource Expression en las propiedades del subreporte. De antemano gracias. Hola rodrigo_correa hace un tiempo yo tenia un problema parecido con los subreportes no le encontraba la vuelta de ninguna forma hasta que me encontre con un pdf de un español: francesc roses albiol que me ayudo con el tema, en este momento no me acuerdo de donde lo descargue pero si buscas en google seguro que lo encuentras, te muestra paso a paso como crear subreportes. Espero que te sirva. Mario |
| |||
Hola gente, un saludo para todos, tengo un problemo, espero alguien me pueda ayudar... lo que pasa es q genero mi reporte desde eclipse, abre el reporte y todo, pero lo tengo bloqueado, no puedo cerrarlo ni modificar el tamaño ni nada, lo abro y se bloquea totalmente, sin poder hacer nada mas que solo detener la ejecucion...mi codigo es el siguiente: Transaction t = new Transaction(); FrmConfigRepPersonalizado t1 = new FrmConfigRepPersonalizado(); URL url = t1.getClass().getResource("RListaValidas1.jasper") ; if (url == null) { System.out.println("No encuentro el archivo del reporte."); System.exit(2); } JasperReport jasperreport = null; try { jasperreport = (JasperReport) JRLoader.loadObject(url); } catch (JRException jrexception) { System.out.println("Error cargando el reporte: " + jrexception.getMessage()); System.exit(3); } Connection con = null; try { con = t.getConnection(); } catch (TransactionException te) { System.out.println("Error de conexión: " + te.getMessage()); System.exit(4); } Map parametros = new HashMap(); ("P_nombre",cbxPartido.getSelectedItem()); JasperPrint jasperprint = null; try { jasperprint = JasperFillManager.fillReport(jasperreport, parametros,con); } catch (JRException je) { System.out.println("Error llenando el reporte: " + je.getMessage()); JasperViewer jasperviewer = new JasperViewer(jasperprint,false); jasperviewer.setTitle("SSV - Reporte Personalizado"); jasperviewer.setExtendedState(0); jasperviewer.setFocusable(true); jasperviewer.setFocusableWindowState(true); jasperviewer.setResizable(true); jasperviewer.setEnabled(true); jasperviewer.setVisible(true); t.close(); } alguien sabe pq se bloquea el reporte...muchas graciasss |
| |||
Cita: Hola Mr Bros
Iniciado por Mr_Bros Hola rodrigo_correa hace un tiempo yo tenia un problema parecido con los subreportes no le encontraba la vuelta de ninguna forma hasta que me encontre con un pdf de un español: francesc roses albiol que me ayudo con el tema, en este momento no me acuerdo de donde lo descargue pero si buscas en google seguro que lo encuentras, te muestra paso a paso como crear subreportes. Espero que te sirva. Mario Esta muy bien el tutorial pero aun sigo con la duda. En el tutorial el reporte maestro manda como parametro $P{REPORT_CONNECTRION} al subreporte que es la misma conexion que esta utilizando y que es un parametro interno (segun entiendo). Pero aun no entiendo como crear otra conexion diferente al reporte maestro y enviarsela al subreporte. De antemano Gracias. |