Benutzerdefinierter Lieferschein mit verschiedenen Auftragsabhängigen Variablen

PAO1908

Sehr aktives Mitglied
11. Oktober 2012
472
33
Schweiz
Hi Community

Wir haben ein Handelsunternehmen und beliefern Fachhändler. Nun haben wir schon jetzt einige Händler, welche per Dropshippig versenden. D.h. wir bekommen die Bestellung und die Lieferadresse von dem Händler, und wir erstellen dann aus der WAWI eine Rechnung, die an den Händler geht, und einen personalisierten Lieferschein mit dem Logo des Händlers und versenden die Bestellung an den Endkunden. Soweit sogut, dies konnte ich gut lösen mit verschiedenen Formularen welche einzelnen Kundengruppen zugeordnet sind..

Ich habe jetzt aber einen Händler, der will genau das gleiche von uns, aber auf dem Lieferschein müssen aber noch einige weitere vom Händler vorgegebene, jedes mal ändernde Punkte ausgegeben werden:

Also z.B.

Versanddatum: Scheint mit kein Problem zu sein
Versandbemerkung:
Bestellnummer des Händlers bei uns
Bestellnummer des Endkunden beim Händler
Zufällig generierte Nummer durch den Händler
Artikelnummer des Händlers, wie auch unsere Artikelnummer bei jeder Position

Nach einigem nachdenken, bin ich auf folgende quick and dirty Lösung gekommen:

Ich verwende einfach ein paar Felder, die ich sowieso nie brauche, und ordne diese dann in dem Lieferschein so an wie gewollt. Natürlich muss ich dann jedes mal extrem aufpassen, wo ich was einfülle, da die Felder ja in der WAWI eine vollkommen andere Bedeutung haben. Also konkret z.B.

Versandbemerkung könnte ich das Feld Anmerkung im Auftrag nehmen
Bestellnummer des Händlers bei uns: Könnte ich das Feld Titel missbrauchen
Bestellnummer des Endkunden beim Händler: Könnte ich das Feld FZusatz missbrauchen
Zufällig generierte Nummer durch den Händler: Könnte ich hier in der Schweiz das Feld Bundesland missbrauchen
Könnte ich da eventuell bei jeder Position das Hinweisfeld missbrauchen, um die Artikelnummer des Händlers zu erfassen, und dann das ganze auf der Positionsliste ausgeben, so wie es mein Händler will ?

Was meint ihr? Nur so machbar ? Oder hat jemand eine bessere und schönere Lösung, gerne auch gegen Bezahlung. Vielleicht mittels externer Eingabe in die Datenbank die dann geholt wird? Wie gesagt, bin für alle Vorschläge offen :)

Herzlichen Dank
 

realitor

Aktives Mitglied
14. Januar 2013
71
18
AW: Benutzerdefinierter Lieferschein mit verschiedenen Auftragsabhängigen Variablen

Ich führe gerade JTL Wawi bei uns ein, welche die preisintensive aber mächtige Software Sage Office Line ablöst. Wir haben ähnliche Anforderungen wie du und ich habe dazu ein paar Workarounds erstellt. Ich rate vom produktiven Einsatz ab, sofern du nicht über SQL Kenntnisse besitzt. Du musst auch mit jedem Patch überprüfen ob die betroffenen Datenbankfelder ggf. umbenannt oder in andere Tabellen verschoben worden. Die manuelle Eingabe und Pflege von benutzerdefinierten Feldern empfehle ich nicht, da kannst du auch gleich eine eigene Datenbank entwerfen und dir die passende Software schreiben (lassen). Lies auch mein ergänzenden Hinweise am Ende.

Vorgangsbezogene (= Auftrags- oder Belegbezogen) Parameter:

Mögliche vorgangsbezogene Parameter:

Auftragsnummer des B2B Kunden
Lieferantennummer des eigenen Unternehmens beim B2B Kunden
...

Eine Lösung: Bestellattribute

Definiere die Bezeichner für diese Attribute. Du musst sicherstellen, dass keine Anwender die Bestellattribute nachträglich löschen oder umbenennen.

Hier ein Beispiel:

Einstellungen -> Allgemeine Einstellungen -> Bestellattribute

Dort erstellst du ein Attribut "Referenz", welches später für die Auftragsnummer des B2B Kunden verwendet wird.

Bei der Erstellung des Auftrags kannst du nun dieses Attribut mit einem Wert belegen. (Das Feld "Attribute" findest du neben der Sprachwahl in der Auftragsbearbeitung)

Damit diese Angabe auch auf den jeweiligen Belegen (Auftragsbestätigung, Lieferschein, Rechnung usw.) erscheint fügst du die entsprechenden Felder per JTL_DirectQuery ein.

JTL_DirectQuery("SELECT Attribut.cValue FROM tBestellungAttribute AS Attribut LEFT JOIN tBestellung AS Bestellung ON Bestellung.kBestellung = Attribut.kBestellung WHERE Attribut.cName = 'Referenz' AND Bestellung.cBestellNr = '"+ JTL.WaWi.Vorgang.BestellNr + "'")

Wie du jetzt feststellen wirst, sind Grundlagen in SQL jetzt extrem hilfreich. Wenn du diese nicht hast, suche dir jemanden der sie hat oder fahre auf eigenes Risiko fort. Die oben genannte Abfrage verbindet die Tabellen Bestellungen und Bestellattribute und liefert uns ein eindeutiges Ergebnis zur genannten Bestellung (Variable orange markiert) und Bestellattribut. Der Bezeichner cName (rot markiert) muss dabei zu 100% mit dem Wert übereinstimmen, welchen du vorher unter Bestellattribute angelegt hast.

Nun kannst du mit dem dargestellten Wert weiterarbeiten. Eine kleines Bezeichner ("Referenznummer: ") voranstellen oder die Ausgabe unterdrücken, falls der Wert leer ist. Ich setze voraus das du mit dem Formulardesigner bereits Erfahrungen gesammelt hast.

Wiederhole diesen Schritt für alle vorgangsbezogenen Attribute und Belege.


--------------

Artikelbezogene Attribute:

Nun wird es anspruchsvoller.

1) Preise
Wir haben mehrere B2B Kunden, welche individuelle Preise pro Artikel haben. Eine Lösung über Rabatt ist nicht möglich, da die Preisnachlässe individuell pro Artikel erstellt werden.

Eine Lösung ist, welche auch schon im Forum dokumentiert wurde, das für jeden betroffenen B2B Kunden eine eigene Kundengruppe erstellt wird. Diese benennst du vorzugsweise auch nach dem Kunden.

2a) kundenbezogene Artikelnummer pro Artikel - Aufgabenstellung
Damit du nun auch für jeden Artikel eine Bestellnummer in JTL hinterlegen kannst sind weitere Schritte nötig. Manche werden sich fragen, wieso dieser Aufwand, hier die Erklärung:

Der B2B Kunde führt von tausenden Lieferanten mehrere Millionen Artikel und eine entsprechend groß dimensionierte Logistik. Damit seine eigene Lagerführung nicht nach 10 Minuten im Chaos versinkt, erstellt er sogenannte "Lieferantenverträge" welche bestimmten Vorgaben beinhalten, welche wiederum vom Lieferant (uns) erfüllt werden müssen. Eine schreibt uns z.B. vor, dass in allen Belegen zu jeder Position nicht nur unsere, sondern auch die hauseigene Artikelnummer festgehalten wird.

2b) kundenbezogene Artikelnummer pro Artikel - Lösung
Die Lösung nennt sich "Produktattribute" und lässt sich bis zu einer gewissen Anzahl von Kunden praktikabel lösen. Es wird vorausgesetzt, das diese Kunden eine eigene Kundengruppe haben (siehe 1.)

Du definierst für jeden B2B Kunden, für welchen du kundenbezogene Artikelnummern hinterlegen willst, wieder einen Bezeichner, welcher 1:1 mit dem Namen der jeweiligen Kundengruppe übereinstimmt. Stelle sicher dass die betroffenen Mitarbeiter (Produktmanager, Contentmitarbeiter, Vertriebsassistenten) für den sicheren Umgang mit diesem Feld ausreichend geschult bzw. sensibilisiert werden. Berücksichtige auch Datenschutzaspekte bei der Verwendung des Kundennamens als Attributsbezeichner. Kläre das mit deinem DSB, der nebenbei erwähnt die oben geforderten SQL Kenntnisse besitzen sollte.

Anschließend erstellst du für jeden Artikel, welchem du einen individuellen Preis hinterlegen willst ein entsprechendes Attribut.

Hier ein Beispiel:

Du hast den Kunden "Sockenshop Online" und belieferst diesen mit verschiedenen Artikel wie z.B. "Strumpf lang braun Typ 1". Wie bereits besprochen, haben wir eine Kundengruppe "Sockenshop Online" erstellt und die Preise hinterlegt.

Anschließend erstellst du eine Attribut unter Artikel->Artikeldetails->Attribute/Merkmale->Hinzufügen

Attributart: Kurztext (damit stellst du sicher, das führende Nullen erkannt werden bzw. falls der Kunde alphanumerische Artikelnummern hat ist es eh Pflicht).
Name: Sockenshop Online (muss zu 100% mit der Bezeichnung der Kundengruppe übereinstimmen)
Kurztext: Artikelnummer des Kunden eintragen
"Im Internet anzeigen" abwählen und mit OK speichern.

Das wiederholst du für alle Artikel und Kunden, bei denen du eigene Preise bzw. Artikelnummern hinterlegen willst.

Kommen wir wieder zur Darstellung dieses Werts auf den Belegen.

Füge der Positionsliste eine weitere Zeile pro Position hinzu. Diese Zeile kann z.B. zwischen dem Variantenfeld und dem Beschreibungsfeld eingefügt werden.

Wir bedienen uns wieder der Funktion JTL-DirectQuery und verknüpfen nun die Tabellen Kunden, Kundengruppen, Attribute und Zeichenketten.

JTL_DirectQuery ("SELECT AttributWert.cValue FROM tkunde AS Kunde LEFT JOIN tKundenGruppe AS Gruppe ON Gruppe.kKundenGruppe = Kunde.kKundenGruppe LEFT JOIN tattribut AS Attribut ON Attribut.cName = Gruppe.cName LEFT JOIN tString AS AttributWert ON AttributWert.kString = Attribut.kString WHERE Kunde.cKundenNr = " + JTL.WaWi.Kunde.Kundennummer + " AND Attribut.kArtikel = "+ ToString$(Positionen.ArtikelID))

Es wird ermittelt welcher Kundengruppe der Kunde (JTL.WaWi.Kunde.Kundenummer) zugeordnet ist und sucht dazu in der Tabelle Attribute einen möglichen Eintrag, welcher den Bezeichner (cName) mit der Kundengruppe besitzt und gleichzeitig für den Artikel (Positionen.ArtikelID) hinterlegt ist. Das eindeutige Ergebnis wird anschließend aus der Tabelle "tString" (=Kurztext) gelesen und zurückgegeben. Eigentlich ganz einfach oder?

Damit kannst du dann wieder weiter arbeiten und die Ausgabe ergänzen mit einem vorangestellten Bezeichner "Ihre Artikelnummer lautet: " oder unterdrücken, falls zu diesem Artikel und Kunde kein Wert hinterlegt wurde. Natürlich lässt sich die Artikelnummer auch als eigene Spalte darstellen oder sonstwie anzeigen. Das kannst du wie immer alles im Formulardesigner nach Belieben weiterverarbeiten.

---------

Bei beiden Workarounds gibt es leider kaum eine Möglichkeit nach diesen Werten innerhalb der JTL-Dialoge zu suchen. Z.b. suche Artikel mit Kundenartikelnummer "Socke 033920" oder das man innerhalb der Rechnungsübersicht Bestellattribute in der Listenansicht darstellen kann. Auch die Ameise profitiert davon nicht bzw. nur über Umwege. Die Workarounds dienen in erster Linie dazu, die gewünschte Attribute auf den Belegen darzustellen, welche später bei deinem Kunden im Wareneingang oder Buchhaltung bearbeitet werden.

Beide Workarounds setzen auch den sicheren Umgang mit den Attributen voraus. Werden selbige nicht exakt angegeben, nachträglich gelöscht oder sonstwie manipuliert, dann ist Chaos vorprogrammiert. Daher wird alles nachträglich nochmal als Workaround und nicht als Lösung definiert. Ich kann es nur wiederholen. Kenntnisse und Erfahrung vorausgesetzt und vor allem die nötige Schulung der Mitarbeiter muss berücksichtigt werden, sonst geht es nicht.

Hinweis ans JTL-Team: Eine entsprechende Integration dieser Funktionen wäre wünschenswert, aber ich sehe ein, das die JTL-Anwendergruppe nicht sehr viele B2B Händler umfasst und damit keine Priorität erhalten. Ein kostenpflichtiges B2B Upgrade wäre natürlich eine Überlegung wert. Gerne erstellt die Community einen entsprechenden Anforderungskatalog.
 
  • Gefällt mir
Reaktionen: _sm_

PAO1908

Sehr aktives Mitglied
11. Oktober 2012
472
33
Schweiz
AW: Benutzerdefinierter Lieferschein mit verschiedenen Auftragsabhängigen Variablen

WOW !!!!

Vielen vielen herzlichen Dank für diese absolut tolle Anleitung ! Hat wunderbar funktioniert und ist bereits bei uns im Einsatz. Ich staune immer wieder wie hilfsbereit die Community hier ist und ich bin mir absolut sicher, auf die richtige WAWI gewechselt zu haben.
Ich habe zwar keine grosse Ahnung von SQL, aber ich probiere einfach solange aus, bis es funktioniert (mit dieser Anleitung war dies gar nicht nötig).

Ich würde mich gerne erkenntlich zeigen, sende mir doch bitte deine Postadresse per PM !

Nochmals herzlichen Dank und Gruss aus der Schweiz
 

Graewe

Aktives Mitglied
28. August 2014
81
2
AW: Benutzerdefinierter Lieferschein mit verschiedenen Auftragsabhängigen Variablen

Hallo,

selbiges würde ich gerne auch einbauen. Die Beschreibung ist echt der Hammer. Soweit auch alles verständlich, jedoch bekomme ich bei den beiden Abfragen: "JTL. WaWi.Kunde.Kundennummer" & "ToString$(Positionen.ArtikelID))" einen Syntaxfehler.

Gibt es hier mittlerweile eine Änderung. Ich nutze die Version 099923.

Schöne Grüße
 
Ähnliche Themen
Titel Forum Antworten Datum
Druck-/E-Mail-Exportvorlagen verwalten -Lieferschein JTL-Wawi 2.0 3
Neu Wert aus „Eigenes Feld“ eines Artikels im Lieferschein unter der Artikelbezeichnung anzeigen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Lieferschein löschen führt zum Absturz JTL-Wawi 2.0 2
Neu Gesucht: JTL-Systempartner/Freelancer mit Erfahrung in Personalisierungs-/Gravur-Fulfillment Dienstleistung, Jobs und Ähnliches 2
Neu Wird irgendwo in der Datenbank geloggt welcher WMS-Mobile Benutzer mit dem MDE-Gerät einen Auftrag, bzw. Pickliste gepickt hat? User helfen Usern - Fragen zu JTL-Wawi 1
Rechnung mit CC verschicken Vorlagen 2.0 JTL-Wawi 1.11 12
Neu JTL Shop Plugin - BD Automatisierter Widerruf (Von Händler für Händler - Schluss mit Mail-Chaos & Spam-Sorgen!) Plugins für JTL-Shop 0
Neu Versanddatenimport in Packtisch nicht automatisch (DPD Österreich mit WEB.omat) JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 2
Neu Anzeige Alle Artikel mit Kategorieanzeige linke Menüleiste Allgemeine Fragen zu JTL-Shop 9
Neu GLS Privatlabels mit Packtisch verknüpfen JTL-ShippingLabels - Ideen, Lob und Kritik 0
Neu oAuth Credentials Login mit JTL .. WO? User helfen Usern 1
Neu kostenlos: DHL Sendungsverfolgung für JTL-Wawi – Web-Dashboard mit Frühwarnsystem Schnittstellen Import / Export 0
Neu Konfigurationsgruppe mit Auslesen Arbeitsabläufe in JTL-Wawi 1
Neu Ist es ohne Probleme möglich Cloudflare in der Free Version mit JTL zu nutzen? Allgemeine Fragen zu JTL-Shop 7
Neu Nach Wawi Update Probleme mit Rechnungsdrucker JTL-POS - Fehler und Bugs 4
Neu Mariadb 12 mit 5.7.1 Allgemeine Fragen zu JTL-Shop 0
Neu Pickliste mit maximaler SKU-Anzahl – gibt es eine Lösung? Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 4
Neu Mit Fehlern beendet - Object reference not set to an instance of an object. JTL-Track&Trace - Fehler und Bugs 0
ändern von Servernamen nach Neuinstallation von SQL und Verbindung mit neuem Server in der Wawi JTL-Wawi 2.0 2
Probleme mit Artikelansicht oder Verkauf, etc. JTL-Wawi 2.0 0
Fehler mit Zahlungsabgleich JTL-Wawi 1.11 11
Eigener Drittshop-Connector (jtl/connector 5.3): valide Variationskombinationen werden mit „besitzt keine Variationen" nicht gesendet JTL-Wawi 1.11 1
Neu Problem mit dem JTL-Connector – Invalid Shopify connection credentials. Shopify-Connector 3
Neu Arbeiten mit Lieferanten EKs - Workflows und SQL User helfen Usern - Fragen zu JTL-Wawi 6
Neu JTL Artikelanlage mit KI beschleunigen User helfen Usern - Fragen zu JTL-Wawi 2
Neu DHL 4.0 mit JTL-ShippingLabels funktioniert nicht JTL-ShippingLabels - Fehler und Bugs 2
Neu Amazon FBA Bestellungen doppelt mit _1 Amazon-Anbindung - Fehler und Bugs 5
Fehler beim Abgleich mit Amazon JTL-Wawi 2.0 10
Abgleich Amazon mit Fehlern beendet 1.11.08 JTL-Wawi 1.11 14
Rabatt Coupons in Verbindung mit Staffelpreisen - JTL 1.11.9, JTL Shop JTL-Wawi 1.11 0
Worker 2.0 starten mit deak. Abgleichen? JTL-Wawi 2.0 6
Fehler beim Abgleich mit dem JTL-Shop JTL-Wawi 2.0 12
Neu OnFinds: KI-Suche für JTL-Shop mit fairer Abrechnung nach Artikelanzahl. 30 Tage kostenlos testen Plugins für JTL-Shop 0
Neu Abrechnung / Auslieferung von Aufträgen mit Gutschriftverfahren Arbeitsabläufe in JTL-Wawi 3
Neu Dummy-ID oder Freiposition für Angebot mit mehrzeiliger Beschreibung JTL-Wawi - Ideen, Lob und Kritik 7
Neu JTL Shop 5.7.1 mit Fehlern - versandarten zahlungsarten nicht änderbar, leere weiße Seite JTL-Shop - Fehler und Bugs 5
JTL Ameise Lieferantenbestellung mit VPE importieren oder umrechnen JTL-Wawi 1.11 0
Jtl pos Einstellungen mit wiwa 2.02 JTL-Wawi 1.11 0
Anmeldung mit OAuth bei Versanddienstleister notwendig JTL-Wawi 1.10 5
Problem mit Hermes Österreich Sendungsnummern – Fehler beim Amazon-Abgleich in JTL-Wawi JTL-Wawi 1.10 0
Bestellabgleich mit JTL Wawi und WooCommerce 1h verzögert JTL-Wawi 2.0 0
Neu PayPal Käufername stimme nicht mit Liederadresse überein! Business Jungle 0
Neu 1.11.8 Auftagsimport mit Artikelnummern mapping JTL-Ameise - Fehler und Bugs 0
Neu Neuerdings E-Mail benachrichtigung bei "Pick up in Store", allerdings mit E-Mail "Bestellung wurde abgeholt" Shopify-Connector 0
Neu Abgleich mit Amazon Sendungsnummer / Rechnung Arbeitsabläufe in JTL-Wawi 0
Neu JTL-Wawi mit Claude, ChatGPT, Openclaw/Hermes oder CRM System verbinden User helfen Usern 2
Neu Custom Checkout - Conversion optimiert mit Speicherung von Standard-Versandart und Zahlungsart am Kunden JTL-Shop - Ideen, Lob und Kritik 1
Neu Auftrag - Lieferstatus mit Workflow exportieren Arbeitsabläufe in JTL-Wawi 3
In Diskussion Workflow mit UND / ODER - Bedingung erstellen JTL-Workflows - Ideen, Lob und Kritik 7
Ameise-Export: Umsatzsteuer stimmt nicht mit Differenz aus Netto und Brutto überein (insbesondere bei mehreren Steuersätzen) JTL-Wawi 1.11 0

Ähnliche Themen