Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.
Auszug
hiddentrue

Jaspersoft Subreport im Designer: Detail-Band, Datenquelle, Intid, .jasper, Subreport-Wizard, Use an existing report.

globe with meridians Sprache: Deutsch · English

graduation cap Subreport im Designer

Schritt-für-Schritt: Subreport in Jaspersoft Studio bauen, testen und in den Hauptreport einbetten.

Status
colourBlue
titleTutorial
Status
colourBlue
titleAnwendungsentwickler
Status
colourGreen
titleStand: Jul 2026
Status
colourGrey
titlegilt fuer Nuclos 4.2026.x

Panel
bgColor#F4F5F7

Auf dieser Seite

Inhalt
maxLevel2
minLevel2

Subreport im Designer erstellen

Subreports

...

eignen sich für

...

tabellarische Daten oder Listen und können eine eigene Datenquelle nutzen. Hier bauen wir einen Subreport und testen ihn zusammen mit dem Hauptreport im Designer

...

(Beispiel: Auftrag mit Auftragspositionen).

1. Formular erstellen

...

Analog zum Hauptreport. Für

...

den Subreport:

  • Alle Bänder außer Column Header und einem Detail

...

  • -Band entfernen.

...

Da der Subreport in das Auftragsbeispiel-Formular eingebettet wird, ist die Breite eines Detail-Band für den Subreport relevant. In diesem Fall sind es 525px.

  • Breite des Detail-Bands an den Einbettungsort anpassen (im Beispiel 525 px).
  • Alle Ränder entfernen, damit

...

  • sich der Subreport nahtlos

...

  • einfügt

...

  • .
Image Modified

Subreport-Formular im Designer.

2. Datenquelle erstellen

...

Gleiche Datenbankverbindung wie der Hauptreport

...

Codeblock
select
    ap.dblvknetto,
    ap.dblvknettogesamt,
    ap.intpos,
    ap.dblmenge,
    ei.strname "streinheit",
    ar.strname
from
    nuclos.t_eo_auftragsposition ap
    left outer join nuclos.t_eo_einheit ei on ei.intid = ap.intid_streinheit,    
    nuclos.t_eo_artikel ar
where
    ap.intid_strauftrag =$P{Intid}
    and ar.intid = ap.intid_strartikel
order by ap.intpos asc

; Vorgehen analog zu Datenquelle im Designer.

Codeblock
languagesql
Hauptreport
Warnung
titleWichtig

Es muss derselbe Parameter Intid existieren – am besten aus dem Hauptreport importieren.

3. Felder einfügen & .jasper erzeugen

  • Felder per Drag&Drop in das Detail-Band ziehen (erzeugt automatisch Static-Text im Column-Band).
  • Zahlenfelder formatieren, z.​B. #,##0.00.
  • Preview ausführen – bei Erfolg legt der Designer eine <Name>.jasper an.
Image Added

Felder im Subreport.

4. Subreport im Hauptreport einbauen

Im Hauptformular über die Palette die Komponente Subreport wählen, im Wizard Use an existing report und die erzeugte .jasper laden. Danach die Datenquelle wählen und den Subreport platzieren.

Image Added

Subreport-Wizard im Hauptreport.

Info
titleZugehörigkeit

Wichtig: Es muss der selbe Parameter Intid erstellt werden. Am besten er wird aus dem Hauptreport importiert.

Felder einfügen und .jasper erzeugen

  1. Mit Drag & Drop können die Felder in den Detail-Band eingefügt werden, dabei wird gleichzeitig ein Static-Text Feld im Culumn-Band angelegt.
  2. Die Zahlenfelder werden für die Ausgabe formatiert #,##0.00 1000er Separation durch ein Punkt und Komma mit zwei Dezimalstellen
  3. Für die Positionierung der Feldinhalte stehen 9 Möglichkeiten zur Verfügung. Weitere Formatierungsmöglichkeiten pro Feld stehen z.B. mit einem Rechts-Klick auf das Feld unter "Padding and Borders" zur Verfügung.

Blau umrandet: Soll die Menge mit ihrer Einheit ausgegeben werden, ist hier eine Möglichkeit abgebildet dies zu tun. Die Expression Class des Feldes ist String.

Image Removed

Ist die Datenquelle korrekt erstellt und sind die Felder auf dem Formular eingefügt, kann über den Preview-Button ein Test durchgeführt werden. Dabei wird die selbe Intid übergeben, wie sie für den Hauptreport verwendet wird. Wenn die Preview fehlerfrei ausgeführt wurde, legt iReport eine Auftragsposition.jasper an.

Subreport im Hauptreport einbauen

Ist über das Ausführen der Preview die Datei Auftragsposition.jasper erstellt worden, kann in das Hauptformular im Designer gewechselt werden.

  1. Über die Palette wird die Komponente Subreport gewählt.
  2. Es öffnet sich der Subreport-Wizard. Dort muss "Use an existing report" gewählt werden und der
  3. entsprechende Report in unserem Fall Auftragspositionen.jasper geladen werden.

Image Removed

Im nächsten Schritt kann die Datenquelle gewählt werden mit der der Subreport verbunden ist. In unserem Fall ist es die Selbe.

Image Removed

Nun kann der Subreport im Formular platziert werden. Generell kann ein Subreport an jede Stelle des Dokumentes eingebunden werden, jedoch muss darauf geachtet werden das nicht jedes Band automatisch mit dem Subreport expandiert(column-Footer, Lastpage-Footer....).

...

Der Parameter Intid existiert in beiden Formularen und

...

stellt die Zugehörigkeit der

...

Subreport-Daten zum Hauptdatensatz sicher. Achte darauf, dass nicht jedes Band automatisch mit dem Subreport expandiert.

Verwandte Seiten

clipboard Subreports


Grundlagen.

Öffnen →

printer Datenquelle erstellen im iReport-Designer


Datenquelle.

Öffnen →

des Subreports zum Hauptreport.

In diesem Fall die Daten der Auftragspositionen zum Auftrag.

Image Removed

Mit der Erstellung eines Parameters wird Pfad und Name unseres Subreports festgelegt.

Image Removed