Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   JAVA (https://www.clubdelphi.com/foros/forumdisplay.php?f=16)
-   -   jasperreports + irreports (https://www.clubdelphi.com/foros/showthread.php?t=45507)

La__X 05-07-2007 10:18:01

jasperreports + irreports
 
Foro,
Alguien ha trabajado reporteando en java? empleando jasperreports e irreports?
Quiero mandar un parametro tipo Collection o ArrayList para el reporte y obtener algo asi:

ID Descripcion Stock
4 BluePrint Card 19
45 Kardex15 Card 25
.
.
.
(n items)

Alguna ayuda?

Arcioneo 20-07-2007 09:45:36

Ireport
 
Cita:

Empezado por La__X
Foro,
Alguien ha trabajado reporteando en java? empleando jasperreports e irreports?
Quiero mandar un parametro tipo Collection o ArrayList para el reporte y obtener algo asi:

ID Descripcion Stock
4 BluePrint Card 19
45 Kardex15 Card 25
.
.
.
(n items)

Alguna ayuda?

1) Primero bajate el IReport
2) Copia en tu classpath del IDE que estes usando la libreria de Jasper
3) Diseña la plantilla de lo que vas a enviar, compilala

y bueno, para no hacerla larga checate este pequeño ejemplo:

http://www.adictosaltrabajo.com/tuto...pagina=ireport


Ahi aprendí yo, si quieres algo asm explicadon me dices.

La__X 04-08-2007 16:17:50

Hola.
GRacias por la respuesta. Pues me baje el IReport e incluso encontre un ejemplo de lo que quiero pero cuando lo quiero ejecutar me salen unos errores que no logro entender.
Tambien adjunto el codigo del ejemplo. Lo hecho paso a paso y no se porque no me sale el reporte :(

Código:

Exception in thread "main" net.sf.jasperreports.engine.JRException: Error loading object from file : D:\PruebaJasper\RelAlunosDisciplinas.jrxml
        at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:92)
        at net.sf.jasperreports.engine.util.JRLoader.loadObjectFromLocation(JRLoader.java:257)
        at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluateSubreport(JRFillSubreport.java:311)
        at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluate(JRFillSubreport.java:260)
        at net.sf.jasperreports.engine.fill.JRFillElementContainer.evaluate(JRFillElementContainer.java:274)
        at net.sf.jasperreports.engine.fill.JRFillBand.evaluate(JRFillBand.java:403)
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:1346)
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:662)
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:232)
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:113)
        at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:763)
        at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:688)
        at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:89)
        at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:601)
        at com.GeraRelatorio.<init>(GeraRelatorio.java:36)
        at com.GeraRelatorio.main(GeraRelatorio.java:42)
Caused by: java.io.StreamCorruptedException: invalid stream header
        at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:763)
        at java.io.ObjectInputStream.<init>(ObjectInputStream.java:278)
        at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:87)
        ... 15 more
Java Result: 1


Arcioneo 06-08-2007 15:07:09

Hombre no estas importando la libreria
 
Te falta importar la librería (.jar) del jasperreports

Arcioneo 06-08-2007 15:09:58

Olvida lo anterior
 
Me equivoqué...

1) Verifica que tienes ese fichero en esa ruta, ese fichero es el compilado de tu jasper, no olvides que cuando hiciste el diseño has de compilarlo...


2) Verifica que todos los campos, ya sean "fields" o "parameters" estén declarados y correspondan al tipo que estas enviando...

Te recomiendo a modo de prueba enviar un solo string e imprimirlo en un reporte supersimple y asi ir agregando mas y mas para que veas que si funciona

La__X 07-08-2007 05:52:42

Hola
Gracias por la respuesta
Si compile el *.jrxml
y asi quedo mi codigo

y ahora obtengo estos errores:

Código:

Exception in thread "main" net.sf.jasperreports.engine.JRException: Error loading object from file : D:\PruebaJasper\RelAlunosDisciplinas.jrxml
        at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:92)
        at net.sf.jasperreports.engine.util.JRLoader.loadObjectFromLocation(JRLoader.java:257)
        at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluateSubreport(JRFillSubreport.java:311)
        at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluate(JRFillSubreport.java:260)
        at net.sf.jasperreports.engine.fill.JRFillElementContainer.evaluate(JRFillElementContainer.java:274)
        at net.sf.jasperreports.engine.fill.JRFillBand.evaluate(JRFillBand.java:403)
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:1346)
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:662)
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:232)
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:113)
        at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:763)
        at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:688)
        at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:89)
        at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:601)
        at com.GeraRelatorio.<init>(GeraRelatorio.java:36)
        at com.GeraRelatorio.main(GeraRelatorio.java:42)
Caused by: java.io.StreamCorruptedException: invalid stream header
        at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:763)
        at java.io.ObjectInputStream.<init>(ObjectInputStream.java:278)
        at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:87)
        ... 15 more
Java Result: 1 


El error esta en el subreporte (detalle) porq cuando omito de hacerlo si genera la cabecera y si le mando solo un juego de datos en vez de una coleccion si lo genera.
No se que otra cosa pueda ser :(

Arcioneo 07-08-2007 11:45:55

Supongo
 
Si, como dices, el problema esta en el campo detail...

Ve que campo tienes ahi y de que tipo es, normalmente los campos en detail(de tipo FIELD) son resultado de un query que itera en ese campo del detail, recuerda que el nombre debe ser el de tu campo en el query que hiciste en el jasper


La franja horaria es GMT +2. Ahora son las 11:59:46.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi