Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Um Subreports in einer tieferen Hierarchie zu verwenden, müssen Sie die tiefer liegenden Subreports über die Subreport-Parameter vom Hauptreport zum entsprechenden Subreport durch reichen. (siehe Abbildung unten)

 


Datenquellen für Subreports

...

((org.nuclos.server.report.api.JRNuclosDataSource)$P{REPORT_DATA_SOURCE}).getDataSource("<Datenquelle>") an, wobei <Datenquelle> der Name der Datenquelle ist (siehe Abbildung oben). Bei der Verwendung von Datenquellen für Subreports ist zu beachten, dass der Subreport im Detailbereich des übergeordneten Reports platziert werden muss, da nur so die Verbindungs- und Kontextinformationen an den Subreport erfolgreich übergeben werden können. Wenn Sie für die angegebene Datenquelle in Nuclos Datenquellen-Parameter definiert haben, so wird versucht, diese anhand der Felder des aktuell verarbeiteten Hauptdatensatzes zu füllen. Dies ist in identischer Weise für tiefer geschachtelte Subreports möglich.

Beispiel 1:

Sie haben eine Datenquelle Kunden definiert mit den Ausgabeattributen intid und kundenname. Sie erstellen eine zweite Datenquelle, über die Sie einen Subreport befüllen möchten. Legen Sie einen Parameter intid an und geben Sie den Parameter in der Bedingung des referenzierenden Attributs in dem untergeordneten Businessobjekt (z.B. Ansprechpartner) an. Bei Unterformularen handelt es sich beispielsweise in der Regeln um das Feld INTID_T_UD_GENERICOBJECT. Bei der Reportausführung wird die Datenquelle für jeden Hauptdatensatz (bzw. übergeordneten Datensatz) erneut ausgeführt und die Parameter des Sub-Datenquelle mit den Werten des übergeordneten Datensatzes gefüllt.

Falls Sie Datenquellen für Subreports verwenden und weiterhin die Subreports in iReport auch zu Testzwecken kompilieren wollen, müssen Sie die Datei nuclos-reportapi.jar, die Teil der Distribution ist, zum iReport-Klassenpfad hinzufügen.

 

 

Beispiel 2:

Im folgenden Beispiel wird gezeigt, wie man einem Subreport ein eigene Datenquelle zuweist und dieser einen Parameter aus dem Hauptreport übergibt:

Image Added

  • Füge die Druckprofile des Hauptreports und Subreports in Nuclos hinzu.

  • Der hier angegebene Parametername wird in der Reportvorlage des Hauptreports verwendet, um die beiden Reports zu verknüpfen.

Image Added

  • Die Parameter 1date und 2standort werden an die Hauptdatenquelle übergeben.

Image Added

  • Zusätzlich zu 1date und 2standor, wird strpersonalnr an die Subdatenquelle übergeben.

Image Added

  • Im Hauptreport in der Parameters - Liste einen Eintrag hinzufügen, dieser hat die gleiche Bezeichnung wie der Subreport-Parametername im Druckprofil (SUB_ZEIT).
  • Anschließend in einem Detail einen Subreport anlegen und dem Bild (rechte Seite) entsprechend konfigurieren.

Image Added

  • Um einen Parameter vom Hauptreport zum Subreport zu übergeben, muss die zuvor erwähnte Konfiguration noch ergänzt werden.
  • Bitte beachten Sie, dass der zu übergebende Parameter zuvor im Hauptreport unter Parameters angelegt sein muss.