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

cdx

Sehr aktives Mitglied
13. März 2013
1.601
54
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
580
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.601
54
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
580
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.601
54
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
580
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.601
54
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
580
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.601
54
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
580
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.601
54
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
580
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.601
54
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.601
54
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
580
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.601
54
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
580
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.601
54
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.601
54
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 Warenein- und -ausgang JTL Packtisch von Kundenwaren Arbeitsabläufe in JTL-Wawi 0
Neu Rhewa 32 Waage mit JTL-WMS / JTL-Packtisch+ verbinden JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 2
Teilrechnung erstellen mit JTL Packtisch JTL-Wawi 1.10 4
Neu Dringendes Problem: Bildabgleich nach Connector-Fix – "Parameter resourceUrl is empty" Fehler Shopify-Connector 4
Neu "Ist Standard Dropshipping Lieferant" per Ameise exportieren User helfen Usern - Fragen zu JTL-Wawi 5
XML Auftragsimport per Workflow bediinen JTL-Wawi 1.8 1
neue Zahlungsart "Barter", trotzdem erscheint "Zahlung per Überweisung und QR-Code" JTL-Wawi 1.10 1
Neu Die Leiferantendaten bei Artikelstammdaten lassen sich per Ameise nicht ändern User helfen Usern - Fragen zu JTL-Wawi 6
Neu Rechnungsversand per Mail ohne Auslieferprozess Arbeitsabläufe in JTL-Wawi 3
Neu Kategorien per Ameise importieren Schnittstellen Import / Export 8
Neu Auslesen Bestand per Lager für Workflow zur Anzeige im Onlineshop User helfen Usern - Fragen zu JTL-Wawi 4
Neu doppelt Teilliefern per WMS Arbeitsabläufe in JTL-Wawi 0
Neu Versandetikett bei Dropshipping per E-Mail mitsenden Arbeitsabläufe in JTL-Wawi 12
Vorschaubild in Kategorieansicht per Hover durch Video oder GIF ersetzen Allgemeine Fragen zu JTL-Shop 2
Ebay Angebot mit Kindartikel die keinen Bestand haben per Ameise importieren JTL-Wawi 1.6 5
In Diskussion Externe E-Mail mit Auftragsdaten per Workflow erzeugen JTL-Workflows - Fehler und Bugs 10
Neu Lieferantenbestellung per CSV Import mit Ameise Artikel VPE JTL-Ameise - Fehler und Bugs 0
Neu howto: "Rabatte irgnorieren" für einen Artikel per Ameise importieren, so dass in einem angeschlossenen POS dieser Artikel keine Rabatte bekommt User helfen Usern - Fragen zu JTL-Wawi 11
Seit Update 1.10.12.0 – Keine Rechnungserstellung per Workflow bei FBA-Aufträgen JTL-Wawi 1.10 3
Neu PayPal Rechnung per Ratepay leitet immer auf Adresseingabeseite zurück Plugins für JTL-Shop 5
Neu Kategorie Beschreibung per Ameise ändern Betrieb / Pflege von JTL-Shop 9
In Diskussion Per Workflow aktuelle Kategorie als Attribut hinterlegen JTL-Workflows - Ideen, Lob und Kritik 5
Bestellung kann nicht per Mail verschickt werden JTL-Wawi 1.10 1

Ähnliche Themen