In Bearbeitung [WAWI-33933] Stücklisten/ Komponenten in neuer Rechnungsvorlage

  • Temporäre Senkung der Mehrwertsteuer Hier findet ihr gesammelt alle Informationen, Videos und Fragen inkl. Antworten: https://forum.jtl-software.de/threads/mehrwertsteuer-senkung-vom-01-07-31-12-2020-offizieller-diskussionthread-video.129542/

TimW

Mitglied
16. Januar 2019
29
9
Hallo an Alle,

ich habe mir eine Vorlage gebastelt, die Stücklisten mit andruckt. Bisher nur als Angebot, aber die Vorgehensweise ist überal gleich. Ich möchte euch mal zeigen wie ich das geschafft habe:
1581000386401.png

Ich habe unter der Beschreibung des Artikels zwei neue Datenzeilen eingefügt:

1580988683926.png

Die erste Zeile ist für die Überschrift "Poisition besteht aus folgenden Komponenten:".
Die zweite Zeile beinhaltet die Auflistung der Komponenten.

Anzeige Bedingung:
Beide Zeilen werden nur angezeigt, wenn folgende Bedingung wahr ist:
Code:
SalesQuotationPosition.BillOfMaterialsPosition <> "None" and JTL_GetProductCustomField("StkLst nicht andrucken", SalesQuotationPosition.ProductInternalId) <> "1"
Der erste Teil sorgt dafür, dass die Zeile nur dann angezeigt werden, wenn es sich um einen Stücklistenartikel handelt.
Der zweite Teil überprüft eine Combobox mit den Namen "StkLst nicht andrucken" in den eigenen Feldern des Artikels. Ist dieses gesetzt, wird die Stückliste nicht ausgegeben.

Inhalt der Datenzeilen:
Um die Stückliste ausgeben zu können, habe ich die JTL_DirectTableQuery-Funktion benutzt. Der Trick war, für jede Zeile der Komponenten-Tabelle eine Query zu schreiben.
Zum Beispiel stelle ich so die Artikelnummer (Spalte Components SKU) der Komponente dar:
Code:
JTL_DirectTableQuery("SELECT la.cArtNr from tArtikel a
LEFT JOIN tStueckliste l ON l.kStueckliste = a.kStueckliste
LEFT JOIN tArtikel la ON la.kArtikel = l.kArtikel
WHERE a.kArtikel = " + str$(SalesQuotationPosition.ProductInternalId,0,0)," ","¶")
Über die Abfrage bekomme ich alle Artikelnummern der Komponenten. Im gegensatz zu einer "normalen" JTL_DirectQuery-Funktion, kann man mit der JTL_DirectTableQuery-Funktion Zeilen und Spalten ausgeben.
Der zweite Parameter der Funktion sagt, wie Spalten getrennt werden sollen und der dritte wie Zeilen getrennt werden sollen.
Da die Query nur eine Spalte mit mehreren Zeilen zurück gibt, ist der zweite Paramter der Funktion nicht so relevant. Den dritten Parameter habe ich mit einem Zeilenumbruch bestückt, somit werden mir die Artikelnummern untereinander als Liste ausgegeben.

Das gleich habe ich dann für jede Spalte gemacht.
Components Name:
Code:
JTL_DirectTableQuery("select ab.cName from tArtikel a
left join tStueckliste l ON l.kStueckliste = a.kStueckliste
left join tArtikel la ON la.kArtikel = l.kArtikel
left join tArtikelBeschreibung ab ON ab.kArtikel = la.kArtikel
WHERE ab.kSprache = 1 AND a.kArtikel= " + str$(SalesQuotationPosition.ProductInternalId,0,0)," ","¶")
Components Quantity:
Code:
JTL_DirectTableQuery("select cast(l.fAnzahl as int) from tArtikel a
left join tStueckliste l ON l.kStueckliste = a.kStueckliste
WHERE a.kArtikel = " + str$(SalesQuotationPosition.ProductInternalId,0,0)," ","¶")
Components Unit:
Code:
JTL_DirectTableQuery("select ab.cName from tArtikel a
left join tStueckliste l ON l.kStueckliste = a.kStueckliste
left join tArtikel la ON la.kArtikel = l.kArtikel
left join tEinheitSprache ab ON ab.kEinheit = la.kVerkaufsEinheit
WHERE ab.kSprache = 1 AND a.kArtikel = " + str$(SalesQuotationPosition.ProductInternalId,0,0)," ","¶")
 

itbrockmann

Mitglied
10. Oktober 2019
15
2
Schaumburg
Erstmal vielen Dank, dass du dir die Zeit genommen hast, deine Lösung zu präsentieren! :thumbsup:

Mit ein paar Anpassungen passt es nun auch für uns auch auf der Lieferschein-Vorlage:
Wenn Ihr z.B. mehrere Titel pro Plattform gepflegt habt, müsst ihr in der Query für den Komponenten Name auch noch die Plattform abfragen, ansonsten werden euch alle Titel hintereinander ausgegeben. Dazu einfach in die Where Bedingung "ab.kPlattform = 1" einfügen.

Was uns noch aufgefallen ist, dass die Menge der Komponenten-Positionen noch mit der Menge der Stücklisten-Position multipliziert werden muss. Wir sind uns aber nicht sicher, wie wir das mit der DirectTableQuery umsetzen.
Die Query für Components Quantity müsste unseres Erachtens also noch mit DeliveryNotePosition.Quantity multipliziert werden. Jemand eine Idee wie wir die Query umbauen können, sodass alle Komponenten-Positionen multipliziert werden und mithilfe des Zeilenumbruches untereinander stehen?
 

TimW

Mitglied
16. Januar 2019
29
9
Erstmal vielen Dank, dass du dir die Zeit genommen hast, deine Lösung zu präsentieren! :thumbsup:

Mit ein paar Anpassungen passt es nun auch für uns auch auf der Lieferschein-Vorlage:
Wenn Ihr z.B. mehrere Titel pro Plattform gepflegt habt, müsst ihr in der Query für den Komponenten Name auch noch die Plattform abfragen, ansonsten werden euch alle Titel hintereinander ausgegeben. Dazu einfach in die Where Bedingung "ab.kPlattform = 1" einfügen.

Was uns noch aufgefallen ist, dass die Menge der Komponenten-Positionen noch mit der Menge der Stücklisten-Position multipliziert werden muss. Wir sind uns aber nicht sicher, wie wir das mit der DirectTableQuery umsetzen.
Die Query für Components Quantity müsste unseres Erachtens also noch mit DeliveryNotePosition.Quantity multipliziert werden. Jemand eine Idee wie wir die Query umbauen können, sodass alle Komponenten-Positionen multipliziert werden und mithilfe des Zeilenumbruches untereinander stehen?
Ich würde das in der Query machen:

Code:
JTL_DirectTableQuery("select cast(l.fAnzahl as int) * " + str$(DeliveryNotePosition.Qunatity,0,0) + " from tArtikel a
left join tStueckliste l ON l.kStueckliste = a.kStueckliste
WHERE a.kArtikel = " + str$(SalesQuotationPosition.ProductInternalId,0,0)," ","¶")
 
  • Gefällt mir
Reaktionen: itbrockmann

itbrockmann

Mitglied
10. Oktober 2019
15
2
Schaumburg
Danke, das hat uns sehr geholfen.
Bei uns hatte sich noch ein kleiner Fehlerteufel eingeschlichen...

Für alle die es auch auf dem Lieferschein einbinden wollen

SQL:
JTL_DirectTableQuery("select cast(cast(l.fAnzahl as int) AS decimal(10,5)) * " + str$(DeliveryNotePosition.Quantity,0,0) + " from tArtikel a
left join tStueckliste l ON l.kStueckliste = a.kStueckliste
WHERE a.kArtikel = " + str$(DeliveryNotePosition.ProductInternalId,0,0)," ","¶")
 
Zuletzt bearbeitet:

Garten-Nutzer

Mitglied
3. Juni 2019
42
14
Hallo Leute,

wir suchen genau dies. Sprich Ein Artikel besteht aus einer Stückliste und genau diese Stückliste möchten wir auch auf allen Belegen (Auftragsbestätigung, Lieferschein und Rechnung) ausgeben. In den alten Vorlagen ist dies super gelöst und genau so möchten wir das auch in den neuen Vorlagen haben.

Warum wurde genau sowas gestrichen? Wir haben schon versucht den Code #41 einzubinden, aber die Vorlage scheint einfach Sachen zu ignorieren. Wir haben sogar Probleme die Textbox immer anzuzeigen. Selbst eine Darstellung auf "true" und einfach nur Text, wird vom System komplett ignoriert.

Sorry aber wieso werden hier Funktionen gestrichen, die Jahrelang erstklassig funktioniert haben? Soll ich jetzt die alten Vorlagen (Pre 1.4) wieder auspacken, weil die mehr Funktionen haben als die"neuen" Englischen Vorlagen?

Edit:
Der Befehl:
Code:
JTL_DirectTableQuery("SELECT la.cArtNr from tArtikel a
LEFT JOIN tStueckliste l ON l.kStueckliste = a.kStueckliste
LEFT JOIN tArtikel la ON la.kArtikel = l.kArtikel
WHERE a.kArtikel = " + str$(SalesQuotationPosition.ProductInternalId,0,0)," ","¶")
Wird vom Editor eiskalt als falsch anerkannt, weil "SalesQuotationPosition.ProductInternalId" nicht interpretiert werden kann... (Version 1.4.33.1) und ja das ist nicht die neuste Version und das ist uns bewusst. Aber wir fahren Patches jetzt nur noch, wenn es wirklich wichtige Funktionen gibt.
 

Weedmaster-Flash

Gut bekanntes Mitglied
5. September 2007
138
2
Schleswig-Holstein
Hi zusammen,

ich habe alles wie oben beschrieben umgesetzt. Klappt wunderbar und ist fast genau das was ich brauche. Da einige ja hier sehr fit mit den Abfragen bzw. den Befehlen sind habe ich folgende Fragen:

1. ich bräuchte die HAN der Komponenten anstatt der SKU. Beim Stücklisten-Artikel selber funktioniert es perfekt mit der HAN

Cond(JTL_DirectQuery (
"SELECT cHAN FROM tArtikel WHERE tArtikel.kArtikel = '"+ToString$(DeliveryNotePosition.ProductInternalId)+"'
") == "", "", + JTL_DirectQuery (
"SELECT cHAN FROM tArtikel WHERE tArtikel.kArtikel = '"+ToString$(DeliveryNotePosition.ProductInternalId)+"'
"))

2. ich bräuchte noch den Hersteller vom Einzelartikel / Komponente zusätzlich vor dem Artikelnamen.

Das bin ich wie folgt angegangen:
JTL_DirectQuery ("SELECT thersteller.cName FROM tArtikel JOIN tHersteller ON tArtikel.kHersteller = tHersteller.kHersteller WHERE tArtikel.kArtikel="+str$( DeliveryNotePosition.ProductInternalId ))

Das funktioniert auch aber leider nur bei dem ersten Artikel /Komponente. Bei den anderen bleibt das Feld leider leer.

Würde mich sehr freuen wenn hier einer die Lösung für mich hat.
 

Rico Giesler

Offizieller Servicepartner
SPBanner
10. Mai 2017
13.229
1.397
Wer es für Rechnungen nutzen möchte muss es entsprechend anpassen:

Anzeige Bedingung:
Code:
InvoicePosition.BillOfMaterialsPosition <> "None" and JTL_GetProductCustomField("StkLst nicht andrucken", InvoicePosition.ProductInternalId) <> "1"
Inhalt der Datenzeilen:
Components SKU:
Code:
JTL_DirectTableQuery("SELECT la.cArtNr from tArtikel a
LEFT JOIN tStueckliste l ON l.kStueckliste = a.kStueckliste
LEFT JOIN tArtikel la ON la.kArtikel = l.kArtikel
WHERE a.kArtikel = " + str$(InvoicePosition.ProductInternalId,0,0)," ","¶")
Components Name:
Code:
JTL_DirectTableQuery("select ab.cName from tArtikel a
left join tStueckliste l ON l.kStueckliste = a.kStueckliste
left join tArtikel la ON la.kArtikel = l.kArtikel
left join tArtikelBeschreibung ab ON ab.kArtikel = la.kArtikel
WHERE ab.kSprache = 1 AND a.kArtikel= " + str$(InvoicePosition.ProductInternalId,0,0)," ","¶")
Components Quantity:
Code:
JTL_DirectTableQuery("select cast(l.fAnzahl as int) from tArtikel a
left join tStueckliste l ON l.kStueckliste = a.kStueckliste
WHERE a.kArtikel = " + str$(InvoicePosition.ProductInternalId,0,0)," ","¶")
Components Unit:
Code:
JTL_DirectTableQuery("select ab.cName from tArtikel a
left join tStueckliste l ON l.kStueckliste = a.kStueckliste
left join tArtikel la ON la.kArtikel = l.kArtikel
left join tEinheitSprache ab ON ab.kEinheit = la.kVerkaufsEinheit
WHERE ab.kSprache = 1 AND a.kArtikel = " + str$(InvoicePosition.ProductInternalId,0,0)," ","¶")
 

Xantiva

Sehr aktives Mitglied
28. August 2016
1.449
227
Düsseldorf
JETZT VERSTEH ICH DICH ENDLICH^^

Schöne Feiertage
@Manuel Pietzsch jetzt ist das Jahr fast rum - der Issue-Status steht noch auf Mittelfristig und es scheint sich noch nichts getan zu haben ... 😢

Ich bin wieder darauf aufmerksam geworden, weil ich jetzt aktuell das Problem bei Stücklistenartikeln habe, die Artikel mit Seriennummern enthalten. Entweder wird mir der Stücklistenartikel angezeigt oder eben die einzelnen mit Preis 0. Dazu kommt, dass keiner der Darstellungen die Seriennummer mit angezeigt wird :

0 € + 0 € + 4,90 € = 26,90 € :eek:

1602954502656.png
 

Manuel Pietzsch

JTL-Wawi
Mitarbeiter
2. Januar 2012
2.341
512
Hückelhoven
@Manuel Pietzsch jetzt ist das Jahr fast rum - der Issue-Status steht noch auf Mittelfristig und es scheint sich noch nichts getan zu haben ... 😢

Ich bin wieder darauf aufmerksam geworden, weil ich jetzt aktuell das Problem bei Stücklistenartikeln habe, die Artikel mit Seriennummern enthalten. Entweder wird mir der Stücklistenartikel angezeigt oder eben die einzelnen mit Preis 0. Dazu kommt, dass keiner der Darstellungen die Seriennummer mit angezeigt wird :

0 € + 0 € + 4,90 € = 26,90 € :eek:

Den Anhang 48774 betrachten

Huhu,

ja ich hab das Ticket auch auf Wiedervorlage. Ich schau mal ob es da nicht eine pragmatische Lösung gibt.

Gruß Manuel
 

Xantiva

Sehr aktives Mitglied
28. August 2016
1.449
227
Düsseldorf
Ich habe gerade ein Beispiel für eine gelungene Umsetzung:

Ich habe ein NAS Bundle gekauft, das aus dem NAS und zwei Festplatten besteht. In der ersten Zeile steht das Bundle (Stücklistenartikel), dann kommen die beiden Artikel der Stückliste NAS und Festplatte. Dabei wird die Menge in Klammern angegeben, der Preis mit 0,00 € und die Seriennummern werden ebenfalls gelistet. (Wobei der Rabatt bei den einzelnen Artikel eigentlich auch 0 sein sollte.)

1603561070065.png

So hätte ich das gerne :)

(Notfalls auch je Artikel eine Zeile, wenn man die zwei Seriennummern nicht in eine bekommt.)
 
Ähnliche Themen Forum Antworten Erstelldatum des Themas
Neu Komme nicht in die WaWi aber in die DB JTL-Wawi - Fehler und Bugs 0
Neu WMS startet nicht mehr, WaWi geht aber JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 0
Neu Rechnung bei EC-Karten Zahlung aus der Wawi Allgemeine Fragen zu JTL-POS 4
Neu Navigation in der WaWi - Berechtigungsgesteuert ausblenden User helfen Usern - Fragen zu JTL-Wawi 2
Neu Datenweitergabe an Transportunternehmen - von Gambio zur Wawi? Gambio-Connector 5
Neu NAS verwenden um Wawi auf virtual machine zu installieren Installation von JTL-Wawi 13
Neu JTL-WAWI Hosting + Datenbankzugriff User helfen Usern - Fragen zu JTL-Wawi 1
Neu Nach Update auf Wawi 1.5 beschränkter zugriff auf den Modifed Shop Modified eCommerce-Connector 0
Neu konfigurierbare Artikel mit Wawi User helfen Usern - Fragen zu JTL-Wawi 2
In Bearbeitung [WAWI-34505] Wareneingang geht nicht - bringt keine Bestellungsanzeige / - Schleife JTL-Wawi - Fehler und Bugs 5
Gelöst DHL Retourelabel aus der WaWi heraus erzeut Fehlermeldung JTL-ShippingLabels - Fehler und Bugs 1
Neu FAQ - Amazon VAT Calculation Service (VCS) & JTL-Wawi - 3 Vorteile für Online Händler (Video) Umfragen rund um JTL 19
Neu Woocommerce legt gelöschte Kategorien in Wawi immer wieder an JTL-Wawi - Fehler und Bugs 0
In Bearbeitung JTL-WAWI + FFN hängt beim Start und in Log JTL-Wawi - Fehler und Bugs 1
Neu es kann keine Verbindung zwischen JTL-WAWI und POS hergestellt werden. Einrichtung / Updates von JTL-POS 6
Neu Wawi - FBA Lagerbewertung mit Stücklistenartikeln User helfen Usern - Fragen zu JTL-Wawi 0
In Bearbeitung Auftrag auf Pickliste setzen fürht immer wieder zum Absturz der WAWI JTL-Wawi - Fehler und Bugs 3
Neu Schriftgröße von JTL Wawi vergrößern User helfen Usern - Fragen zu JTL-Wawi 2
Gelöst JTL Shop 5 Keine Verbindung zur WAWI möglich. Die Shop-URL verweist nicht auf einen gültigen Shop! Bitte prüfen Sie die Connector-Konfiguration Gelöste Themen in diesem Bereich 6
In Bearbeitung [WAWI-50281] Schwerer Fehler in dot liquid führt zu Fehlberechnungen - Typen Deklaration Problem JTL-Wawi - Fehler und Bugs 18
Neu Ameise oder Wawi - Artikelnummern anzeigen lassen User helfen Usern - Fragen zu JTL-Wawi 0
In Bearbeitung Falsche MHD/Charge auf Lieferschein bei Warenausgang über JTL-Packtisch+ [WAWI-50270] JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 13
In Bearbeitung [WAWI-50220] Gewicht in der Artikelübersicht wird abgeschnitten (nur 2-stellig) JTL-Wawi - Fehler und Bugs 3
In Bearbeitung Wawi versendet Zahlungsbestätigung bei selbst angelegten Aufträgen, obwohl nicht gewünscht. JTL-Wawi - Fehler und Bugs 5
In Bearbeitung Auswertung, wer wie viel in welcher Zeit gepickt hat [WAWI-15319] Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 3
Gelöst Picklisten in WAWI für WMS erstellen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 12
Neu WAWI 1.5.31.0 Buchungsdaten (Rechnungen) werden nicht korrekt exportiert JTL-Ameise - Fehler und Bugs 7
In Bearbeitung Nachrichten und Preisvorschläge in der WAWI werden nicht mehr mir angezeigt eBay-Anbindung - Fehler und Bugs 2
Neu Auftrag aus JTL-WaWi laden und bearbeiten geht nicht. Storno ist auch ziemlich verwirrend. JTL-POS - Fehler und Bugs 1
In Bearbeitung JTL Wawi + Shop in Testumgebung - Konfigurator aktivieren? Installation von JTL-Wawi 2
Neu JTL POS mit gehosteter Wawi verwenden Einrichtung / Updates von JTL-POS 5
Neu Eigene Felder auf Rechnung JTL Wawi 1.5.31 Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
In Bearbeitung Die Prüfung der Datenbank ist fehlgeschlagen WAWI MSSQL JTL-Wawi - Fehler und Bugs 2
Wawi Artikel werden nicht in JTL POS angezeigt Gelöste Themen in diesem Bereich 1
Neu JTL Wawi ODBC Verbindung funktioniert nicht (bzw. nur teilweise) Installation von JTL-Wawi 9
In Bearbeitung Alternativtext bei Bildnamen können in der Wawi nicht mehr gespeichert werden Shopware-Connector 12
Neu JTL WAWI Sofortautfräge im Shopkonto JTL-Wawi - Ideen, Lob und Kritik 0
In Bearbeitung Aufträge fehlen in der Wawi JTL-Wawi - Fehler und Bugs 3
Neu POS-Vorgänge auch in der Wawi anzeigen Allgemeine Fragen zu JTL-POS 8
Neu Bildername wird nicht aus Wawi übernommen JTL-Shop - Fehler und Bugs 3
Neu Ändern eines Auftrages in JTL POS aus JTL-Wawi Allgemeine Fragen zu JTL-POS 2
In Bearbeitung [BUG] JTL-Worker läd bei jedem Amazon Abgleich *ALLE* VCS-Lite Rechnungen erneut hoch - JTL-Wawi 1.5.30.3 Amazon-Anbindung - Fehler und Bugs 6
Abgelehnt [BUG] JTL-Worker läd bei jedem Amazon Abgleich *ALLE* VCS-Lite Rechnungen erneut hoch - JTL-Wawi 1.5.30.3 Amazon-Anbindung - Fehler und Bugs 1
Gelöst WMS App 1.6 und Server Kompatibilität nach Wawi-Update auf 1.5.30.3 JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 4
In Bearbeitung Amazon Abgleich verarbeitet keine Bestellungen (WaWi 1.5.30.2) Amazon-Anbindung - Fehler und Bugs 2
In Bearbeitung HTML Editor in der Wawi und https eBay-Designvorlagen - Fehler und Bugs 2
Gelöst [1.5.30.3] Manche Prozesse lassen WAWi einfrieren Gelöste Themen in diesem Bereich 3
Neu JTL WAWI ./. 3CX JTL-Wawi - Ideen, Lob und Kritik 0
Neu API notification JTL WAWI to Shop WooCommerce-Connector 0
Neu How to connect example connector plugin to JTL wawi Allgemeines zu den JTL-Connectoren 1
Ähnliche Themen