17/03/05, 07:43:31
|
#1 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
Jasper Report + iReport + NetBeans 4
Hola a todos, estoy iniciandome en la generación de informes jasper, pero tengo algunas dificultades aver si me pueden orientar.
Baje desde http://jasperreports.sourceforge.net/
jasperreports-0.6.5.jar
jasperreports-0.6.5-applet.jar
y los copie en la ruta:
C:\j2sdk1.4.2_07\jre\lib\ext
(De partida no se si sera esto correcto o donde realmente se intalan.)
Luego genere un informe simple y lo compile con el iReport 0.4.1 generando de esta manera mi archivo:
C:\reports\rep_cli.jasper
Tras esto creo un proyecto en NetBeans 4 para ejecutar mi reporte, este es el codigo:
Código:
/*
* Main.java
*
* Created on 17 de marzo de 2005, 8:56
*/
package reportload;
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.*;
/**
*
* @author DestruKtor
*/
public class Main {
/** Creates a new instance of Main */
public Main() {
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
try
{
//Ruta de Archivo Jasper
String fileName="C:\\reports\\rep_cli.jasper";
//Ruta de archivo pdf de destino
String destFileNamePdf="C:\\reports\\rep_cli.pdf";
//Ruta de archivo xls de destino
String destFileNameXls="C:\\reports\\rep_cli.xls";
//Pasamos parametros al reporte Jasper.
Map parameters = new HashMap();
parameters.put("sql_query", new String("select * from clientes"));
//Preparacion del reporte (en esta etapa se inserta el valor del query en el reporte).
JasperPrint jasperPrint=JasperFillManager.fillReport(fileName, parameters, getConnection());
//Creación del PDF
JasperExportManager.exportReportToPdfFile(jasperPrint, destFileNamePdf);
//Creación del XLS
JRXlsExporter exporter = new JRXlsExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFileNameXls);
exporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.TRUE);
exporter.exportReport();
System.exit(0);
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
}
/**Metodo para crear la conexion a DB*/
private static Connection getConnection() throws ClassNotFoundException, SQLException {
//Configuración de la conexión.
String driver = "org.postgresql.Driver";
String connectString = "jdbc:postgresql://192.168.1.7:5432/bdtest";
String user = "user";
String password = "123";
Class.forName(driver);
Connection conn = DriverManager.getConnection(connectString, user, password);
//Retornamos la conexión establecida.
return conn;
}
}
Y tras compilar la aplicacion me arroja el siguiente error al ejecutar la linea de codigo:
Código:
JasperPrint jasperPrint=JasperFillManager.fillReport(fileName, parameters, getConnection());
El mensaje de error es: Error loading object from file : C:\reports\rep_cli.jasper
la ruta esta perfecta, pero no logro deducir cual es mi error, por favor si me pueden guiar en el uso de jasper report se los agradesco de antamano
Saludos!!
|
|
|
|
21/03/05, 13:33:36
|
#2 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
Mi pregunta es nadie tiene idea o simplemente nadie quiere explicar el uso de los jasper report?
|
|
|
|
21/03/05, 19:22:26
|
#3 (permalink)
|
Registrado: mar 2005
Mensajes: 1
|
ireport
Yo tambien tengo el mismo problema, si lo soluciono lo publico porque he buscado demasiado y nada, espero que tu hagas lo mismo cuando encuentres la solucion.
Gracias!!!
|
|
|
|
23/03/05, 05:38:01
|
#4 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
Aún sin respuesta
Ten la seguridad que si logro hacer funcionar la cosa, lo posteo en el foro, pero lamentablemente aún me estoy dando de cabezasos por que no se cual es el problema.
Espero que si alguien lo logro hacer funcionar comparta el conocimiento, el codigo y el diseño del jasper no hay drama, pero como se instala jaspertresport? creo que por hay esta el error
Saludos
DestruKtor 
|
|
|
|
24/03/05, 10:24:43
|
#5 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
Problema Solucionado!!!!!!
Por fin descubri el error y no era de codigo, ya que el codigo que esta arriba funciona perfecto, el problema ocurre por lo siguiente
el IReport en su directorio \lib trae el *.jar del jasperrepot y traia la vercion:
jasperreports-0.6.4.jar
con esta compila el archivo xml y generaba el *.jasper
Luego al intentar abrir el reporte con mi aplicacion estaba usando la vercion jasperreports-0.6.5.jar del jasper report y por este motivo el error, asi que reemplace el *.jar del iReport por la ultima vercion volvi a compilar y generar el *.jasper y problema resuelto (y)
Ahora si te sigue sin funcionar verifica que tengas los siguientes jar tanbien
commons-beanutils.jar
commons-collections.jar
commons-digester.jar
commons-logging.jar
itext-1.2.jar
poi-2.5.1-final-20040804.jar
Saludos a todos
DestruKtor
http://www.vladyrojas.cl/
|
|
|
|
28/03/05, 05:18:07
|
#6 (permalink)
|
Registrado: nov 2002
Ubicación: Calabozo -Edo. Guárico
Mensajes: 176
|
Me podrían explicar cuál es la función de Jasper y IReport y como instalo eso para generar reportes? Gracias
__________________
ValerioJ
|
|
|
|
28/03/05, 06:15:28
|
#7 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
Re:
Haber en primer lugar el IReport no necesita instalacion ya que es una aplicacion java, solo necesitas descomprimir el archivo .zip o tar.gz y ejecutar el archivo
ireport.bat --para ms windows
ireport.sh --para linux
ahora sobre el jasperreport puedes encontrar la api completa en :
http://jasperreports.sourceforge.net/api/index.html
__________________
Se Despide
DestruKtor
|
|
|
|
28/03/05, 06:28:20
|
#8 (permalink)
|
Registrado: feb 2005
Mensajes: 5
|
Para ValerioJ:
JasperReport son las librerias q tiene java para realizar reportes, lo podes bajar del link q dieron al inicio del tema, el iReport es una herramienta q te ayuda a diseñar los reportes, lo podes bajar desde esta pagina http://ireport.sourceforge.net/ , lo descomprimis el archivo, y vas a poder ver el archivo iReport.bat, ese tenes q ejecutarlo y se carga el iReport.
Para todos:
Tengo un problema con la conexion dentro del iReport, yo quiero establecer una conexion q se conecte a la base de datos de otra computadora q esta en red, pero para este caso, le puse el nombre de la maquina en la q estoy trabajando, pero no puedo establecer la coneccion (sé q si voy a sacar datos de la misma maquina, puedo poner localhost), espero q alguien me pueda hechar una manito
Gracias!!
|
|
|
|
28/03/05, 07:40:21
|
#9 (permalink)
|
Registrado: nov 2002
Ubicación: Calabozo -Edo. Guárico
Mensajes: 176
|
Ok, amigos gracias por la información pero mi inquietud es si es necesario Jasper Report teniendo IReport. ah en cuanto a la conexión del Amigo MARCELO_V tal vez tengas que propocionarle la dirección IP de la máquina que tiene la base de datos a la cual te quieres conectar.
__________________
ValerioJ
|
|
|
|
28/03/05, 10:06:53
|
#10 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
respuesta
Asi es si quieres acceder a otra maquina lo más recomendable es utilizar las direcciones IP.
Ahora ValerioJ:
resulta que el iReport es un editor grafico de reportes jasper, con el creas las definiciones de los reportes en xml y puedes compilarlos en *.jasper
ahora para visualizar, e imprimir los reportes de tu aplicacion java o jsp necesitas las librerias jaspereports para lograrlo, es decir el iReports solo es un editor grafico visual para crear el formato y la definicion de tu reporte utilizando la api jasperreport
__________________
Se Despide
DestruKtor
|
|
|
|
28/03/05, 10:29:56
|
#11 (permalink)
|
Registrado: nov 2002
Ubicación: Calabozo -Edo. Guárico
Mensajes: 176
|
Mil Gracias DestruKtor, ahora estoy claro.
__________________
ValerioJ
|
|
|
|
28/03/05, 16:05:59
|
#12 (permalink)
|
Registrado: feb 2005
Mensajes: 5
|
Hola a todos, intente con el ip, pero tampoco me responde, espero q me puedan colaborar en esto.
Gracias!!
|
|
|
|
29/03/05, 06:24:49
|
#13 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
Sobre conexión
pues el string de conexion deberia ser algo asi, con la ip y el puerto del servidor:
jdbc:postgresql://192.168.0.5:5432/DataBaseName
si reemplazas la ip por localhost logras conectarte a tu servidor local?? si es asi verifica que el equipo al que te quieras conectar si tiene firewall te permita el acceso al puerto especificado.
__________________
Se Despide
DestruKtor
|
|
|
|
29/03/05, 12:30:14
|
#14 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
Fuentes del IReport
Quisiera crear un reporte para imprimirlo en una impresora matriz de punto, cual es la fuente apropiada para utilizar en el IReport para generar mi reporte jasper??
Alguna sugerencia?
__________________
Se Despide
DestruKtor
Última edición por DestruKtor fecha: 29/03/05 a las 12:31:15.
|
|
|
|
30/03/05, 07:59:37
|
#15 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
Pasae parametros a consulta.
Olvidemos lo de las fuentes por ahora,
Lo que me inquieta es como pasarle parametros a una consulta
puedo definir la consulta y pasarle parametros parametros que eh definido asi:
select * from clientes where idclienter = $P{id}
select * from clientes where idclienter = $P{id} and ciudad = $P{ciudad} order by $P{orden}
hasta hay todo bien, pero la cosa se complica por ejemplo si tengo muchos filtros que mandarle a una consulta, por lo que pensaba pasar mejor la consulta completa
en un parametro
para ello defini un parametro $P{query} y le asigne valor por defecto = "select * from clientes" para poder visualizar los datos y ver el informe
y en query del ireport solo coloco el parametro $P{query}, me arroja el error :
Syntax error en o cerca de "$1" ahora si elimino las "" del valor por defecto del parametro que es lo que asumo esta molestando en la consulta no deja compilar, alguna idea de como solucionar esto uso el iReport 0.4.1
__________________
Se Despide
DestruKtor
|
|
|
|
31/03/05, 09:25:50
|
#16 (permalink)
|
Registrado: mar 2005
Mensajes: 5
|
JasperReports.
Hola!
He trabajado ya varios meses con el JasperReports y con el Java Sun Studio Creator. Y me funciona de maravilla, claro que me costó demasiado lograr que funcionara bien.
Pero ahora tengo un nuevo reto, y es que debo de implementar el JasperReports con PowerBuilder.
Alguien sabe si esto es posible??? Si lo es, me pueden decir cómo hacerlo
Gracias!!!!!!!!!!
Wendy,
Costa Rica
wendy@decsacr.com
|
|
|
|
04/04/05, 15:08:05
|
#17 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
pues para que funcione jasperreport se requiere codigo 100% java por que en eso esta construido y solo asi funciona. ahora podrias hacer que una aplicacion construida en cualquier lenguaje ejecute un reporte jasper, si tienes una aplicacion java que haga el trabajo de pasar las variables de tu aplicacion a el reporte, lo compile y lo muestre. pero para manipular la api jasperreport se requiere java.
jasper report = reportes java
__________________
Se Despide
DestruKtor
|
|
|
|
05/04/05, 08:39:41
|
#18 (permalink)
|
Registrado: abr 2005
Ubicación: medellin colombia
Mensajes: 25
|
iReport
Veo que eres unapersona que tiene bastante conocimiento acerca del tema, me podrias ayudar?
Me gustaría saber como invocar el generador de reporte desde codigo html, para publicar los reportes en una pagina Web, ah y también como realizar una sumatoria para cierto campo de una tabla, ya intente por consulta sql con la funcion SUM() y no me da. De antemano muchas gracias.
|
|
|
|
05/04/05, 09:08:47
|
#19 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
haber el generador de reportes la unica forma de invocarlo es mediante codigo java no html o php directamente, lo que pudes hacer es crear un script jsp en un servidor tomcat que recibas los parametros necesarios de una pagina html o php o cualquier otra y ejecute el reporte
__________________
Se Despide
DestruKtor
|
|
|
|
05/04/05, 09:54:30
|
#20 (permalink)
|
Registrado: abr 2005
Ubicación: medellin colombia
Mensajes: 25
|
iReport
Bueno, tengo tambien la posibilidad por javascrip solo que ne sugerieron por html, pero me parece genial por medio de java. Si me puedes ayudar te lo agradezco muchisimo.
|
|
|
|
05/04/05, 09:59:10
|
#21 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
Por javascipt lo unico que puedes hacer es imprimir una pagina html tal como se muestra, pero no puedes ejecutar jasperreport ni con javascript ni con html debes escribir la aplicacion en java. sigue los pasos que estan al comienzo del foro, adapta el codigo que esta al principio, con pequeñas modificaciones puedes hacer tu jsp y ejecutar reportes jasper.
Suerte 
__________________
Se Despide
DestruKtor
|
|
|
|
05/04/05, 10:08:18
|
#22 (permalink)
|
Registrado: abr 2005
Ubicación: medellin colombia
Mensajes: 25
|
iReport
Bueno no soy una experta en java pero voy a compartir este codigo con un amigo que sabe mas, si tengo alguna duda te seguire consultando, te felicito por que manejas muy bien el tema, ah y otra cosa sobre la sumatoria de cierto campo de la tabla con la que estoy generando el reporte, no he podido por consulta sql, y no se por iReport como lo puedo hacer ya que hace poco estoy en el cuento y estoy empezando a conocerlo, ya he generado reportes y hasta el momento no he presentado inconvenientes solo que en el reporte me gustaria sacar como el resumen de ciertos datos, sera que esto tambien me puedes ayudad.
Muchas gracias de nuevo
|
|
|
|
05/04/05, 13:55:58
|
#23 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
Pues la sumatoria de un campo por iReport es muy facil.
Te vas a Objects Library y hay hay un componente que te permite realizar la sumatoria de un campo.
__________________
Se Despide
DestruKtor
|
|
|
|
06/04/05, 07:15:23
|
#24 (permalink)
|
Registrado: abr 2005
Ubicación: medellin colombia
Mensajes: 25
|
iReport
Si muchas gracias acabo de intentar la sumaoria, pero me sale el siguiente error: será que me puedes ayudar de nuevo
Errors compiling .\REPORTE 4.jasper! 96915*[Thread-15]*WARN*design.JRVerifier**-*Warning*:*Element*bottom*reaches*outside*band*are a*:*y=0*height=1*band-height=0 net.sf.jasperreports.engine.JRException:*Errors*we re*encountered*when*compiling*report*expressions*c lass*file: 1.*Syntax*error*on*token*"expression",*delete*this *token ****************value*=*(java.lang.Integer)(Custom *expression); ************************************************** *<--------> 2.*Syntax*error*on*token*"expression",*delete*this *token ****************value*=*(java.lang.Integer)(Custom *expression); ************************************************** *<--------> 3.*Syntax*error*on*token*"expression",*delete*this *token ****************value*=*(java.lang.Integer)(Custom *expression); ************************************************** *<--------> 3*errors ****at*net.sf.jasperreports.engine.design.JRJdtCom piler.compileReport(JRJdtCompiler.java:156) ****at*net.sf.jasperreports.engine.design.JRDefaul tCompiler.compileReport(JRDefaultCompiler.java:149 ) ****at*net.sf.jasperreports.engine.JasperCompileMa nager.compileReportToFile(JasperCompileManager.jav a:171) ****at*net.sf.jasperreports.engine.JasperCompileMa nager.compileReportToFile(JasperCompileManager.jav a:153) ****at*it.businesslogic.ireport.IReportCompiler.ru n(IReportCompiler.java:398) ****at*java.lang.Thread.run(Unknown*Source
|
|
|
|
07/04/05, 14:49:02
|
#25 (permalink)
|
Registrado: mar 2005
Mensajes: 92
|
Pues no se que estaras haciendo mal, por que por más que trato que el IReport me de algun error al realizar una sumatorio entre campos, compila siempre bien.
Si sacas la sumatoria, puedes compilar con exito el reporte?, verifica tambien los tipo de datos.
Saludos!
__________________
Se Despide
DestruKtor
|
|
|
|
07/04/05, 21:28:57
|
#26 (permalink)
|
Registrado: abr 2005
Mensajes: 5
|
Hola, soy nuevo con esto de la creacion de los reportes en Java, quisiera saber si alguien me puede ayudar con la siguiente duda:
deseo llamar a un reporte desde un JSP, el reporte tiene una conexion con una base de datos y posiblemente un grafico creado en jfreechart, alguien tiene alguna idea de como hacer esto.
espero que me puedan ayudar.
Pura vida!
muchas gracias
|
|
|
|
08/04/05, 07:53:18
|
#27 (permalink)
|
Registrado: abr 2005
Ubicación: medellin colombia
Mensajes: 25
|
Jsp
Hola, mira yo tenia el mismo inconveniente pero al inicio del foro hay un codigo que lo puedes adaptar que es en java, pero no se si te funciones por la grafica, ¡intentalo!

|
|
|
|
|