Wenn du in deiner Rechnungsdruckvorlage (z. B. „Rechnung.jrxml“ oder JTL-Formular) die Bon-Nummer aus der Zahlungenstabelle anzeigen möchtest, kannst du das direkt über eine SQL-Abfrage mit JTL_DirectQuery lösen.


Beispiel

"Bon-Nr.: " + 
JTL_DirectQuery(
    "SELECT TOP 1 cExternalTransactionID 
     FROM dbo.tZahlung 
     WHERE kRechnung = " + FStr$(Report.InternalId, "?&##")
)

Erklärung der Bestandteile

  • JTL_DirectQuery() führt eine SQL-Abfrage direkt im Formular aus.

  • cExternalTransactionID enthält die Transaktionsnummer (z. B. vom Payment-Provider oder Kassensystem).

  • kRechnung ist der Schlüssel der aktuellen Rechnung.

  • FStr$(Report.InternalId,"?&##") formatiert die interne Rechnungs-ID korrekt als Zahl, damit sie in der Abfrage verwendet werden kann.

  • TOP 1 stellt sicher, dass bei mehreren Zahlungen nur eine (erste) Transaktion ausgegeben wird.


Tipp

Wenn du mehrere Zahlungen pro Rechnung hast und sie als Liste ausgeben möchtest, kannst du mehrere Werte zusammenfassen:

"Bon-Nr.: " +
JTL_DirectTableQuery(
    "SELECT cExternalTransactionID 
     FROM dbo.tZahlung 
     WHERE kRechnung = " + FStr$(Report.InternalId, "?&##"),
    " / ",
    ""
)

→ Gibt alle zugehörigen Bon-Nummern (z. B. bei Teilzahlungen) getrennt durch „/“ aus.


Damit lässt sich die Bon-Nummer oder Transaktions-ID direkt im Rechnungsformular anzeigen – ideal für POS- oder Online-Zahlungen, die eine eindeutige Referenznummer benötigen.

Hinweis zur Nutzung von Code-Beispielen

Die auf dieser Website bereitgestellten Code-Beispiele und Skripte dienen ausschließlich zu Demonstrations- und Lernzwecken. Die Nutzung in produktiven Umgebungen erfolgt auf eigene Verantwortung. Wir übernehmen keine Haftung für Schäden oder Datenverluste, die durch unsachgemäße Anwendung entstehen.