![]() |
Cita:
|
Cita:
Hola Yo puse un ejemplo de como llamar la direccion de la imagen, checalo en un post anterior, Saludos!!!! |
MUCHAS GRACIAS A TODOS YA QUEDO, YA ME MOSTRO EL REPORTE, SABEN QUE ERA, y la verdad me da pena admitirlo, es que yo queria mandar los resultados de un vector a imprimir, y no es asi como funciona el jasperreport, tengo que mandar una consulta FORZOSAMENTE, GRACIAS!!! |
DestruKtor y Kangulo Muchas Gracias muchachos, pues con su ayuda hemos podido resolver muchos problemas, ya podemos generar un archivo con salida a pdf y a excel. Mi inquietud ahora es, que asi como se genera el archivo en pdf y se despliega automáticamente por el explorador, asi queremos hacerlo con excel; en estos momentos ya lo generamos pero queda en el disco duro. Esto lo hacemos desde un jsp. Mil gracias |
Dudas reportes Hola a todos voy a ser un poco más específico con mis dudas, pues sospecho que tengo uno de los escenarios más complicados de resolver dentro del foro y he de requerir de toda la ayuda posible para solventarlo. Mi escenario es el siguiente: Estoy desarrollando un esquema de generacion de reportes para una institucion publica. Se busca que sea lo mas generico y flexible posible . Tengo varios retos importantes 1) Mis reportes van a ser generados por usuarios que desconocen por completo el esquema de la BDD, asi que el reporte no usa un objeto conexion sino un JRDatasource. Este datasource debia ser genérico pues no es la idea definir 1 objeto JRDatasource para todos los casos. Hice mi propia implementación basándome en los ejemplos de jasper y aparentemente funcionaria mi esquema. 2) Almacenar la plantilla del reporte en una BDD Oracle, recuperarlo cuando se requiera y sin descargarlo a disco ejecutar el reporte. Esta parte ya la resolvi gracias al uso de objetos BLOB y al metodo JasperReport report = (JasperReport)JRLoader.loadObject(barchivo.getBina ryStream()); que me permite cargar el reporte desde un inputstream. 3) Por la estructura de los documentos me veo obligado a usar subreportes. Ya logre un ejemplo con subreportes. Sin embargo desde mi aplicacion DEBO seleccionar varios datos de entradas y con ellos mandar a generar el reporte. Si tuviera q enviarlos de 1 en 1 NO tendria problemas, pero desean q si escoge 1 o varios datos, el resultado se muestre en un único PDF (en el browser) donde por cada nuevo dato se reinicie la numeración de las páginas. Para esto yo envio al reporte maestro su propio datasource y desde el reporte maestro le paso otro datasource al subreporte(x parametros). los dos datasource solo tienen un dato en comun que puede ser un dato de identificacion de persona, pero el conjunto de informacion que presentan es completamente distinto. Debo resolver el tema de la numeracion de las paginas y lograr q para entradas múltiples se presente la información del SUBREPORTE para todos los casos. Actualmente solo el primer dato se carga con información en el subreporte y a los subsiguientes no les llega la información. Espero haber sido claro y si tienen ayudas o sugerencias que me puedan proporcionar lo agradecere mucho Saludos KirsonX |
Hola a todos nuevamente a quien me quiera ayudar, tengo un vector[25] con los resultados de un query cada registro tiene 5 campos, estos 5 registros los quiero mandar a imprimir, pero con el siguiente codigo me aparece solo el primer registro, me pueden dar ideas de como hacerlo? <%@ page errorPage="/base_de_datos/error.jsp" %> <%@ page import="net.sf.jasperreports.engine.util.JRLoader" %> <%@ page import="net.sf.jasperreports.engine.*" %> <%@ page import="java.util.*" %> <%@ page import="java.io.*" %> <%@include file="conexion.jsp"%> <% String cad1="",cad2="",cad3="",cad4="",cad5="",cad6="",ca d7="",cad8="",cad9="",cad10=""; String cad11="",cad12="",cad13="",cad14="",cad15="",cad16 ="",cad17="",cad18="",cad19="",cad20=""; //SE BAJA DE SESSION EL ARREGLO Vector miVector = (Vector) request.getSession().getAttribute("resultado"); int r=0,x=0; String arreglo[]; r=miVector.size(); arreglo = new String[r]; int num_reg = r/20; System.out.print(num_reg); miVector.toArray(arreglo); for(int i=0;i<=num_reg;i++){ int j=i*20; x++; cad2=arreglo[j+1]; System.out.println("cad2: "+cad2); cad3=arreglo[j+2]; System.out.println("cad3: "+cad3); cad4=arreglo[j+3]; System.out.println("cad4: "+cad4); cad5=arreglo[j+4]; System.out.println("cad5: "+cad5); cad6=arreglo[j+5]; System.out.println("cad6: "+cad6); cad7=arreglo[j+6]; if(cad7.equals("1")){ cad7="MASCULINO"; } else { cad7="FEMENINO"; } System.out.println("cad7: "+cad7); cad8=arreglo[j+7]; System.out.println("cad8: "+cad8); cad9=arreglo[j+8]; System.out.println("cad9: "+cad9); cad10=arreglo[j+9]; System.out.println("cad10: "+cad10); cad11=arreglo[j+10]; System.out.println("cad11: "+cad11); cad12=arreglo[j+11]; System.out.println("cad12: "+cad12); cad13=arreglo[j+12]; System.out.println("cad13: "+cad13); cad14=arreglo[j+13]; System.out.println("cad14: "+cad14); cad15=arreglo[j+14]; System.out.println("cad15: "+cad15); cad16=arreglo[j+15]; System.out.println("cad16: "+cad16); cad17=arreglo[j+16]; System.out.println("cad17: "+cad17); cad18=arreglo[j+17]; System.out.println("cad18: "+cad18); cad19=arreglo[j+18]; System.out.println("cad19: "+cad19); cad20=arreglo[j+19]; System.out.println("cad20: "+cad20); //File reportFile = new File("C:\\jakarta\\webapps\\ROOT\\exa_ED\\reports\ \Reporte.jasper"); File reportFile = new File(application.getRealPath("/exa_ED/reports/Reporte.jasper")); System.out.println("ESTADO DEL REPORTE "+reportFile.exists()+" "+reportFile.canRead()+" "+reportFile.length()+" "+reportFile.getPath() ); Map parameters = new HashMap(); parameters.put("cad1", cad1); parameters.put("cad2", cad2); parameters.put("cad3", cad3); parameters.put("cad4", cad4); parameters.put("cad5", cad5); parameters.put("cad6", cad6); parameters.put("cad7", cad7); parameters.put("cad8", cad8); parameters.put("cad9", cad9); parameters.put("cad10", cad10); parameters.put("cad11", cad11); parameters.put("cad12", cad12); parameters.put("cad13", cad13); parameters.put("cad14", cad14); parameters.put("cad15", cad15); parameters.put("cad16", cad16); parameters.put("cad17", cad17); parameters.put("cad18", cad18); parameters.put("cad19", cad19); parameters.put("cad20", cad20); parameters.put("sql_query", " select * from N3_ALUMNOS "); byte[] bytes = JasperRunManager.runReportToPdf(reportFile.getPath (),parameters,conna); System.out.println(bytes.length); System.out.println(bytes); response.setContentType("application/pdf"); response.setContentLength(bytes.length); ServletOutputStream ouputStream = response.getOutputStream(); ouputStream.write(bytes,0,bytes.length); ouputStream.flush(); //ESTO LO HAGO PARA QUE CON EL close NO SE DETENGA LA EJECUCION if(x==num_reg){ System.out.println("Termino"); ouputStream.close(); } } Y si pasa registro por registro pero en el acrobat solo me aparece el ultimo? |
Por fin SOLUCIONADO! Gracias a todos los que me contestaron. Definitivamente me faltaban librerias, ademas de tener versiones diferentes de jDeveloper y j2sdk, ambos tienen que ejecutar la misma version y tambien adecuar la version del oc4j. En fin un cacao pero ya va bien, muxas gracias por vuestra ayuda. Seguiré con el paso de parámetros a ver que tal. Por cierto, alguien sabe por que la letra "ñ" se muestra como "?". Como se escribe el caracter ñ. Como puedo quitar de un dato tipo double el decimal 0.0 sin cambiar el tipo a entero. Si alguien lo sabe y me puede ayudar lo agradeceria. Con respecto a vuestras preguntas, las he leido pero aun no tengo conocimientos suficientes para poder ayudar. Gracias! :arriba: |
Datasource expresion Hola a todos basando en el ejemplo de xmldatasource que viene con jasper estoy intentando construir un "datasource expresion" para solventar los problemas que he mencionado en posteos anteriores al foro. Me pinta el siguiente error ((ec.gov.sri.gestiontributaria.pdf.datasource.Gene ricSubReportDataSource)$P{DataSource_Omisiones}).d atasource($F{numeroRuc})::net.sf.jasperreports.eng ine.fill.JRExpressionEvalException: Error evaluating expression : dataSource_1 Si tienen alguna pista se los agradeceria mucho Saludos KirsonX |
Hola a todos, Necesito generar un reporte complejo por lo que utilizo subreports en el pluggin Sunshine reports de eclipse. El problema que tengo es que cuando incluyo un segundo subreport diferente me salta el error: "Duplicate declaration of report font : Arial_Normal". He probado quitando este fontreport del subreport pero sigue produciendose el error, que sólo se soluciona quitando el subreport. ¿Alguien sabe cómo corregirlo? Saludos, MMF |
HOLA A TODOS Necesito saber como se utilizan los REPORT_PARAMETERS_MAP. En la clase le paso los parametros con lo del parameter.put(key,value), pero luego cuando estoy diseñando el report, y quiero que en una caja aparezaca uno de los parametros que le he pasadao por el map, no se como indicarle el que quiero concretamente, ya que el map tiene varios, me explico??? Mucahs gracias, ruego que si alguien puede contestarme lo haga de inmedito, ya que es para el trabajo y lo necesito. |
Sugerencia En el foro existe la tendencia de muchos de nosotros a preguntar.. me incluyo aunque ya he posteado varias respuestas.. Creo que deberiamos tomar conciencia de que todos necesitan ayuda y en la medida de lo posible empezar a responder las preguntas que se van quedando pendientes.. y para quien lanze una pregunta. antes debería barrerse todo el foro para evitar preguntar algo que posible ya haya sido solventado anteriormente. Saludos KirsonX |
Hola a Todos Para desireep: Cita:
Tienes que saber que los parametros que has de pasar al reporte, estos, deben estar previamente creados en el reporte, esto se hace mediante el diseñador en la sección de iReport | View | Report Parameters . Una vez que los hayas agregados los podras Selecionar de la barra de herramientas de la izquierda haciendo click en la pestaña Objects Library y lo agregas en la parte del reporte q tu quieras. Si esto no contesto tu pregunta, posteala de nuevo teniendo en cuenta lo que te dije anteriormente. ;-) Saludos desde Venezuela.. :adios: |
Para Kirxon Hola Kirxon, estuve leyendo el problema que tienes y como dijistes me parece :pensando: un de los escenarios más complicados, me pregunto si lo resolvistes. Yo realmente no :no: tengo mucho para ayudarte en este caso, con respecto a el problema de la numeración de las paginas me pregunto si sabrás que por cada grupo en las propiedades del mismo tu puedes decirle que reinicie la numeracion de las paginas a partir de ahi. Yo tambien estoy haciendo algo parecido incluir varios reportes personalizados en uno solo, es decir, hacer uno solo consolidando la informacion de los otros independientemente de la variedad de plantillas y, recién empiezo a trabajar en ello. :-( Veo que hay algo de simulitud entre las dos cosas, de todos modos cualquier cosa que averigue te la haré llegar Saludos :adios: |
Para Kangulo, y cualquiera que pueda ayudarme Gracias por postear, lo he resuelto parcialmente.. 1) El formato de bandas de jasper no me parece muy flexible, me pregunto porque no pensaron en una estructura macro "Page" que incluya a las bandas. así con sólo añadir páginas podrías construir reportes mucho más flexibles y dinámicos. 2) No he visto nada en jasper/ireports que me permita concatenar las salidas de varias plantillas en 1 único PDF, mi solución pasa por procesar 1 por 1 mis reportes (que como dijen lo mismo que pueden usar una única plantilla pueden ser que por los datos seleccionados, cada dato requiera de una plantilla diferente) así que cuando todos estén procesados, voy a usar unas funciones de iText para concatenar los PDF's resultantes en un único documento PDF 3) Amigo si puedes con un ejemplo orientarme un poco en el tema del reinicio de la numeración de páginas y de hecho también con subreportes, aunque ya he logrado manejar subreportes no he mapeado ningun subreporte complejo. Otra duda que me asalta es la siguiente: Mis documentos pueden tener la estructura ---datos encabezado ---párrafos de texto --Area de subreporte --más párrafos de texto Entonces como hago para que sea plenamente dinámico es decir que si el área reservada para subreporte no es suficiente, el texto y campos que están después se muevan hacia abajo y no se sobrepongan unos con otros. Espero no ser muy cansón con el tema, y si alguien puede brindarme alguna orientación adicional les agradeceré mucho Saludos KirsonX |
Hola a todos y en especial a la persona que me contestó. A ver, trataré de ser un poco mas clara. Mi problema es que yo no estoy trabajando con iReport sino con ReportAsistant o algo asi, asi que la barra qde herramientas que te ofrece es algo mas escueta, y no permite definir parametros. Ya consigo pasar los parametrso pero los tengo que poner digamos "a mano" en la vista de texto.Asi que eso ya está arreglado.Ahora tengo otra duda. Tengo que poner una cabecera superior en el informe con el nº pagina y una imagen, pero eso tiene que aparecer en todas las páginas. Eso lo puedo crear con una "band head page" pero cada vez que creo esa banda, se crea despues de otra banda que tengo "band title" y yo quiero que se cree antes del titulo. No se si me he explicado correctamente, aun asi si alguien puede/sabe contestarme, lo agradeceré. Muchas gracias a todos de antemano. Sevilla |
iReport Hola Desireep, Haber si te entendi lo que quieres es que aparezca el encabezado en todas las paginas con el numero de pagina y la imagen, si es así entonces lo colocas en pages header, sin ningun proble para el encabezado y la numeración, pero para la imagen sucede que solo te la deja exportar si el reporte es en PDF, HTML o el visor si es en excel no te lo permite, ensaya y si alguna duda te puedeo ayudar con mucho gusto. :adios: |
Saludos, ya he leeido completamene este foro y me parece excelente, solo que tengo un problema muy particular con jasper reports, resulta que al momento de verlo en el explorer ( o en el opera) manda un mensaje como el siguiente: Excepcion causada por: net.sf.jasperreports.engine.JRException: Error at (17, 136: null El codigo JSP es el siguiente: <%@ page import=" net.sf.jasperreports.view.JasperViewer"%> <%@ page import=" net.sf.jasperreports.engine.xml.JRXmlLoader"%> <%@ page import=" net.sf.jasperreports.engine.JRException"%> <%@ page import=" net.sf.jasperreports.engine.design.JasperDesign"%> <%@ page import=" net.sf.jasperreports.engine.JasperCompileManager"% > <%@ page import=" net.sf.jasperreports.engine.JasperFillManager"%> <%@ page import=" net.sf.jasperreports.engine.JasperExportManager"%> <%@ page import=" net.sf.jasperreports.engine.JasperPrint"%> <%@ page import=" net.sf.jasperreports.engine.JasperReport"%> <%@ page import=" net.sf.jasperreports.engine.JasperRunManager"%> <%@ page import= "net.sf.jasperreports.view.JasperDesignViewer" %> <%@ page import="java.util.HashMap"%> <%@ page import="java.util.Map"%> <% String destFileName = null; %> <%@page language="java" import="java.util.*, java.sql.*, java.io.*"%> <jsp:useBean scope="page" id="conn" class="database.Databasev" /> <% try { File reportFile = new File(application.getRealPath("C:\\reportes\\siima1 .jasper")); //Se crea un mapa de parametros para pasar el reporte Map parameters = new HashMap(); parameters.put("Title", "Propiedades de la Maquina de Inferencia"); //Se efectua la conexion a la base de datos conn.conectame(); out.println("Conectado a la base de datos"); out.println("Tratando de leer archivo "); JasperDesign jasperDesign = JRXmlLoader.load("C:\\reportes\\siima1.jrxml"); JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign); JasperPrint jasperPrint =JasperFillManager.fillReport(reportFile.getPath() , new HashMap(), conn.getConnection()); out.println("Si se ve este mensaje se compilo correctamente el REPORTE"); byte[] bytes = JasperRunManager.runReportToPdf(reportFile.getPath (), parameters,conn.getConnection()); response.setContentType("application/pdf"); response.setContentLength(bytes.length); ServletOutputStream ouputStream = response.getOutputStream(); ouputStream.write(bytes, 0, bytes.length); ouputStream.flush(); ouputStream.close(); conn.desconectate(); } catch (JRException e) { // TODO Auto-generated catch block e.printStackTrace(); out.println("Excepcion causada por: " + e); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); out.println("Excepcion causada por SQLException: " + e); } %> CASI estoy seguro que el problema se debe al JRXML, ya que fue generado con Eclipse ( JasperAssistant) y no por Ireport's, YA QUE este ultimo el IREPORTS no lo puedo correr en mi maquina, agradecere toda la ayuda que me puedan dar. |
Hola gente Solucione mi problema, pero ahora me surgio otro Mi action genera correctamente el jrxml y lo puedo ver con el JasperViewer cuando lo corro desde la maquina servidor tomcat Ahora, cuando lo accedo desde una maquina cliente, se ejecuta bien el armado del reporte, pero JasperViewer se muestra en la maquina servidor !!! Alguno puede informarme si falat alguna configuracion ? Desde ya muchas gracias AJF |
Hola stavera: Gracias por contestarme. Ya conozco la existencia de header page, pero mi problema es que en la primera pagina de mi informe, el contenido del header pagen debe ir antes del titulo, es decir la "band heardes page" debe ir antes de la "band title" y eso no lo permiten los repor. He pensado en poner una condicion en la expexión, eso es posible??? es decir, es posible poner que si estoy en la primera pagina haga una cosa y si estoy en otra cualquiera haga otra cosa???Creo que me estoy volviendo loca....nosé. Bueno muchas gracias de antemano. :'( :'( :'( :'( |
iReport Hola Desireep Mira hasta el momento no me ha tocado algo parecido, pero creo que no es posibe ya que las esas band ya vienen prederminadas, pero si encuentro algo que te pueda servir te lo hago saber. Si quieres y para enterder mejor lo que quieres hacer enviame un formato del reporte que quieres saber para ver si es mas fácil ayudarte. :adios: |
iReport Se me olvido preguntarte algo, ya has generado JSP para mostra tus reportes? :pensando: |
hola de nuevo a todos. Segun lo que he leido, existe la propiedad print when expression que como su nombre indica puedes ponerle una expresion para que pinte un determinado elemnto dependiendo de una expresion evaluable. Pues bien he pensado en relacion a mi preblema que quizas pueda poner en la expresion que solo se pinte cuando la pagina(la cojeria de las valriables del report)se distinta a 1, es decir algo asi:$V{PAGE_NUMBER}!=1 tambien he probado poniendo >1 y poniendo el 1 como un String "1", pero es inutil, no funciona, algu¡en me puede decir como hacerlo??? Creo que la idea de utilizar esa propiedad es buena pero no consigo hacerala andar. Muchas gracias y si alguien puede contestarme por favor que lo haga. Gracias de antemanos |
hola: estoy iniciandome con ireport y jasperreport, se que la mayoría de ustedes ya están bastante abanzados en el tema, pero espero que me den una mano. ya instale el apache-ant y el ireport-0.4.1, pero creo un reporte vacío, y al compilarlo me salta el siguiente error: Compiling to file... .\borrar.jasper -> .\untitled_report_1.java Error compiling the report java source! java.lang.NoClassDefFoundError:*org/apache/commons/digester/Digester ****at*net.sf.jasperreports.engine.JasperCompileMa nager.compileReportToFile(JasperCompileManager.jav a:151) ****at*it.businesslogic.ireport.IReportCompiler.ru n(IReportCompiler.java:398) ****at*java.lang.Thread.run(Unknown*Source) le agradecería mucho a quien me pueda dar una mano, porque ya estoy de los pelos. hasta luego |
Posible solucion Te falta el .jar llamado commons-digester ( agregarlo a web-inf/lib dentro de tomcat, esto para una sola aplicacion, si lo quieres que todas las aplicaciones lo puedan ver, entonces te recomineod que lo instales dentro de common/lib), se supone que hasta ahi debe de compilartelo sin errores, ahora viene que explorer lo pueda ver, hasta ahi es donde voy yo. Suerte y espero que te sirva.http://www.forosdelweb.com/newreply....e=1&p=1102772# |
Error tipico Efectivamente es como dice isc_angel debes colocarlos en el web-inf/lib de tu sitio. Estos .jar los puedes sacar de IReport lib. |
Gracias por las respuestas, pero resulta que olvide mencionar que utilizo j2sdk1.4.2_04, y eclipse como IDE , para desarrolla una aplicacion de escritorio. muchas gracias igualmente |
Generar reporte por el browser Estimados compañeros del foro. primero que todo les doy las gracias por todos los aportes que han hecho al foro. segundo, quiero preguntarles como desde un jsp, a la vez de generar el reporte me abra el archivo en formato html, SIN AMARRARLE al cliente la ruta del explorer. que lo genere y lo visualice por el explorer automáticamente, ojala si tienen tambien el ejemplo con excel, sisas. Mil gracias WIFER |
Por favor ayudenme!!! Hola a todos, recien me estoy iniciando en esto, tengo el mismo problema que el amigo OVEJOTA................ Compiling to file... .\borrar.jasper -> .\untitled_report_1.java Error compiling the report java source! java.lang.NoClassDefFoundError:*org/apache/commons/digester/Digester ****at*net.sf.jasperreports.engine.JasperCompileMa nager.compileReportToFile(JasperCompileManager.jav a:151) ****at*it.businesslogic.ireport.IReportCompiler.ru n(IReportCompiler.java:398) ****at*java.lang.Thread.run(Unknown*Source) ya segui los pasos que dieron isc_angel y Laraos, pero me sigue saliendo lo mismo, utlizo el jakarta tomcat 5.0.28, lo estoy corriendo desde ...... D:\Archivos de programa\netbeans-4.0\nb4.0\jakarta-tomcat-5.0.28 y los .jar los puse en D:\Archivos de programa\netbeans-4.0\nb4.0\jakarta-tomcat-5.0.28\common\lib, utlizo el jdk1.5.0, win2000, la verdad no se que hacer, no se en que estoy fallando, espero que me puedan ayudar, sigo con la agonia de no poder generar hasta ahora un .jasper!!!...gracias por las respuestas de antemano. |
busca el jar que tiene el paquete org y colocalos en el WEB-INF\lib (o ensaya en el class aunque en lib deberia funcionar, pero recuerda lib de tu sitio) de tu sitio o ensaya colocando ese paquete al mismo nivel de donde tienes tus jsp. Esos errores siempre ocurren cuando no encuentra el paquete. En la ruta que diste :\Archivos de programa\netbeans-4.0\nb4.0\jakarta-tomcat-5.0.28\common\lib no veo el WEB-INF por ningun lado. |
como hago para cambiar el resultado de un campo que me da null (en el visualizador de ireport) no se vea null sino aparecezca en blanco? Gracias Kirson!! :si: |
Campo null Para que el reporte no presente null si no blanco debes ir a las propiedades del elemento textField, a la viñeta "Text Field" y checar donde dice "Blank when null" Saludos KirsonX |
Generar reportes en Excel y Html :'( :'( :'( Hola a todos, necesito una gran ayuda, anteriormente ya habia generado mis preguntas pero no logro ninguna solución, tengo un pequeño problema y es que estoy generando mis reportes en excel y html, pero cuando los corro no me los deja visualizar. :pensando: Pasa lo siguiente ejecuto el jsp y me abre la sesion de excel pero no me lo muestra, esto pasa con un codigo y genere otro jsp pero el archivo me lo guarda en la ruta pero no me lo deja ver al igual que el otro y con el de html quisiera generarlo pero no colocando la ruta del internet explorer sino que me lo habra directamente en el browser. Estuve verificando todo el foro nuevamente y no encuentro la solución, estoy trabajndo con el codigo que da Destruktor pero no ha sido posible. Si alguien tiene algun ejemplo de como lo puedo realizar se lo agredeceria muchisimo. :-( :-( :-( :-( :adios: |
Archivos EXCEL Para todos lo que siguen preguntando por privado como exportar a Excel desde un JSP, la cosa es asi: Código: //Cargamos la definicion del reporte *.jasper Saludos a tododos!! |
Cita:
Stavera, Cuando exportas a Excel o HTML se genera un archivo fisico en disco, por ello tras crearlo debes hacer algo para visualizarlos, como ves en el codigo que postee, el el caso del exel, yo lanzo el cuadro de descarga, donde te da la opcion de abrir el archivo o descargarlo. en el caso del html, tambien es muy simple la solucion, simplemente tomas la ruta del html en el servidor y se la cargas al navegante, en la pagina o en un iframe, muy simple |
Respuesta a dos ventanas en IExplorer Cita:
Buenas.. yo también esto empezando en esto de jsp, java, etc.. y pues estoy aventandome una aplicación para generar reportes vía web... este sitio me ha sido de gran utilidad y me gustaría devolver el favor.... En la cuestión de que el explorfer arroja el PDF en dos ventanas se debe a que el archivo jsp que va a imprimir el repotre no debe contener encabezado html ni ningpun tipo de content-type, por que al ahora de mandar el pdf se le indica que el tipo de aplicación es pdf y ésto supongo confunde al explorer. La solución es simplemente el archivo que imprima el pdf dejarlo sin tags de HTML al inico y al final, es decir, sin <title><body>, etc... y con éso está jalando bien en mi aplicación.. Espero les sirva... Por ahpi leí que tienen un buen manual de como usar jFreeChart.. Se los agradecería mucho si me los pudieran enviar... Gracias de antemano... Luis |
SALUDOS gracias a este y otro foro por fn fui capaz de correr reportes con jasper reports en pdf, ahora voy a tratar de generar reportes en excel, espero pronto decirles como se hace bien |
Hola a todos!!! Estoy tratando de mostrar un reporte desde una JSP en un pdf, usando jasperreports, internet explorer y acrobat 6.0. EL reporte lo puedo compilar bien (genera el .jasper), también realizó bien la conexión a la base de datos, pero la siguiente línea de código lanza una exception: byte[] bytes = JasperRunManager.runReportToPdf(rptFile.getPath(), parameters,conn); La exception es: org.apache.jasper.JasperException: com/lowagie/text/DocumentException El reporte es muy simple, solo imprime un "hola", no tiene parámetros y mucho menos imágenes... Necesito usarlo desde una aplicación con struts, si alguién tiene algún ej. que haya usado con struts ó alguna página para visitar, puede pasarla, por favor. Recién estoy comenzando con esto...si alguien puede ayudarme , estaré muy agradecida. Saludos |
llakare Lee el principio de este foro, ahi te comentan el nombre de unos archivos *.jar, que debes de tener en : C:\jakarta\webapps\ROOT\WEB-INF\lib y en C:\iReport\lib :arriba: |
java.lang.OutOfMemoryError Hola a todos, y gracias por la ayuda que me brindaron :arriba: para desarrollar reportes, y claro que tambien revise mi codigo que contenia algunos errores, basicos, pero no todo puede ser buenas noticias, al momento de que realizo mi reporte, me marca la siguiente exception java.lang.OutOfMemoryError. Me imagino que es por el numero de registros que encuentra. Realiza un reporte en XLS Excel, me lo muestra cuando son menos de 1000 registros, pero cuando son 3000 reg. me marca el error que les comento. Alguien sabe como manejar esta exception! GRACIAS POR TODO! :arriba: |
com/lowagie/text/DocumentException Cita:
Lo que necesitas es el archivo itext-1.01.jar (es la versión que yo uso). Copialo del directorio lib del iReport dentro del WEB-INF/lib del directorio de tu aplicación jsp.... |
Me faltó decir que estoy usando jasperreports-0.6.7, tengo incluido en el directorio lib el archivo itext-1.02b...será la versión de este jar???? Muchas gracias por contestar... SAludos |
Cita:
|
Una pequeña duda Hola a todos, queria saber si a alguien le ha ocurrido alguna vez esto. Es a nivel ya de diseño desde el IReport, en un static text pongo Año y en el pdf q me genera sale A?o, al parecer no coje la ñ. No se si es de IReport o de Acrobat 7, alguien tiene idea pq puede ser? Gracias |
Para llakare Hola no es la version de jar es que debes instalar acrobat 7 ya que por estrañas razones no funciona si no con este a la hora de ejecutarlo, pero fijate si tienes todas las variables entorno en el ClassPath donde deben ir los .jar de la BD que estas utilizando, mas o menos asi: CLASSPATH: C:\iReport\lib\itext-1.02b.jar (este archivo es para el uso de archivos pdf) verifica y si tienes alguna dudas con mucho gusto. :adios: |
Para Acano Hola Acano mira estuve realizando varios ensayos y todos mis reportes generados en iReport en pdf se sale bien, me toma la ñ normalmente, verifca si tu version de acrobat es 7. :adios: |
Hola amigos, tengo un peque;o pero gran problema, es que cuando ejecuto el .jar no me muestra los reportes, pero si compilo todo, los muestra, estoy utilizando netbeans y ya copie todas las clases y todo a mi jsdk. Cliente c = new Cliente(); URL urlc = c.getClass().getResource("//Proyecto//Reportes//R_Clientes.jasper"); JasperReport masterReport = (JasperReport)JRLoader.loadObject(urlc); apunto nuevamente q si funciona si lo hago correr el programa desde netBeans, pero al ejecutar el .jar, no muestra el reporte, y el error es en la ultima linea de codigo q adicione anteriormente Espero q me puedan ayudar Saludos |
Sobre la estructura del documento XML de Jasper Reports Hola a todos, he estado trabajando con Jasper Reports y me gustaria aprender la estructura del documento XML del diseño, mas detallado que como se explica en la pagina de jasper Reports. Alguien me pudiera ayudar, o conoce alguna pagina web que la describa? Gracias |
Saludos a todos. Necesito diseñar un reporte donde la pagina a ver o imprimir se desplige de forma horizontal. Gracias por la ayuda que me puedan brindar. |
Para STAVERA Muchas gracias Stavera, al final fue un lapsus mental, jjaajajaja. Era por el tipo de letra del documento PDF. :-D Un Saludo a todos Bueno otra cosita de diseño q aun no e conseguido desvelar es pintar en el diseño una linea vertical q coja varios BAND (por ej: ColumnHeaders, detaills). Sabrian acerlo?? :pensando: Gracias |
ireport + struts Hola!!! Primero, muchas gracias a todos los que respondieron (lmflores, patasgreen20 y stavera), ya solucioné mi problema. :aplauso: Ahora tengo otra duda, estoy trabajando con struts y hibernate para el mapeo a una base relacional. En los códigos de ej. que vi, para usar el método JasperRunManager.runReportToPdf(...), tengo que pasarle la conexión a la Bd, utilizando el DriverManager y demás...el tema es que en struts eso es transparente porque está todo configurado desde archivos xml, me gustaria saber si se puede hacer de otra forma, tal vez hay otro método para utilizar. Alguien sabe donde puedo encontrar información sobre la documentación de las clases Jasper como JasperRunManager, por ej. ??? Mi otra consulta es: Cómo puedo llenar los datos del reporte con los resultados que me dá una clase java??? (supongamos que invoco a un método q me retorna una lista de objetos ), es decir desde la JSP invoco al método y de ahi lleno el reporte. Lei desde el comienzo del foro, no sé si mi duda se resuelve usando datasource, si alguien tiene un ejemplo, se lo agradeceré. Desde ya muchas gracias, el foro está muy bueno, y es genial que la gente que sabe dedique parte de su tiempo a contestar y compartir sus conocimientos. Lamentablemente yo no sé lo suficiente como para poder contestar, por ahora :=( Saludos llakare |
La zona horaria es GMT -6. Ahora son las 03:54. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2025, Jelsoft Enterprises Ltd.