Inaktiv Anrede in Versandemail

hami

Aktives Mitglied
14. November 2019
47
3
Hallo Zusammen!

Ich kriegs einfach nicht auf die Reihe die Formel für meine Anrede in der Versandmail anzupassen, sitz jetzt seit Stunden dran, inkl. Recherche aber kriegs nicht hin. Das Problem ist, dass ich Anfänger in dem Bereich bin und keine Ahnung habe. Ich glaub mittlerweile hab ich es nur mehr kaputt gemacht als in die richtige Richtung zu kommen. Für jemand Erfahrenes ist das bestimmt ne Kleinigkeit. Ich möchte eigentlich bloß, dass wenn Herr oder Frau gegeben ist, dass er Herr bzw. Frau Müller ausgibt. Wenn ein Titel (bspw. Dr.) hinterlegt ist soll "Sehr geehrte(r) Dr." stehen. Dann soll abgefragt werden ob ein Vorname angegeben ist, wenn ja dann soll "Sehr geehrte(r) Max Müller" angezeigt werden. Und wenn kein Vorname angegeben ist, soll es "Sehr geehrte(r) Herr/Frau Müller" heißen.

Wäre super wenn mir da jemand helfen könnte. mein code sieht so aus:

Code:
{% if Vorgang.Lieferschein.Auftrag.Lieferadresse.Anrede != empty -%}
                                                    {% case Vorgang.Lieferschein.Auftrag.Lieferadresse.Anrede -%}
                                                        {% when 'Herr' -%}
                                                            Sehr geehrter Herr\
                                                        {% when 'Frau' -%}
                                                            Sehr geehrte Frau\
                                                        {% else -%}
                                                            Sehr geehrte(r) {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Anrede }}\
                                                    {% endcase -%}
                                                    {% if Vorgang.Lieferschein.Auftrag.Lieferadresse.Titel != empty %} {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Titel }}{% endif %} {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Name }},
                                                {% else -%}
                                                    {% if Vorgang.Lieferschein.Auftrag.Kunde.Adresse.Vorname != empty %} {{ Vorgang.Lieferschein.Auftrag.Kunde.Adresse.Vorname }}{% endif %} {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Name }},
                                                    Sehr geehrte(r) {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Vorname }} {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Name }},
                                                     {% else -%}
                                                     Sehr geehrte(r) Herr/Frau {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Name }},
                                                {% endif -%}<br />


LG hami
 

Jogi1962

Gut bekanntes Mitglied
24. März 2012
255
15
NRW
Hallo hami,

welche WAWI-Version hast du denn?
Da du erst ein paar Tage angemeldet bist, gehe ich von einer aktuellen Version aus. Deine Variablen sind jedoch von einer älteren Version.

In der aktuellen Version der Wawi sind deine gewünschten Abfragen schon vorhanden.
 

hami

Aktives Mitglied
14. November 2019
47
3
Hallo Jürgen,

danke für deine Antwort.

Richtig, habe die Wawi erst seit ner Woche installiert und habe die Version 1.5.10.0.

Hmm okay. Ich hatte mir das aber in meiner aktuellen wawi aus einer neuen Versandbenachrichtungs-Emailvorlage genommen und nur ein wenig verändert. In einer neuen Vorlage bei mir sieht der original "Bodytext" so aus:

Code:
{% if Vorgang.Lieferschein.Auftrag.Lieferadresse.Anrede != empty -%}
                                                    {% case Vorgang.Lieferschein.Auftrag.Lieferadresse.Anrede -%}
                                                        {% when 'Herr' -%}
                                                            Sehr geehrter Herr\
                                                        {% when 'Frau' -%}
                                                            Sehr geehrte Frau\
                                                        {% else -%}
                                                            Sehr geehrte(r) {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Anrede }}\
                                                    {% endcase -%}
                                                    {% if Vorgang.Lieferschein.Auftrag.Lieferadresse.Titel != empty %} {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Titel }}{% endif %} {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Name }},
                                                {% else -%}
                                                    Sehr geehrte Damen und Herren,
                                                {% endif -%}<br />
                                                Ihre Lieferung wurde an den Versand übergeben.

Ist fast ähnlich wie meins. Ich habe lediglich aus dem "Sehr geehrte Damen und Herren," ein "Sehr geehrte(r) Herr/Frau {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Name }}," gemacht. Das "Sehr geehrte(r) Herr/Frau {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Name }}," sollte aber bloß die aller letzte Lösung sein, falls keine Anrede, kein Titel und kein Vorname verfügbar ist. Ich wollte also eigentlich bloß noch die Abfrage nach dem Vornamen rein setzen, dass wenn Vornamen vorhanden, "Sehr geehrte(r) Max Müller" ausgegeben wird.

Hab's mittlerweile dann auch irgendwie hingekriegt. Sieht jetzt so aus und funktioniert:

Code:
{% if Vorgang.Lieferschein.Auftrag.Kunde.Anrede != empty -%}
                                                    {% case Vorgang.Lieferschein.Auftrag.Kunde.Anrede -%}
                                                        {% when 'Herr' -%}
                                                            Sehr geehrter Herr\
                                                        {% when 'Frau' -%}
                                                            Sehr geehrte Frau\
                                                        {% else -%}
                                                            Sehr geehrte(r) {{ Vorgang.Lieferschein.Auftrag.Kunde.Anrede }}\
                                                    {% endcase -%}
                                                    {% if Vorgang.Lieferschein.Auftrag.Kunde.Titel != empty %} {{ Vorgang.Lieferschein.Auftrag.Kunde.Titel }}{% endif %} {{ Vorgang.Lieferschein.Auftrag.Kunde.Name }},
                                                {% else -%}
                                                    {% if Vorgang.Lieferschein.Auftrag.Kunde.Vorname != empty %}Sehr geehrte(r) {{ Vorgang.Lieferschein.Auftrag.Kunde.Vorname }} {{ Vorgang.Lieferschein.Auftrag.Kunde.Name }},
                                                    {% else -%}
                                                    Sehr geehrte(r) Herr/Frau {{ Vorgang.Lieferschein.Auftrag.Kunde.Name }},{% endif %}
                                                {% endif -%}<br />

Wie man sieht, kein riesiger Unterschied, trotzdem hat`s mich viel Nerven gekostet. :D Eigentlich ging es bloß um die Zeile {% if Vorgang.Lieferschein.Auftrag.Kunde.Vorname != empty %}Sehr geehrte(r) {{ Vorgang.Lieferschein.Auftrag.Kunde.Vorname }} {{ Vorgang.Lieferschein.Auftrag.Kunde.Name }},{% else -%} die ich noch dazwischen setzen musste und die die ganze Zeit irgendwie nicht so wollte. Aber wenn man keine Ahnung davon hat, ist das schon fast ne unlösbare Aufgabe.
Habe zudem noch die Abfragen nach Kundenadresse und nicht nach Lieferadresse geändert.

Naja, jetzt klappt das auf jeden Fall schon mal. Jetzt muss ich's nur noch hinkriegen in meine Rechnungsemail die externe Auftragsnummer von Amazon rein zu kriegen. In der Rechnung selbst geht's ja damit
Code:
JTL_DirectQuery("SELECT TOP(1) cInetBestellNr FROM dbo.tBestellung WHERE tRechnung_kRechnung ="+str$(Report.InternalId))
Aber in der Email dazu klappt das nicht. Hast du da vielleicht grade ein Tipp für mich?
 

Jogi1962

Gut bekanntes Mitglied
24. März 2012
255
15
NRW
Hallo hami,

sorry, war mein Fehler. Habe anstatt in der Versandmail bei Lieferscheine Mail nachgesehen. War wohl schon zu spät.
Ich werde mir das nochmal ansehen.
 

Jogi1962

Gut bekanntes Mitglied
24. März 2012
255
15
NRW
Hallo hami,
du hättest in der original Vorlage nur in Zeile 34 die fett angezeigte Abfrage einfügen müssen:

{% if Vorgang.Lieferschein.Auftrag.Lieferadresse.Titel != empty %} {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Titel }}{% endif %}{% if Vorgang.Lieferschein.Auftrag.Lieferadresse.Vorname != empty %} {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Vorname }}{% endif %} {{ Vorgang.Lieferschein.Auftrag.Lieferadresse.Name }}

Der Unterschied zwischen deinem Code und dem originalem ist das kleine Wörtchen "Lieferadresse". Wenn ich das richtig sehe, greifst du auf die Kundendaten zu und nicht auf die Lieferadresse.
Ausserdem hast du deine if-Abfrage nicht abgeschlossen, oder besser gesagt an verkehrter Stelle.

In der Email müsste das die Variable "Vorgang - Auftrag - Externe Auftragsnummer" sein.
 

hami

Aktives Mitglied
14. November 2019
47
3
sorry, war mein Fehler. Habe anstatt in der Versandmail bei Lieferscheine Mail nachgesehen. War wohl schon zu spät.
Gar kein Problem, bei den ganzen Vorlagen da kann man das auch leicht verwechseln.


Ja richtig, ich nehme die Kundendaten und nicht die Lieferdaten, da der Kunde von mir die Nachricht bekommt und nicht der Empfänger.

Ja mit den if Abfrage bin ich gar nicht klar gekommen, habe das die ganze Zeit falsch platziert. Es könnte so einfach sein, wenn man sich damit auskennt. :D

In der Email müsste das die Variable "Vorgang - Auftrag - Externe Auftragsnummer" sein.

Das habe ich auch schon versucht, geht aber auch nicht, dich ich die englische Variante habe und ich da nichts mit extern etc. finden kann
 

hami

Aktives Mitglied
14. November 2019
47
3
Kann mir vielleicht noch einer sagen wie ich die letzten deutschen befehle ins englische bringe??

{% if Vorgang.Auftrag.AbweichendeAdressen == true or NurAbweichendeLieferadresse == false -%}
<h3>Lieferung an:</h3>
{% if Report.InvoiceShipToAddress.Company != empty %}{{ Report.InvoiceShipToAddress.Company }}<br />{% endif %}
{% if Report.InvoiceShipToAddress.CompanySupplement != empty %}{{ Report.InvoiceShipToAddress.CompanySupplement }}<br />{% endif %}
{% if Report.InvoiceShipToAddress.Salutation != empty %}{{ Report.InvoiceShipToAddress.AddressSupplement }} {% endif %}{% if Report.InvoiceShipToAddress.Titel != empty %}{{ Report.InvoiceShipToAddress.Titel }}{% else %}{{ Report.InvoiceShipToAddress.FirstName }}{% endif %} {%if Report.InvoiceShipToAddress.LastName != empty %}{{ Report.InvoiceShipToAddress.Name }}{% endif %}<br />
{% if Report.InvoiceShipToAddress.AddressSupplement != empty %}{{ Report.InvoiceShipToAddress.AddressSupplement }}<br />{% endif %}
{{ Report.InvoiceShipToAddress.Address }}<br />
{{ Report.InvoiceShipToAddress.PostalCode }} {{ Report.InvoiceShipToAddress.City }}<br />
{% if Report.InvoiceShipToAddress.Country != empty %}{{ Report.InvoiceShipToAddress.Country }}<br />{% endif %}
{% endif -%}
{% if Vorgang.Auftrag.VoraussichtlichesLieferdatum != null -%}
<br />
Voraussichtliche Lieferung: {{Vorgang.Auftrag.VoraussichtlichesLieferdatum | Datum: 'd' }}<br />
{% endif -%}
{% if Vorgang.Auftrag.VersandartText != empty -%}
{{ Vorgang.Auftrag.VersandartText }}<br />
{% endif -%}

Hab mir das aus der Versandmail raus kopiert und schon teilweise ins englische geändert, weils in der Rechnungsemail in englisch gebraucht wird. Ist doch echt nervig dieser Wechsel der Sprache und Befehle ständig!
 

Ähnliche Themen