Neu Rechnungspdf Umbenennen

jojo_np

Mitglied
18. Juni 2024
7
2
Servus JTL Community,

wir haben einen Kunden, der eine Rechnung mit diesem Format möchte:

Unsere Lieferantennummer, Unterstrich, Rechnungsnummer, Unterstrich, Datum ohne Punkte (TTMMJJJJ), Unterstrich, 1000.pdf.
Beispiel: 99672421_RE2024-10011_27122024_1000.pdf
(99672421 = Lieferantennummer - immer gleich, RE2024-10011 = Rechnungsnummer, 27122024 = Rechnungsdatum, 1000 = fest vorgegebene Größe - immer gleich)

Hat jemand eine mögliche Lösung für mich, wie ich den Rechnungsnamen so in der Wawi mit einer Formel verändern kann und auch automatisch weiter laufen lassen kann bei weiteren Bestellungen?
Der Plan ist das über eine eigene Kundengruppe laufen zu lassen, mit diesem Speizielen Namen, jedoch sind bisherige Formeln entweder gar nicht oder falsch ausgegeben worden.

Falls jemand von euch bereits Erfahrung mit einem ähnlichen Problem hat oder eine Formel kennt, die sich für diesen Zweck nutzen lässt, wäre ich für jeden Hinweis sehr dankbar. Besonders hilfreich wäre ein Beispiel für die Umsetzung direkt in der JTL-Wawi.

Vielen Dank schon mal im Voraus für eure Unterstützung!
 

jtldudel

Sehr aktives Mitglied
4. Januar 2018
630
199
Was wurde denn bisher probiert?

Grundsätzlich kannst du ja über die Vorlagenverwaltung eine Formel für den Namen angeben, dort kannst du auch z.b. per if-abfrage z.b. das Schema ändern wenn es dieser Kunde ist (z.b. Abfrage auf die Kundennummer). Wenn der Kunde nun eine eigene Kundengruppe hat bräuchtest du ja nicht einmal das.

Klingt ehrlich gesagt trivial für jemanden der da ein klein wenig Erfahrung hat.
 

jtldudel

Sehr aktives Mitglied
4. Januar 2018
630
199
Mal kurz ausprobiert:

Code:
 {%- if Report.Customer.CustomerNumber == 'K-26586' -%}
{{ Directories.Desktop }}\99672421_{{ Report.InvoiceNumber }}_{{ Report.CreationDate | Datum: 'ddMMyyyy'}}_1000.pdf
{%- else -%}
{{ Directories.Desktop }}\{{ Report.OperationId }}.pdf
{%- endif -%}

Hier würde die Ausgabe für die Kundennummer K-26586 den Dateinamen nach deinem Schema erstellen, für alle anderen im Standard. Also da müsstest du selbst schauen welche Formel bei euch hinterlegt ist.
 

jojo_np

Mitglied
18. Juni 2024
7
2
Mal kurz ausprobiert:

Code:
 {%- if Report.Customer.CustomerNumber == 'K-26586' -%}
{{ Directories.Desktop }}\99672421_{{ Report.InvoiceNumber }}_{{ Report.CreationDate | Datum: 'ddMMyyyy'}}_1000.pdf
{%- else -%}
{{ Directories.Desktop }}\{{ Report.OperationId }}.pdf
{%- endif -%}

Hier würde die Ausgabe für die Kundennummer K-26586 den Dateinamen nach deinem Schema erstellen, für alle anderen im Standard. Also da müsstest du selbst schauen welche Formel bei euch hinterlegt ist.
Ich habe es jetzt bei mir wie folgt abgeändert:

{%- if Report.Customer.CustomerNumber == '26586' -%}
99672421_{{ Report.InvoiceNumber }}_{{ Report.CreationDate | Datum: 'ddMMyyyy'}}_1000
{%- else -%}
{{ Report.InvoiceNumber }}{%- endif -%}.pdf

So funktioniert das wie gewünscht. Vielen Dank dir für deine Hilfe, ich hatte stark Probleme mit dem Datum, da ich dieses nicht ohne Punkte ausgegeben bekommen habe. Auch mit der IF Funktion sowie mit der allgemeinen Syntax hatte ich meine Schwierigkeiten. Durch deine Formel hab ich aber ein wenig dazu lernen können. Vielen Dank!

Rein Interessehalber hätte ich aber noch eine Frage, und zwar ist es möglich auch das RE- also den Anfang der Variable aus der Report.InvoiceNumber zu entfernen?
 

jtldudel

Sehr aktives Mitglied
4. Januar 2018
630
199
Ja grundsätzlich ist das möglich, auch dafür kannst du einen sogenannten Filter verwenden wir es beim Datum zu sehen ist. Da gäbe es verschiedene Möglichkeiten, z.b. gibt es den Filter "RemoveFirst". Du machst also

{{ Report.InvoiceNumber | RemoveFirst: 'RE-' }}

Damit wird das erste Vorkommen von "RE-" aus der variable der Rechnungsnummer bei der Ausgabe entfernt.

Weitere Filter findest du übrigens sowohl wenn du im Editor in der Wawi Rechtsklick auf die Variablen machst, als auch teilweise in der Doku:

https://guide.jtl-software.com/jtl-wawi/vorlagen/standardfilter-in-dotliquid/

Du kannst auch mehrere dieser Filter hintereinander setzen, ausgeführt werden diese dann von links nach rechts wie sie geschrieben werden.

Viel Erfolg :)
 
  • Gefällt mir
Reaktionen: jojo_np

jojo_np

Mitglied
18. Juni 2024
7
2
Ja grundsätzlich ist das möglich, auch dafür kannst du einen sogenannten Filter verwenden wir es beim Datum zu sehen ist. Da gäbe es verschiedene Möglichkeiten, z.b. gibt es den Filter "RemoveFirst". Du machst also

{{ Report.InvoiceNumber | RemoveFirst: 'RE-' }}

Damit wird das erste Vorkommen von "RE-" aus der variable der Rechnungsnummer bei der Ausgabe entfernt.

Weitere Filter findest du übrigens sowohl wenn du im Editor in der Wawi Rechtsklick auf die Variablen machst, als auch teilweise in der Doku:

https://guide.jtl-software.com/jtl-wawi/vorlagen/standardfilter-in-dotliquid/

Du kannst auch mehrere dieser Filter hintereinander setzen, ausgeführt werden diese dann von links nach rechts wie sie geschrieben werden.

Viel Erfolg :)
Alles klar dann vielen lieben dank dir für die Mühe und auch die Tipps mit dem Rechtsklick auf eine Variable. Das werde ich zukünftig gut austesten.
Ebenso hilfreich ist der Link, den du mitgegeben hast. Hab die Seite so entweder nie gefunden oder nicht beachtet, da ich nicht genau wusste, wo ich das zuordnen kann.

Jetzt kann ich gut weiter Experimentieren, Danke sehr und sicherlich hilft es auch zukünftigen Hilfe suchenden weiter. :)