Neu Rechnung: Ausgabe der Zolltarifnummer unterhalb der Bezeichnung einer Position wenn mehrere Bedingungen erfüllt sind

ManuelHudec

Sehr aktives Mitglied
24. Juli 2019
259
51
Großbettlingen
Hallo zusammen.
In der Rechnungsvorlage habe ich in der Positionstabelle innerhalb der Datenzeile "Name" folgende Abfragen stehen:
  1. Hat der dazugehörige Auftrag den VAT Status ReverseCharge oder IGL
  2. Ist im dazugehörigen Artikel das Feld für die TARIC gefüllt, bzw. größer als 0
  3. Falls diese Bedingungen zutreffen, dann zeige in der Datenzeile Name die Artikelbezeichnung sowie Zolltarifnummer: XXXX an
  4. Falls diese Bedingungen nicht zutreffen, dann zeige in der Datenzeile Name nur die Artikelbezeichnung an.
Soweit so gut, dies funktioniert wunderbar. Hintergrund der Abfrage ist, dass wir nicht zwingend immer die Zolltarifnummern der Produkte ausgeben lassen wollen sondern nur explizit, wenn es Sinn macht oder vom Kunden gewünscht wird. Deshalb müssten diese Abfragen um eine weitere Abfrage erweitert werden. Im JTL- Shop habe ich ein eigenes Feld definiert, dass wie folgt aussieht:
Bild_2023-01-17_091445082.png
In der Wawi wurde nach einem Abgleich im Kunden dann entsprechendes Feld angelegt:

Bild_2023-01-17_092436492.png


Sollte der Kunden nun im JTL-Shop "Ja" ausgewählt haben, so sollte dies in der nachstehenden Abfrage ebenfalls noch mit rein. Kann mir jemand dabei behilflich sein?

Code:
InvoicePosition.Name +
COND(Report.ExemptFromVAT = 'ReverseCharge' or Report.ExemptFromVAT = 'IGL',COND(IsNullOrEmpty(JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(InvoicePosition.ProductInternalId))),"","¶Zolltarifnummer: " +JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(InvoicePosition.ProductInternalId))))

An anderer Stelle der Rechnungsvorlage frage ich z.B. ein Eigenes Feld aus der Firma ab:
Code:
Cond(len(JTL_GetCompanyCustomField("WEEE-Nummer", Report.Company.InternalId)) > 0, "· WEEE-Nr.: " + JTL_GetCompanyCustomField("WEEE-Nummer", Report.Company.InternalId), "")
Ich weiß also im Prinzip, wie ich ein eigenen Feldes abfragen müsste, bekomme die Verschachtelung oben aber nicht hin.

Vielen Dank vorab!
 

Anhänge

  • Bild_2023-01-16_110230507.png
    Bild_2023-01-16_110230507.png
    2 KB · Aufrufe: 20
Zuletzt bearbeitet:

ManuelHudec

Sehr aktives Mitglied
24. Juli 2019
259
51
Großbettlingen
Okay, ich habe die Lösung nun selbst gefunden. Falls es noch jemand benötigen kann, folgend die entsprechenden Zeilen und wo man diese einfügen muss:

Bild_2023-01-17_094947466.png

Angebot:
Code:
SalesQuotationPosition.Name +
COND(Report.ExemptFromVAT = 'ReverseCharge' or Report.ExemptFromVAT = 'IGL' or JTL_GetCustomerCustomField("Zolltarifnummern auf Dokumenten",Report.Customer.InternalId) = 'Ja' ,COND(IsNullOrEmpty(JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(SalesQuotationPosition.ProductInternalId))),"","¶Zolltarifnummer: " +JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(SalesQuotationPosition.ProductInternalId))))


Auftrag:
Code:
SalesOrderPosition.Name +
COND(Report.ExemptFromVAT = 'ReverseCharge' or Report.ExemptFromVAT = 'IGL' or JTL_GetCustomerCustomField("Zolltarifnummern auf Dokumenten",Report.Customer.InternalId) = 'Ja' ,COND(IsNullOrEmpty(JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(SalesOrderPosition.ProductInternalId))),"","¶Zolltarifnummer: " +JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(SalesOrderPosition.ProductInternalId))))


Rechnung:
Code:
InvoicePosition.Name +
COND(Report.ExemptFromVAT = 'ReverseCharge' or Report.ExemptFromVAT = 'IGL' or JTL_GetCustomerCustomField("Zolltarifnummern auf Dokumenten",Report.Customer.InternalId) = 'Ja' ,COND(IsNullOrEmpty(JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(InvoicePosition.ProductInternalId))),"","¶Zolltarifnummer: " +JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(InvoicePosition.ProductInternalId))))


In der Positionstabelle wird es dann wie folgt ausgegeben:

Bild_2023-01-17_095218483.png
 
  • Gefällt mir
Reaktionen: schnabeltasse

schnabeltasse

Aktives Mitglied
14. Juni 2020
20
18
Okay, ich habe die Lösung nun selbst gefunden. Falls es noch jemand benötigen kann, folgend die entsprechenden Zeilen und wo man diese einfügen muss:

Den Anhang 93151 betrachten

Angebot:
Code:
SalesQuotationPosition.Name +
COND(Report.ExemptFromVAT = 'ReverseCharge' or Report.ExemptFromVAT = 'IGL' or JTL_GetCustomerCustomField("Zolltarifnummern auf Dokumenten",Report.Customer.InternalId) = 'Ja' ,COND(IsNullOrEmpty(JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(SalesQuotationPosition.ProductInternalId))),"","¶Zolltarifnummer: " +JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(SalesQuotationPosition.ProductInternalId))))


Auftrag:
Code:
SalesOrderPosition.Name +
COND(Report.ExemptFromVAT = 'ReverseCharge' or Report.ExemptFromVAT = 'IGL' or JTL_GetCustomerCustomField("Zolltarifnummern auf Dokumenten",Report.Customer.InternalId) = 'Ja' ,COND(IsNullOrEmpty(JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(SalesOrderPosition.ProductInternalId))),"","¶Zolltarifnummer: " +JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(SalesOrderPosition.ProductInternalId))))


Rechnung:
Code:
InvoicePosition.Name +
COND(Report.ExemptFromVAT = 'ReverseCharge' or Report.ExemptFromVAT = 'IGL' or JTL_GetCustomerCustomField("Zolltarifnummern auf Dokumenten",Report.Customer.InternalId) = 'Ja' ,COND(IsNullOrEmpty(JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(InvoicePosition.ProductInternalId))),"","¶Zolltarifnummer: " +JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(InvoicePosition.ProductInternalId))))


In der Positionstabelle wird es dann wie folgt ausgegeben:

Den Anhang 93154 betrachten
Hallo Manuel,
gut gelöst :)

Für den Export ist zusätzlich zur Warentarifnr. (Zollnr.) auch noch der Präferenzursprung (Herkunftsland) wichtig. Den solltest Du auch noch daneben schreiben.

Bei uns sieht das im Moment so aus wie in der Anlage. Aber noch besser ist es, wenn das Land nur in ISO2 wäre - dann kostet es nicht so viel Platz ...
 

Anhänge

  • Zoll-Nr.+Ursprung.png
    Zoll-Nr.+Ursprung.png
    57,9 KB · Aufrufe: 31
Zuletzt bearbeitet:

ManuelHudec

Sehr aktives Mitglied
24. Juli 2019
259
51
Großbettlingen
Hallo Manuel,
gut gelöst :)

Für den Export ist zusätzlich zur Warentarifnr. (Zollnr.) auch noch der Präferenzursprung (Herkunftsland) wichtig. Den solltest Du auch noch daneben schreiben.

Bei uns sieht das im Moment so aus wie in der Anlage. Aber noch besser ist es, wenn das Land nur in ISO2 wäre - dann kostet es nicht so viel Platz ...
Danke für den Hinweis. Das Herkunftsland habe ich natürlich auch mit eingebaut =)
 

ManuelHudec

Sehr aktives Mitglied
24. Juli 2019
259
51
Großbettlingen
Da ich das Thema in diesem Thread beobachte:
https://forum.jtl-software.de/threa...e-auf-exportdokument-wie.199861/#post-1069762

Wie setzt man es ohne das eigene Feld im Shop um, wenn man die Ausgabe nur bei nicht-EU Ländern ausgeben möchte (also Zollnr. und Herkunftsland in der Rechnung)
@Kaffee4You Dazu wäre erst einmal wichtig zu wissen, welche Wawi Version du nutzt (also deutsche oder englische Variablen in den Druckvorlagen).
Dann kann ich dir das gerne mittels Screenshots und Codezeilen hier posten.

Mit der 1.6 und englischen Variablen:

Code:
InvoicePosition.Name + COND(Report.ExemptFromVAT = 'ReverseCharge' or Report.ExemptFromVAT = 'IGL',COND(IsNullOrEmpty(JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(InvoicePosition.ProductInternalId))),"","¶Zolltarifnummer: " +JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(InvoicePosition.ProductInternalId))+"¶Herkunftsland: " +JTL_DirectQuery("SELECT TOP(1) cHerkunftsland FROM dbo.tArtikel WHERE kArtikel = "+str$(InvoicePosition.ProductInternalId))))

Damit fragst du ab, ob der Auftrag den Status Reverse Charge Verfahren oder Innergemeinschaftliche Lieferung besitzt.
Falls ja, dann wird unterhalb des Positionsnamen die Zolltarifnummer sowie das Herkunftsland hinzugeschrieben.

Deine globale Artikelbezeichnung
Zolltarifnummer: xxxxxxxx
Herkunftsland: xxxxxx


Nun würde das so allerdings auch für die Versandposition gelten, d.h.:

Dein Name der Versandposition
Zolltarifnummer:
Herkunftsland:



Um das zu vermeiden, habe ich innerhalb der Datenzeile die Zeile für Artikelname dupliziert.

In der oberen steht als Variable: InvoicePosition.Name
Diese hat eine Darstellungsbedingung: InvoicePosition.PositionType="ShippingPosition"

Die duplizierte Datenzeile für Artikelname bekommt jetzt die Variablen, die ich oben verlinkt habe und ebenfalls eine Darstellungsbedingung:
NOT (InvoicePosition.PositionType="ShippingPosition")
 
Zuletzt bearbeitet:

Kaffee4You

Aktives Mitglied
18. Juni 2021
52
3
Wir sind seit dem WE auf 1.6.47.1 - daher hänge ich ich mit den englischen Variablen, die auch nicht alle überall wie gewohnt vorhanden sind - sonst hätte ich die alte Version nur "übersetzt"

Ich hätte zur Not eine Datenbankabfrage vermutet (Taric = cTaric, Herkunftsland???), wobei ich bei der Abfrage der Datenbank unsicher bin.
Meine Idee dann, das mit einer Bedingung (also cond(.....)) zu verknüpfen, sodass die Anzeige nur für die europäischen non-EU Länder CH/LI/NO/IS erscheint.

Also in etwa so:

Cond((Report.SalesOrderBillToAddress.CountryISO="LI") or
(Report.SalesOrderBillToAddress.CountryISO="CH") or
(Report.SalesOrderBillToAddress.CountryISO="IS") or
(Report.SalesOrderBillToAddress.CountryISO="NO"),"Zolltarifnummer: " + Platzhalter Taric,"")

und analog für das Ursprungsland.

Platzhalter Taric ist momentan meine Unbekannte.
Sonst noch ein Denkfehler drin?

Danke für die Hilfe und Geduld
 

ManuelHudec

Sehr aktives Mitglied
24. Juli 2019
259
51
Großbettlingen
Wir sind seit dem WE auf 1.6.47.1 - daher hänge ich ich mit den englischen Variablen, die auch nicht alle überall wie gewohnt vorhanden sind - sonst hätte ich die alte Version nur "übersetzt"

Ich hätte zur Not eine Datenbankabfrage vermutet (Taric = cTaric, Herkunftsland???), wobei ich bei der Abfrage der Datenbank unsicher bin.
Meine Idee dann, das mit einer Bedingung (also cond(.....)) zu verknüpfen, sodass die Anzeige nur für die europäischen non-EU Länder CH/LI/NO/IS erscheint.

Also in etwa so:

Cond((Report.SalesOrderBillToAddress.CountryISO="LI") or
(Report.SalesOrderBillToAddress.CountryISO="CH") or
(Report.SalesOrderBillToAddress.CountryISO="IS") or
(Report.SalesOrderBillToAddress.CountryISO="NO"),"Zolltarifnummer: " + Platzhalter Taric,"")

und analog für das Ursprungsland.

Platzhalter Taric ist momentan meine Unbekannte.
Sonst noch ein Denkfehler drin?

Danke für die Hilfe und Geduld
Siehe geänderte Antwort weiter oben ;)

Die Directquery für das Herkunftsland lautet:
JTL_DirectQuery("SELECT TOP(1) cHerkunftsland FROM dbo.tArtikel WHERE kArtikel = "+str$(InvoicePosition.ProductInternalId))
 
Zuletzt bearbeitet:

Kaffee4You

Aktives Mitglied
18. Juni 2021
52
3
Danke für den Tipp, die Anzeige klappt jetzt - allerdings habe ich die Anzeige auch bei steuerpflichtiger DE-Rechnung 😥... da habe ich verschiedenes getestet, aber die cond. greift nicht.
Aber da ich die Vorlage ohnehin nur für den Versand in non-EU nutze, ist das jetzt auch mal schnuppe.... schon genug Zeit in die Formulare gesteckt.

Daher habe ich mich nun für diese Abfrage entschieden (Darstellung immer anzeigen) . Denn ich hatte unter der Position data jeweils eine Zeile eingefügt für die Druck-Kurzbeschreibung, die ich nun statt der Artikelanmerkung und der Stücklistenartikel verwende. Bzw. eine weitere für den Hinweis zum Artikel aus der Bestellung.

Diese Zeilen hab ich nun dupliziert und jeweils für Tariff und Herkunftsland verwendet.

COND(Report.ExemptFromVAT = 'ReverseCharge' or Report.ExemptFromVAT = 'IGL',"",
COND(IsNullOrEmpty(JTL_DirectQuery("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel = "+str$(InvoicePosition.ProductInternalId))),"",
"Zolltarifnummer: " + JTL_DirectQuery("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel = "+str$(InvoicePosition.ProductInternalId))))
COND(Report.ExemptFromVAT = 'ReverseCharge' or Report.ExemptFromVAT = 'IGL',"",
COND(IsNullOrEmpty(JTL_DirectQuery("SELECT TOP(1) cHerkunftsland FROM dbo.tArtikel WHERE kArtikel = "+str$(InvoicePosition.ProductInternalId))),"",
"Herkunftsland: " + JTL_DirectQuery("SELECT TOP(1) cHerkunftsland FROM dbo.tArtikel WHERE kArtikel = "+str$(InvoicePosition.ProductInternalId))))

Daher nochmals Danke für die geduldige Unterstützung...
 

Kaffee4You

Aktives Mitglied
18. Juni 2021
52
3
Wenn ich jetzt noch wüsste, wie ich beim Drucker den linken Seitenrand einstellen kann, sodass ich nicht immer übers Portal ausdrucken muss (was fehleranfällig ist und nicht jeder dort Zugriff hat), wäre die Sache doch fast perfekt.

Schöne Grüße
Birgit
 
Ähnliche Themen
Titel Forum Antworten Datum
Anzahl der Ausdrucke (Rechnung) lässt sich nicht ändern JTL-Wawi 1.10 4
Neu Amazon: Rechnung per Mail abschalten User helfen Usern - Fragen zu JTL-Wawi 0
Darstellung von Stücklistenartikeln in der Rechnung JTL-Wawi 1.9 1
Neu 📢 Neues JTL-Software Plugin "Rechnung Download" by CIN GmbH Plugins für JTL-Shop 15
Neu Amazon schweizer Rechnung ins JTL Amazon-Anbindung - Ideen, Lob und Kritik 0
ZUGFeRD Rechnung xml BuyerOrderReferencedDocument falsch gefüllt JTL-Wawi 1.9 9
Rechnung - Kundenkommentar und Anmerkung nicht änderbar JTL-Wawi 1.9 20
Dokumentvorlage Rechnung JTL-Wawi 1.9 7
Neu TSE Info auf Rechnung drucken Allgemeine Fragen zu JTL-POS 1
Neu Eigenes Feld aus Auftrag in Rechnung ausgeben. Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 5
Mehrere Rechnungskorrekturen auf eine Rechnung JTL-Wawi 1.7 9
Mehrwerts Steuersatz in % auf der Rechnung anzeigen JTL-Wawi 1.9 5
Neu Nachricht an Kunde zu entsprechender Rechnung User helfen Usern - Fragen zu JTL-Wawi 3
Neu Problem mit einer VCS lite-Rechnung Amazon-Anbindung - Fehler und Bugs 3
Neu Gesamtzahl der Aufträge pro Monat für JTL Rechnung Einrichtung und Installation von JTL-eazyAuction 1
Auftragsnummer wird auf Rechnung nicht dargestellt JTL-Wawi 1.9 3
Neu Abos und E-Rechnung, BT-31 (USt.-ID) fehlt, ein how-to User helfen Usern - Fragen zu JTL-Wawi 0
Lieferschein erstellen, Rechnung schreiben als Reminder setzten JTL-Wawi 1.9 4
Rechnung stornieren - Preis ändern geht nicht? JTL-Wawi 1.9 1
Neu BUG: kann die neu erstellte Vorlage für eine Rechnung nicht editieren, WAWI stürzt ab JTL-Wawi - Fehler und Bugs 3
Neu Shoprabatt - kein Rabatt auf der Rechnung vs kein Shoprabatt dafür selber an Rabatt setzen denken User helfen Usern - Fragen zu JTL-Wawi 7
Zahlungsziel "Kunde" auf Rechnung ausgeben JTL-Wawi 1.9 3
Neu Einem Kunden eine Rechnung mit individuellem Betreff per E-Mail zusenden User helfen Usern - Fragen zu JTL-Wawi 2
Neu Nach dem Duplizieren eines alten Auftrags erscheint auf der Rechnung alte Bankverbindung JTL-Wawi - Fehler und Bugs 6
Neu {{ Vorgang.Kunde.EigeneFelderAlsText }} keine Array Ausgabe Rechnungsvorlage Export XML Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 1
Nach Update auf 1.10.10.3 bei Auftragsexport über Ausgabe-->Auftrag-->Exportieren Zugriff auf Pfad C:\programfiles(x86)\JTLSoftware\xxx verweigert JTL-Wawi 1.10 4
Neu If Formel Ausgabe Zeichenkette Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 20
Problem: Falsche Ausgabe von SalesOrderPosition.Quantity bei großen Mengen JTL-Wawi 1.8 2
Neu Dotliquid - Ausgabe der VaterVarKombi-Artikelnummer User helfen Usern - Fragen zu JTL-Wawi 2
Neu Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt User helfen Usern - Fragen zu JTL-Wawi 1
Neu Farbliche Hinterlegung der Aufträge nach Firma differenzierbar machen JTL-Workflows - Ideen, Lob und Kritik 4
Neu Buchstaben in Positionsliste je nach erste Stellen der Artikelnummer Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 1
REST-API Problem in der Doku JTL-Wawi 1.10 0
Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt - Artikel JTL-Wawi 1.10 0
Neu Erklärung Unterordner "Rückstandserinnerung" in der Beschaffung User helfen Usern - Fragen zu JTL-Wawi 1
Neu Anpassung Artikelansicht in der JTL WAWI APP Arbeitsabläufe in JTL-Wawi 0
Neu Der Wert darf nicht NULL sein. Amazon-Lister - Fehler und Bugs 1
Neu Bin ich der einzige, der Amazons VCS benutzt (nicht Lite) und mit der neuen JTL-Version 1.10.10.3 akute Probleme hat? Amazon-Anbindung - Fehler und Bugs 0
Neu Übermittlung der "Tracking ID" bei DHL Warenpost International unterbinden User helfen Usern - Fragen zu JTL-Wawi 0
nachträgliche Änderung der URL Einrichtung JTL-Shop5 4
Neu Workflow der die Versandart für den Export zu Amazon nach dem ausliefern über WMS ändert User helfen Usern - Fragen zu JTL-Wawi 3
Neu Bilderanzeige teilweise nur wenn der Nutzer angemeldet ist. Allgemeine Fragen zu JTL-Shop 1
Keine PDF-Rechnungserzeugung beim VCS-Verfahren der Amazon Buchunsdaten seit Download 1.10.10.3 JTL-Wawi 1.10 4
Neu Lagerbestand nach Alter der Artikel filtern User helfen Usern - Fragen zu JTL-Wawi 1
Neu Artikel aus der Kategorieübersicht zum Warenkorb hinzufügen? Allgemeine Fragen zu JTL-Shop 3
Seit Version 1.10.10.3 folgenden Fehler: Verschieben der Positionen in Angeboten und Aufträgen nicht mehr möglich JTL-Wawi 1.10 11
Neu DPD "Die Abholadresse entspricht keiner der hinterlegten Abholadressen" JTL-ShippingLabels - Fehler und Bugs 0
Gelöst SumUp am POS lässt nur Einstecken der Karte zu Allgemeine Fragen zu JTL-POS 1
Neu Keine Rechnungen für FBA -> Der Auftrag wird extern abgerechnet Amazon-Anbindung - Fehler und Bugs 4
Merkmale mit der Ameise importieren mehr als 10 JTL-Wawi 1.9 1

Ähnliche Themen