Neu Tracking URL in Rechnungs-eMail

Dull

Gut bekanntes Mitglied
14. Juli 2014
125
12
Passau
Hallo zusammen,

ich habe gestern nach einer Möglichkeit gesucht, den Tracking-Link bzw. die Tracking-ID in der Rechnungs-Mail zu versenden. Dabei haben mir dieser Thread sowie ein anderer (https://forum.jtl-software.de/threads/trackingurl-in-vorlage-mail-rechnung.129854/) weitergeholfen.

Sollte aktuell (2024 / Wawi-Version 1.8.10.0) noch jemand danach suchen, so habe ich es gemacht:

Einfügen zwischen Abschnitt für Zahlung und Abschnitt für Anmerkungen:
HTML:
    <!-- BEGIN LIEFERUNGEN (Anpassung vom 12.03.2024) // -->
    <td valign="top" class="bodyContent">
    {% capture trackingidsql %} SELECT TOP(1) tVersand.cIdentCode FROM dbo.tBestellung JOIN dbo.tLieferschein ON tLieferschein.kBestellung = tBestellung.kBestellung JOIN dbo.tVersand ON tVersand.kLieferschein = tLieferschein.kLieferschein WHERE tRechnung_kRechnung = '{{ Vorgang.InterneRechnungsnummer }}'{% endcapture -%}
    {% assign trackingid = trackingidsql | DirectQueryScalar -%}
                                           
    {% capture trackingurlsql %} SELECT TOP(1) REPLACE(tversandart.cTrackingUrlTemplate,'#IdentCode#',tVersand.cIdentCode) FROM dbo.tBestellung JOIN dbo.tLieferschein ON tLieferschein.kBestellung = tBestellung.kBestellung JOIN dbo.tVersand ON tVersand.kLieferschein = tLieferschein.kLieferschein JOIN dbo.tversandart ON tversandart.kVersandArt = tVersand.kVersandArt WHERE tRechnung_kRechnung = '{{ Vorgang.InterneRechnungsnummer }}'{% endcapture -%}
    {% assign trackingurl = trackingurlsql | DirectQueryScalar -%}
                                               
    {% if {{trackingid} > 0 -%}
    <h3>Lieferung</h3>
    <p>
        Tracking-ID: {{ trackingid }}
    </p>
    <p>                                                  
        Ihr Link zur Sendungsverfolgung:</br>
        <a href="{{ trackingurl }}">{{ trackingurl }}</a>
    </p>
    {% else -%}
    {% endif -%}                                                                                      
    </td>      
    <!-- END LIEFERUNGEN // -->
</tr>
<tr>

Code ist etwas mit heißer Nadel gestrickt, evtl. kann man die if-Abfrage noch verbessern. Aber funktioniert.

Sieht dann in der Mail so aus:
Den Anhang 107380 betrachten

Ich lasse es hier (auch, wenn der Thread von 2023 ist), evtl. hilft es jemandem weiter.


In der 1.9.6.5 scheint der Code nicht mehr zu funktionieren.
Die {{ trackingid }} scheint immer leer zu sein. Hat sich an der DB was verändert? :D
 

Dull

Gut bekanntes Mitglied
14. Juli 2014
125
12
Passau
In der 1.9.6.5 scheint der Code nicht mehr zu funktionieren.
Die {{ trackingid }} scheint immer leer zu sein. Hat sich an der DB was verändert? :D
Für alle, die den Code ab der Version 1.9.6.x benötigen. Einfach zwischen ZAHLUNGEN und ANMERKUNG im HTML-Format einfügen.

Das ganze ist jetzt ein bisschen unschön auf die DPD URL ausgelegt und zeigt immer alle Paket eines Auftrags an, die schon versendet wurden. D. h. vorsicht bei Rechnungserstellung nach Teillieferung.

Code:
<!-- BEGIN LIEFERUNGEN TRACKING  // -->
<tr>
    <td valign="top" class="bodyContent">

        {% capture trackingidsql %}
            SELECT
            cIdentCode
            FROM dbo.tVersand
            WHERE cReference = '{{ Report.SalesOrderNumbers }}'
        {% endcapture %}
        {% assign trackingid = trackingidsql | DirectQuery %}
        {% capture paketanzahl %}
            SELECT
            count(cIdentCode)
            FROM dbo.tVersand
            WHERE cReference = '{{ Report.SalesOrderNumbers }}'
        {% endcapture %}
        {% assign paketanz = paketanzahl | DirectQueryScalar %}

        Anzahl der Pakete in dieser Lieferung ({{paketanz}} Stück): <br>
        {% for paket in trackingid.Daten %}
        <a href="https://tracking.dpd.de/parcelstatus?query={{paket.cIdentCode}} ">{{paket.cIdentCode}} </a><br>
        {% endfor -%}

    </td>     
</tr>
<!-- END LIEFERUNGEN TRACKING // -->
 
Ähnliche Themen

Ähnliche Themen