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

ManuelHudec

Sehr aktives Mitglied
24. Juli 2019
260
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: 23
Zuletzt bearbeitet:

ManuelHudec

Sehr aktives Mitglied
24. Juli 2019
260
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
26
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: 34
Zuletzt bearbeitet:

ManuelHudec

Sehr aktives Mitglied
24. Juli 2019
260
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
260
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
260
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
Neu Ausgabe - Rechnung speichern - dauert pro Rechnung 20 Sekunden JTL-Wawi - Fehler und Bugs 0
Neu Falsche Währung auf Amazon-Rechnung des Kunden (externer Beleg) JTL-Wawi - Fehler und Bugs 3
Neu Falsche Währung in VCS-Lite Rechnungsvorlage bei anderem Land für Rechnung als Lieferung, HUF statt EUR Amazon-Anbindung - Fehler und Bugs 0
Freiposition auf Rechnung ohne Preise anzeigen JTL-Wawi 1.6 7
Anhänge in JTL-Wawi bei Rechnung JTL-Wawi 1.10 0
Neu bei bestimmten Kunden muss die Rechnung beigelegt werden / wie erfolgt dies? Arbeitsabläufe in JTL-Wawi 8
Neu Auf die Rechnung soll der normale Artikelname stehen, nicht Amazon Name Amazon-Anbindung - Fehler und Bugs 5
Neu Auswahl im JTL Shop - keine Rechnung beilegen - wie in Wawi einlesen ? User helfen Usern - Fragen zu JTL-Wawi 6
X-Rechnung hat Validierungsfehler und wird abgelehnt JTL-Wawi 1.10 0
Neu ++ Positionsliste in Rechnung überschreibt Fußzeile ++ Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 1
Titel auf verschiedenen Plattformen und Artikeltitel auf gedruckter Rechnung oder Lieferschein. JTL-Wawi 1.10 8
Neu PDF-Rechnung an andere Mailadresse schicken als Angebot / Auftrag Arbeitsabläufe in JTL-Wawi 5
Neu X-Rechnung / ZUGFeRD Basispreis (BT-149) korrekt zuordnen User helfen Usern - Fragen zu JTL-Wawi 1
Neue IBAN bei Firma erscheint nicht auf Rechnung JTL-Wawi 1.8 2
X-Rechnung - falsche Rechnungssumme beim Empfänger JTL-Wawi 1.9 2
Neu Lieferdatum E-Rechnung falsch JTL-Wawi - Fehler und Bugs 0
Neu Hilfe bei Anpassung der JTL-Rechnung (v1.9.4.6) – EK pro Stück × Menge als Summe je Position + Privateinlage-Hinweis Dienstleistung, Jobs und Ähnliches 1
Neu Rechnungskorrektur direkt aus „Verkauf → Aufträge → Mit Rechnung“ möglich? Arbeitsabläufe in JTL-Wawi 2
Neu Rechnung- UND ALLE Lieferadressen in Kundenübersicht sichtbar JTL-Wawi - Ideen, Lob und Kritik 11
Neu Wawi und VCS Rechnung unterschiedliche Steuersätze Amazon-Anbindung - Fehler und Bugs 0
Neu Lieferadresse in Rechnung Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
Rechnung Abfrage IstStorniert JTL-Wawi 1.8 2
Neu Auftragsdatum anstatt Versanddatum auf Rechnung Arbeitsabläufe in JTL-Wawi 1
In Diskussion Workflow „Rechnung drucken“ wird nicht automatisch ausgeführt JTL-Workflows - Fehler und Bugs 7
Externe Auftragsnummer in der Rechnung ausweisen JTL-Wawi 1.10 1
Kunde haut mir die E-Rechnung um die Ohren. Länge des BT-131 sollte 2 Nachkommastellen haben JTL-Wawi 1.9 6
Neu Amazon Rechnung ändern bei VCS-Lite - Fehlermeldung beim Stornieren (Auftrag fehlt) Arbeitsabläufe in JTL-Wawi 7
JTL 1.11 aus Downloads und Supportseite verschwunden / ZugFerd Ausgabe geändert? JTL-Wawi 1.11 2
Neu Ausgabe von Artikeldaten außerhalb der "Position Table" - im Auftrag Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
Neu Ausgabe Packliste bei Teillieferung User helfen Usern - Fragen zu JTL-Wawi 0
Ich möchte den Bestand der Verpackungskartons im System verwalten und nachverfolgen JTL-Wawi 1.10 2
Neu JTL Shop Brevo Plugin meldet keine Abmeldungen an JTL Shop + Kontakte landen nicht in der Willkommenssequenz Plugins für JTL-Shop 0
Neu Nova Template 5.6.0 - Sortierung Merkmal in der Navigationsbox Templates für JTL-Shop 1
Verkauf - Fehler beim Laden der Daten JTL-Wawi 1.11 6
Was ist mit der Wawi 1.11.0? JTL-Wawi 1.11 20
Neu DATEV Rechnungsdatenservice 2.0 Fehlermeldung bei der Übertragung Schnittstellen Import / Export 0
Neu JTL Wawi 1.10.14.3 / Unbehandelte Ausnahme im WaWi-Error-Log / Die Sammlung wurde geändert. Der Enumerationsvorgang kann möglicherweise .... JTL-Wawi - Fehler und Bugs 1
Neu JTL Shop Update von 5.3.3 auf 5.6 mit der Community Free Edition - WaWi funktion weiter gegeben? User helfen Usern - Fragen zu JTL-Wawi 1
Otto Variantenanlage ohne Vaterartikel in der Wawi Otto.de - Anbindung (SCX) 0
Neu Bestellvorgang – Land und Postleitzahl werden nicht erkannt und HTTP-Fehler 500 bei der Lieferadresse JTL-Shop - Fehler und Bugs 11
Neu (Bank-)Rückzahlungen aus der Wawi heraus nicht mehr möglich JTL-Wawi - Fehler und Bugs 2
Neu Wieder einmal fehlt der Adresszusatz bei Bestellungen und es kommt somit zu Problemen Amazon-Anbindung - Fehler und Bugs 0
Störung in der Lizenzinfrastruktur Störungsmeldungen 1
Neu Fehler beim Bearbeiten der eMail-Templates JTL-Shop - Fehler und Bugs 2
Neu Verkäufe aus LS-Pos werden nicht mehr in der Wawi angezeigt Fragen rund um LS-POS 2
Neu 404 Error DHL beim erstmaligen Aufruf der Tracking URL JTL-Wawi - Fehler und Bugs 0
Neu Fehlermeldung: Der angegebene Wert für "purchasable_offer" ist ungültig. | Fehlercode(s): (4000001) Amazon-Anbindung - Fehler und Bugs 11
Neu Fehlermeldung beim Überarbeiten der Daten unter Artikel Verkaufsplattform LLister Amazon-Lister - Fehler und Bugs 2
Worker Retouren Fehlermeldung "Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt." JTL-Wawi 1.9 0
Neu Nach Import der Angebote sind alle versandarten auf kostenlosen Standardversand gesetzt worden Amazon-Lister - Ideen, Lob und Kritik 2

Ähnliche Themen