Hallo zusammen
Ich beschäftige mich seit 2 Wochen mit JasperReport und habe ein Fehler, dass ich nicht lösen kann.
Ich habe ein Report TEST.jrxml erstellt und sofort kompiliert. Die Daten für den Report habe ich im Speicher unter Java. Beim Start der Anwendung fülle ich TEST.jasper mit Parametern und übergebe ein JRDataSource_Object.
Raus kommt eine Tabelle mit Daten aus dem JRDataSource_Object.
Zwei Spalten des Reports werden mit Hilfe eines SubReports SUB_TEST.jasper gefüllt.
Beim füllen des TEST.jasper werden alle Felder des Reports aus dem JRDataSource_Object geholt. Hier habe ich ein Feld, dass ein neues JRDataSource_Object für den SubReport hält. Die Daten(HashMap) werden im Konstruktor des JRDataSource_Objects übergeben.
Solange die HashMap Daten für eine Zeile des SubReports hat, läuft alles wie es seien soll. Hat die HashMap aber mehr als eine Zeile, erscheint eine Fehlermeldung:
Ich habe so ein gefühlt, dass hier nur ein Schalter umgestellt werden muss. Aber welcher?
Das Ergebnis soll später ca. so aussehen, wie im Screenshort.
Ich bitte um Hilfe.
Ich beschäftige mich seit 2 Wochen mit JasperReport und habe ein Fehler, dass ich nicht lösen kann.
Ich habe ein Report TEST.jrxml erstellt und sofort kompiliert. Die Daten für den Report habe ich im Speicher unter Java. Beim Start der Anwendung fülle ich TEST.jasper mit Parametern und übergebe ein JRDataSource_Object.
Raus kommt eine Tabelle mit Daten aus dem JRDataSource_Object.
Zwei Spalten des Reports werden mit Hilfe eines SubReports SUB_TEST.jasper gefüllt.
Beim füllen des TEST.jasper werden alle Felder des Reports aus dem JRDataSource_Object geholt. Hier habe ich ein Feld, dass ein neues JRDataSource_Object für den SubReport hält. Die Daten(HashMap) werden im Konstruktor des JRDataSource_Objects übergeben.
Solange die HashMap Daten für eine Zeile des SubReports hat, läuft alles wie es seien soll. Hat die HashMap aber mehr als eine Zeile, erscheint eine Fehlermeldung:
Code:
[08.10.07 14:27:10:153 CEST] 0000002e JRFillSubrepo E net.sf.jasperreports.engine.fill.JRFillSubreport prepare Fill 1142178836: exception
net.sf.jasperreports.engine.JRRuntimeException: Subreport overflowed on a band that does not support overflow.
at net.sf.jasperreports.engine.fill.JRHorizontalFiller.addPage(JRHorizontalFiller.java:1209)
at net.sf.jasperreports.engine.fill.JRHorizontalFiller.fillPageBreak(JRHorizontalFiller.java:1298)
at net.sf.jasperreports.engine.fill.JRHorizontalFiller.fillDetail(JRHorizontalFiller.java:654)
at net.sf.jasperreports.engine.fill.JRHorizontalFiller.fillReportContent(JRHorizontalFiller.java:263)
at net.sf.jasperreports.engine.fill.JRHorizontalFiller.fillReport(JRHorizontalFiller.java:121)
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.JRFillSubreport.fillSubreport(JRFillSubreport.java:526)
at net.sf.jasperreports.engine.fill.JRSubreportRunnable.run(JRSubreportRunnable.java:63)
at net.sf.jasperreports.engine.fill.JRThreadSubreportRunner.run(JRThreadSubreportRunner.java:209)
at java.lang.Thread.run(Thread.java:816)
Ich habe so ein gefühlt, dass hier nur ein Schalter umgestellt werden muss. Aber welcher?
Das Ergebnis soll später ca. so aussehen, wie im Screenshort.
Ich bitte um Hilfe.
Anhänge
Zuletzt bearbeitet: