| Auszug | ||
|---|---|---|
| ||
Jaspersoft Designer Datenquelle: Dataset and Query, SQL, Parameter $P{Intid}, JOIN, Felder, BigDecimal, Übertrag nach Nuclos. |
Sprache: Deutsch · English
SQL-Datenquelle direkt im Jaspersoft-Designer bauen – mit Parameter und sofort verfügbaren Feldern.
| Status | ||||
|---|---|---|---|---|
|
| Status | ||||
|---|---|---|---|---|
|
| Status | ||||
|---|---|---|---|---|
|
| Status | ||||
|---|---|---|---|---|
|
| Panel | ||
|---|---|---|
| ||
Auf dieser Seite |
...
|
...
|
Nach dem Einrichten der Datenbankverbindung kannst du die Datenquelle direkt im Designer erstellen. Vorteil: Die Attribute einer Abfrage stehen anschließend sofort als Felder im Formular zur Verfügung
...
. Diese Datenquelle muss später in den Nuclos-Datenquelleneditor übertragen werden.
...
Dataset and Query
...
-Dialog öffnen.
Dataset and Query Editor.
...
Nachfolgend werden kurz die Bereiche beschrieben, die für die Erstellung der Datenquelle getestet wurden.
...
Abfragesprache des DBMS wählen (hier SQL). Abfragen lassen sich laden/speichern (.sql/.txt), im Editor entwickeln und über einen Query-Designer zusammenklicken. Bei korrekter Syntax wird die Ergebnismenge angezeigt.
Query-Editor mit Ergebnis.
Zum Filtern einen Parameter erstellen (New Parameter), z.B. Intid vom Typ Integer. Ein Vorgabewert (eine echte INTID aus der DB) erleichtert das Testen. Jede Tabelle besitzt eine Spalte intid.
Parameter anlegen.
Im SELECT die gewünschten Spalten auflisten, referenzierte Tabellen per JOIN in der FROM-Klausel einbinden und in WHERE über den Parameter filtern ($P{Intid}).
...
Um nach einem bestimmten Datensatz zu filtern wird ein Parameter benötigt, der in der Where-Bedingung dafür sorgt, dass die Abfrage eingeschränkt wird. Je nach Anforderung können verschiedenste Parameter erstellt werden(Integer, Date, String,...)
In der Abfrage sind unterhalb des SELECT-Statement alle gewünschten Spalten der Tabelle Auftrag, Land und Postleitzahlen aufgelistet.
Die Tabelle Auftrag besitzt Verbindungen(Referenzen) zu anderen Tabellen, welche in der FROM-Bedingung referenziert(Join) werden. Dabei werden auch nur die Datensätze herangezogen die der intid entsprechen(intid_strland,....)
Die WHERE-Bedingung ermittelt mit Hilfe des erstellten Parameters ($P{Intid}) den richtigen Auftrag.
SQL-Statements können beliebig groß und umfangreich werden.
...
| language | sql |
|---|---|
| title | Beispiel Auftrag |
| exportImage | true |
| collapse | true |
| Codeblock | ||
|---|---|---|
|
SELECT
a."intid" ,
a."strnummer",
a."dblvkbrutto",
a."dblvknetto",
a."dbleknetto",
a."dblmwst",
a."dblrabattnetto",
a."strrname",
a."strrpostfach",
a."strrstrassezusatz",
a."strrnamezusatz",
a."strrfirma",
a."strrstrasse" ,
l."strname" strland,
po."strort",
po."strplz"
FROM
nuclos.t_eo_auftrag a
left outer join nuclos.t_eo_land l on l.intid = a.intid_strrland
left outer join nuclos.t_eo_postleitzahlen po on po.intid = a.intid_strrplzort
WHERE
a.intid = $P{Intid} //z.B. 40006408 |
...
...
Alle Attribute aus dem SELECT-Statement werden automatisch mit ihren Namen bzw. Aliasnamen angelegt.
...
| Tipp | ||
|---|---|---|
| ||
Attribut-Präfixe verraten den Datentyp: |
|
...
Boolean. Numerische SQL-Typen wandelt der Designer in |