Neuer Speicherort
Wenn alle Tests erfolgreich abgeschlossen sind und das Design des Reports vollendet ist, kann das Formular oder der Report ins Nuclos übernommen werden. Da sich die Formulare unterscheiden werden, sollte ein neuer Speicherort gewählt werden. Dafür wechselt man einfach in den Ordner in dem der Jasper-Ordner enthalten ist.
Parameter, Subreport und SQL-Statement entfernen
Alles was für den Test und der Erstellung innerhalb des Designers benötigt wurde, muss jetzt wieder entfernt werden. Zuvor sollte aber die Datenquelle in Nuclos übertragen übertragen worden sein.
Anhand des Auftragbeispiels entfernen wir folgendes:
- alle bis dahin selbst erstellten Parameter
- alle Subreports
- den Inhalt des Properties Query Text
Die selbe Prozedur wird auf das Formular des Subreport angewendet. Hier Auftragspositionen.jrxml
Subreport Nuclos konform erstellen
Im ersten Schritt wird ein Parameter für den Subreport erstellt. Dies geschieht über den Reportinspector / Parameter, rechte Maustaste "Hinzufügen von Parameter". Dort wird ein Namen und ein Datentyp vergeben. Leider kann der Typ net.sf.jasperreports.engine.JasperReport hier nicht ausgewählt werden und muss eingetragen werden. Damit wäre der Parameter für den Subreport erstellt.
Im zweiten Schritt wird über die Pallette Subreport ausgewählt, womit sich der Subreport-Wizard öffnet.
Hier wird Just create the subreport element gewählt und mit "Beenden" der Wizard geschlossen. Die Komponente kann jetzt wieder auf dem Formular eingepasst werden.
Im dritten Schritt werden die Eigenschaften eingetragen die für den Subreport notwendig sind.
- Subreport Expression: <Parameter für den Subreport> (Hier:$P{Sub_Auftragspositionen})
- Expression Class: net.sf.jasperreports.engine.JasperReport
- Connection type: Use a datasource expression
- Datasource Expression:
((org.nuclos.server.report.api.JRNuclosDataSource)$P{REPORT_DATA_SOURCE}).getDataSource("Nuclos Datenquelle des Subreports")