Gelöst Packtisch - Parameter per SQL an Easylog übergeben!?

cdx

Sehr aktives Mitglied
13. März 2013
1.597
52
Wir haben fast ausschließlich Aufträge mit 1 bis maximal 3 Artikeln.
Nun möchten wir gern auf das DHL-Label an der Seite (welche eh in den Müll fliegt) Informationen zum Auftrag mit drauf bringen, damit der Kollege den richtigen Artikel verpackt.

Dazu muss ich sagen dass ein Kollege die Labels erstellt und einer verpackt. Das geht schneller und ist effizienter für uns.

Da der Kollege welcher die Labels erstellt die Ware allerdings nicht direkt am Platz hat, schreibt er von Hand die Artikel drauf.

Dies würden wir gern automatisieren in dem durch die Exportvorlage die Auftragsinfos mit übergeben werden.

Wir haben 2 Felder auf dem Label wo die Infos rein können.

Die Frage ist nur, mit welchem Statement ich die Infos in die Exportdatei bekomme, denn Versandkosten brauchen beispielsweise keine drauf und wir würden das idealerweise mit Funktionsattributen machen wollen, welche dem Artikel hinterlegt werden.

Kann da jemand weiterhelfen?
 

Stetto

Sehr aktives Mitglied
2. Juli 2009
4.811
575
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Ich versteh nur Bahnhof :D Wieso macht ihr das so kompliziert? Da verfliegt doch der ganze Vorteil vom JTL- Packtisch.

Also ich verstanden, dass ihr diese DinA5 Etiketten von DHL nutzt, mit diesen kleinen Klebestreifen an der Seite.
Ob sich da was aufdrucken lässt, und ob man das über die Polling-Datei steuern kann, wäre mit dem DHL-Support zu klären.

Aber wieso besorgt ihr euch nicht für kleinen Geld einen gebrauchten Zebradrucker, und lasst euch von DHL Etiketten auf Rolle zur Verfügung stellen.
Beim verpacken druckt ihr direkt das fertige Label und alle sind glücklich. Minimale Investition, maximale Zeiteinsparung.

Wenn ihr keine exotischen Sonderfunktionen nutzt, könnt ihr sogar auch Easylog verzichten und einfach das neue integrierte JTL- Shipping nutzen.
 

cdx

Sehr aktives Mitglied
13. März 2013
1.597
52
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Ach Stephan... :) Ja, für uns ist das auf diese komplizierte Art einfacher...

Korrekt, es geht um die A5 Labels und um den von dir beschriebenen Rand.
Und ja, man kann da was drauf drucken. Ich muss der Exportvorlage nur sagen was dort drauf soll und genau da wirds schwierig (zumindest für mich).
Denn ich müsste über einen String die Infos aus dem Auftrag holen und dabei die Versandarten ignorieren.

Da wir zumindest schon mal die Altersprüfung brauchen fällt JTL- Shipping raus, weil es das derzeit nicht unterstützt.
 

Stetto

Sehr aktives Mitglied
2. Juli 2009
4.811
575
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Die Infos sind noch recht einfach zu bekommen. Dafür lässt sich die Zollinhaltserklärung umschreiben:
Code:
{% for Position in Vorgang.Lieferschein.Positionen -%}
{% if Position.Auftragsposition.Artikel.IstLagerartikel -%}
Menge: {{ Position.Menge }} - Artikel: {{ Position.Artikel.Bezeichnung }}
{% endif -%}
{% endfor -%}
 

cdx

Sehr aktives Mitglied
13. März 2013
1.597
52
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Kann man dann auch Felder aus den Artikeldetails auslesen?
Zum Beispiel das Feld Anmerkung oder Funktionsattribute?
 

Stetto

Sehr aktives Mitglied
2. Juli 2009
4.811
575
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Es handelt sich in dem oben genannten Schnipsel bereits um die Artikeldetails. Die möglichen Variablen sind hier zu finden:
Kategorie:JTL-Wawi:Alle DotLiquid Variablen für Lieferscheine ? JTL-Guide

Weitere Beispiele wären entsprechend:
{{ Position.Artikel.Artikelnummer }}
{{ Position.Artikel.Anmerkung }}

Attribute und Funktionsattribute sind hier zu finden:

{{ Position.Artikel.FunktionsattributeAlsText }}
{{ Position.Artikel.AttributeAlsText }}

Gemäß der Definition von GetItem sollten die Werte so abgefragt werden können:
{{ Position.Artikel.AttributeAlsText | GetItem: 'Attributname','Deutsch'}}


http://guide.jtl-software.de/jtl/Kategorie:JTL-Wawi:DotLiquid#AttributeMapFilters

Die Funktion scheint aktuell leider defekt zu sein oder war ursprünglich für etwas anderes geplant, deshalb kommt man zur Zeit nur sehr umständlich an die Attribute:
Code:
[FONT=Courier New]{% for Position in Vorgang.Lieferschein.Positionen -%}
{% if Position.Auftragsposition.Artikel.IstLagerartikel -%}
{% assign Attributpaar = Position.Artikel.FunktionsattributeAlsText | Split:'|' -%} 
{% for Wertepaar in Attributpaar -%} 
{% assign Attribut = Wertepaar | Split:'=' -%} 
{{ Attribut | First }} = {{ Attribut | Last }} 
{% endfor -%} 
{% endif -%} 
{% endfor -%}[/FONT]
 

cdx

Sehr aktives Mitglied
13. März 2013
1.597
52
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Die Anmerkung würde uns schon reichen, da eh nur ein kurzer Text angezeigt werden soll.

Wird die Anmerkung wo anders auch angezeigt? ( Shop, Packtisch oder so)
 

Stetto

Sehr aktives Mitglied
2. Juli 2009
4.811
575
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Über komplexe reguläre Ausdrücke kommt man zum Ziel.
Für das Funktionsattribut "dhlkat" geht das so.:

Code:
[FONT=Courier New]{{ Position.Artikel.FunktionsattributeAlsText | Replace: '^.*dhlkat=(.*)[|].*','$1' }}[/FONT]
 

cdx

Sehr aktives Mitglied
13. März 2013
1.597
52
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Ich glaub da haben wir grad aneinander vorbeigeredet. ;)

Wollte nur wissen wo die Anmerkungen, welche in den Artikeldetails hinterlegt werden angezeigt werden.
Sind die nur intern in der Wawi sichtbar oder werden die auch irgendwo ausgegeben? (ich meine damit ohne spezielle Abfrage)
 

Stetto

Sehr aktives Mitglied
2. Juli 2009
4.811
575
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Dann verstehe ich nicht was du meinst. Die Artikelanmerkung ist "das gleiche" wie die Artikelnummer. Die wird überall da ausgegeben, wo du die Variable einbaust. Export, Mail, Druck usw.
 

cdx

Sehr aktives Mitglied
13. März 2013
1.597
52
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

ok. fragen wir andersrum.
die die variable für die anmerkung STANDARD-mäßig irgendwo verbaut?
im shop, in vorlagen oder so?
 

Stetto

Sehr aktives Mitglied
2. Juli 2009
4.811
575
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Bei rund 100.000 Variablen - oder mehr - ist das schwer zu sagen. ^^
Spontan würde ich aber sagen nein bzw. mir ist keine Vorlage bekannt. Aber ist das wichtig?
Ich werde nun keine 50 Druckvorlagen und 20 Shopvorlagen und 20 Exportvorlagen auf die Variable prüfen.

Leg dir doch einfach einen Artikel an, fülle das Feld und drucke die Hand voll Vorlagen aus, die du benutzt. Dann kennst du für dich die Antwort ^^
 

cdx

Sehr aktives Mitglied
13. März 2013
1.597
52
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

wir werden es mal testen. ich geb eine rückinfo wenn es klappt. :)
 

cdx

Sehr aktives Mitglied
13. März 2013
1.597
52
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Wir sind gerade am Testen der neuen Vorlage und haben festgestellt dass, sobald zwei oder merh Artikel in dem Auftrag sind, ein Zeilenumbruch in der Exportvorlage auftaucht.
Folgenden Code haben wir eingebaut
{% for Position in Vorgang.Lieferschein.Positionen -%} {% if Position.Auftragsposition.Artikel.IstLagerartikel -%} {{ Position.Menge }}x {{ Position.Artikel.Anmerkung }} {% endif -%} {% endfor -%}
Optimum wäre, wenn ein "+" jeden weiteren Artikel trennen würde und keine Zeilenumbrüche entstehen.

Kann da jemand weiterhelfen?
 

Stetto

Sehr aktives Mitglied
2. Juli 2009
4.811
575
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Steht der Code in deiner Vorlage tatsächlich nur in einer Zeile? Oder stehen die Zeilen untereinander?
Poste den Code bitte mal mit [ CODE] [/CODE]. Grundsätzlich musst du an der Stelle, wo kein Zeilenumbruch gewünscht ist, einfach am Ende einen Backslash ergänzen.

Code:
[FONT=Courier New]{% for Position in  Vorgang.Lieferschein.Positionen -%} 
{% if  Position.Auftragsposition.Artikel.IstLagerartikel -%} 
{{ Position.Menge  }}x {{ Position.Artikel.Anmerkung }}\[/FONT][FONT=Courier New]
{% if forloop.last %}+{% endif -%}[/FONT]
{% endif -%}[FONT=Courier New]
{% endfor -%}[/FONT]

Zeile 4 ergänzt zudem das gewünschte + zwischen einzelnen Positionen, setzt aber kein + hinter den letzten Artikel.
 

cdx

Sehr aktives Mitglied
13. März 2013
1.597
52
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Der Code steht natürlich untereinander. :)
Das nächste mal nutze ich den CODE Tag. Dachte mit dem QUOTE geht es auch.

Danke schon mal für die Hilfe.

Optimum wäre am Ende wenn die Menge (wenn Sie gleich 1 ist) gar nicht angezeigt wird UND wenn "Anmerkung" leer ist stattdessen die Artikelnummer und Artikelname angezeigt wird.
 

Stetto

Sehr aktives Mitglied
2. Juli 2009
4.811
575
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Ja, das ist alles machbar :) Den Grundstein hab ich ja jetzt gelegt. Einfach mal ein bisschen testen und rumspielen.
Zwei kleine if-else-Spielchen, dann kommst du deinem Ziel näher. Die Syntax ist der von PHP oder JavaScript sehr ähnlich.

Kategorie: JTL-Wawi:DotLiquid ? JTL-Guide
 

cdx

Sehr aktives Mitglied
13. März 2013
1.597
52
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Ich hab jetzt folgendes zusammengeschrieben und würde mich freuen ob jemand mal drüberschauen kann ob ich hier noch grobe fehler drin habe oder es besser formulieren kann
Code:
{% for Position in  Vorgang.Lieferschein.Positionen -%}\
{% if  Position.Auftragsposition.Artikel.IstLagerartikel -%}
{% if  Position.Menge > 1 %}{{ Position.Menge  }}x{% else %}{% endif -%}
{% if  Position.Artikel.Anmerkung != empty %}{{ Position.Artikel.Bezeichnung }}{% else %} {{ Position.Artikel.Anmerkung }}{% endif -%}\
{% if forloop.last %} + {% endif -%}
{% endif -%}
{% endfor -%}

Zum einen weiß ich nicht ob das x hinter Position.Menge problemlos übernommen wird oder ob ich das nochmal in Klammer setzen muss oder so.
Zum zweiten bin ich mir nicht ganz sicher ob ich in Zeile 3 nach dem else einfach nichts schreiben kann wenn es leer bleiben soll oder ob es dafür ein "Füllelement" gibt.

Zuletzt ist mir noch aufgefallen, dass das + Zeichen scheinbar immer geschrieben wird selbst wenn es nur ein oder der letzte Artikel ist. Ist hier ein Fehler drin den ich übersehen habe?

Vielen Dank für jegliche Unterstützung.
 

cdx

Sehr aktives Mitglied
13. März 2013
1.597
52
AW: Packtisch - Parameter per SQL an Easylog übergeben!?

Ich habe heut früh den Code mal getestet aber da bekomme ich als Ergebnis nur ein " + " ausgegeben.
Daher habe ich den Code angepasst und es so versucht:
Code:
{% for Position in  Vorgang.Lieferschein.Positionen -%}\
{% if  Position.Auftragsposition.Artikel.IstLagerartikel -%}
{% if  Position.Menge > 1 %}{{ Position.Menge  }}x{% else %}{{ '' }}{% endif -%}
{% if  Position.Artikel.Anmerkung != empty %}{{ Position.Artikel.Bezeichnung }}{% else %} {{ Position.Artikel.Anmerkung }}{% endif -%}\
{% if forloop.last %} + {% endif -%}
{% endif -%}
{% endfor -%}
Leider auch ohne Erfolg.
Kann man denn überhaupt problemlos mehrere IF-Abfragen hintereinander starten?
Und warum wird das + angezeigt wenn es nur ein Artikel ist?
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Freiposition auf Pickliste lässt sich nicht picken, Packtisch Gelöste Themen in diesem Bereich 2
Neu Große Aufträge Nicht-EU: Exportdokumente & Rechnung am WMS-Packtisch nachdrucken bzw. großen Auftrag splitten User helfen Usern - Fragen zu JTL-Wawi 0
Neu Angemeldete Retoure nicht sichtbar in WMS-Packtisch Retourenbearbeitung Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Neu WMS/Packtisch+ ... manuelle Workflows per Barcode auslösen JTL-WMS / JTL-Packtisch+ - Ideen, Lob und Kritik 0
Neu JTL Packtisch - offene Bestellungen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 5
Neu Packtisch: Versandart soll explizit ausgewählt werden müssen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Neu Packtisch: In der Liste der Aufträge neue Feld-Spalte mit Spalteneditor hinzufügen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
In Diskussion Wareneingang Packtisch 1.8.12.0: Seriennumer wird abgeschnitten. JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 1
Gelöst Packtisch+ 1.8.112 : Rechnung wird bei Teillieferung erzeugt, obwohl als Ausführungsbedingung "Nur bei der letzten Teillieferung" ausgewählt ist. JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 2
Teilrechnung Erstellen über/nach Packtisch+ JTL-Wawi 1.8 1
Gelöst Packtisch speichert exportvorlage für Hermes nicht Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 4
Neu Dynamischen Parameter an BAT anfügen zur Ausgabe als Messagebox User helfen Usern - Fragen zu JTL-Wawi 1
Neu Kundendaten extern verschlüsseln (Für den eigenen Shop) und per Import importieren Technische Fragen zu Plugins und Templates 0
Neu Wie kann man Anzahl der VPE per SQL abfragen? User helfen Usern - Fragen zu JTL-Wawi 1
Neu Per Button/ Link Artikel in den Warenkorb legen Technische Fragen zu Plugins und Templates 1
Artikel per Ameise mehreren Kategorien zuordnen - Artikeldatenimport in WaWi nicht mehr vorhanden JTL-Wawi 1.8 6
Workflow = Gewinn unter 30 % vom netto = per Mail informiert JTL-Wawi 1.6 10
Wie kann ich etwas in der WAWI Datenbank per SQL ändern? JTL-Wawi 1.8 2
Gutscheine aktualisieren bzw. mehrere per Import deaktivieren? Allgemeine Fragen zu JTL-Vouchers 1
Neu shopapotheke per Anbindung eBay-Anbindung - Fehler und Bugs 1
Neu Umlagerung per Ameisen-Import JTL-Wawi - Fehler und Bugs 1
Neu In einen Portlet-Container im Frontend per Ajax Datennachladen (weitere anzeigen) Technische Fragen zu Plugins und Templates 1
Neu eBay Plus Angebote per Ameise steuerbar ? Eigene Übersichten in der JTL-Wawi 6
Neu Zugang zu Kategorien nur per Kennworteingabe Plugins für JTL-Shop 3
Neu Eigene Felder (Kunde) in csv-Datei per Ausgabe (Auftrag oder Lieferschein) Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Lieferadresse / Rechnungsadresse im Auftrag per Doppelklick wählbar machen JTL-Wawi - Ideen, Lob und Kritik 0
Datenbank-Abfrage per SQL nach Lagermenge pro Artikel & Warenbereich (WMSLager) JTL-Wawi 1.8 1
Neu Lieferantenbestellung als CSV mit selbst festgelegten Spalten per Mail senden Arbeitsabläufe in JTL-Wawi 1
Neu Benachrichtigung per Workflow bei Wareneingang User helfen Usern - Fragen zu JTL-Wawi 24
Neu Weiterleitungen direkt per Datenbank einfügen aufgrund Größe bzw. Anzahl? Betrieb / Pflege von JTL-Shop 9
Gelöst Per Workflow im Servicedesk eine Mail versenden. Gelöste Themen in diesem Bereich 4
Variationen per Ameise umbenennen JTL-Wawi 1.8 1
Workflow Auftraqspositionen per Email an Kunden senden JTL-Wawi 1.7 3
Neu Ist es möglich per Ameise Kunden zu löschen? Arbeitsabläufe in JTL-Wawi 2
Neu LS-Pos Kundenrechnung per Email Fragen rund um LS-POS 1
Neu Warenkorb per Link teilen Allgemeine Fragen zu JTL-Shop 7
Ausgabe per E-Mail geht plötzlich nicht mehr, Testmail aus Wawi aber schon JTL-Wawi 1.6 22
Beantwortet Kunde von Firma per Workflow setzen JTL-Workflows - Ideen, Lob und Kritik 1
Neu Datenbankebene per SQL löschen Eigene Übersichten in der JTL-Wawi 6
Neu Consent Status per Smarty Var abfragen Technische Fragen zu Plugins und Templates 2
Nur noch sporadischer Versand per Mail von Rechnungen, Lieferscheinen und Mahnungen nach Update auf Version 1.8. JTL-Wawi 1.8 0
Neu Kinderartikel per Ameise vom Vater lösen Arbeitsabläufe in JTL-Wawi 6
Neu Probleme bei Aufgabenplaner (Export-Manger) per Cronjob JTL-Shop - Fehler und Bugs 1

Ähnliche Themen