Eure regex im Workflow

gnarx

Sehr aktives Mitglied
18. Januar 2018
3.829
525
Erst nochmal vielen Dank für deine Hilfe Tom!
Wir bauen uns das System weiter aus und zwar über Rückhaltegründe.

Ziel ist es das keine manuelle Überprüfung der Adressen mehr stattfindet. Das heißt per WF wird alles geprüft was auch ein Mitarbeiter prüfen kann.
Diese WF´s werden dann erweitert da die jetzt im laufenden Betrieb genutzt werden und in einer Übergangszeit noch Abfragen dazu kommen die sich im Betrieb erst zeigen.

1. Als erstes haben wir uns einen WF gebaut der der die EU Schreibweisen der PLZ`s prüft. (https://forum.jtl-software.de/threads/tipp-plz-fuer-europa-pruefen-und-zurueckhalten.129329/)
2. Diese werden dann auf "Postleitzahl falsch" als Rückhaltegrund gesetzt.
3. Nun muss ja der Mitarbeiter recherchieren wie die richtige PLZ ist. Das machen wir über einen manuellen WF der Google Maps aufruft, mit Straße, Ort, und Land. Die PLZ lassen wir bei der Abfrage raus da ja die Syntax falsch ist.
Anhand des Feldes "Rückhaltegrund" welches wir eingeblendet haben in der Listenansicht, kann der Mitarbeiter sofort sehen was nicht richtig ist.

Folgenden Code haben wir bis jetzt dafür:
Code:
{% assign maps = 'https://www.google.de/maps/place/' -%}
{% if Vorgang.Stammdaten.Rückhaltegrund.Name == "Postleitzahl falsch" %}
explorer "{{ maps }}{{ Vorgang.Lieferung.Lieferadresse.Straße }},+{{ Vorgang.Lieferung.Lieferadresse.Ort }},+{{ Vorgang.Lieferung.Lieferadresse.Landname }}"
{% elsif Vorgang.Stammdaten.Rückhaltegrund.Name == "Strasse falsch" %}
explorer "{{ maps }}{{ Vorgang.Lieferung.Lieferadresse.PLZ }},+{{ Vorgang.Lieferung.Lieferadresse.Ort }},+{{ Vorgang.Lieferung.Lieferadresse.Landname }}"
{% elsif Vorgang.Stammdaten.Rückhaltegrund.Name == "Ortsname falsch" %}
explorer "{{ maps }}{{ Vorgang.Lieferung.Lieferadresse.Straße }},+{{ Vorgang.Lieferung.Lieferadresse.PLZ }},+{{ Vorgang.Lieferung.Lieferadresse.Landname }}"
{% else %}
explorer "{{ maps }}{{ Vorgang.Lieferung.Lieferadresse.Straße }},+{{ Vorgang.Lieferung.Lieferadresse.PLZ }},+{{ Vorgang.Lieferung.Lieferadresse.Landname }}"
{% endif %}
Hinter "explorer" kann man sehen welche Felder nun zu Google Maps übertragen werden. Das else ist nur noch für eine, bei uns häufige Suche ohne Rückhaltegrund. Kommt später denn weech.

Straße haben wir grad angefangen da fragen wir momentan nur ab ob ein Fragezeichen vorkommt, kein Buchstabe enthalten ist, ob keine Zahl vorhanden ist. Wird ausgebaut!
Ort kommt jetzt auch dazu mit der Abfrage steht ein OT drinne, oder folgende Zeichen / ( , ) dann Rückhaltegrund.
Dann haben wir uns noch e-Mail in falschen Feld gebaut. Heißt wenn der Klammeraffe in anderen Feldern vorkommt als email Adresse, dann Rückhaltegrund.

Für alles weitere was wir nicht bestimmen können machen wir uns WF`s die die Fehlermeldung von z.B. DHL auswertet und je nachdem welcher Fehler gemeldet wurde Google Maps mit den entsprechenden Parametern am Packplatz automatisch öffnet.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Newald1004

_simone_

Sehr aktives Mitglied
17. Februar 2013
3.240
452
Emsland
Firma
Notun Delend
Schön, dass du uns am WF teilhaben lässt. Wenn ich noch mit regulären Ausdrücken helfen kann....ich würde mich glatt daran versuchen.
 

gnarx

Sehr aktives Mitglied
18. Januar 2018
3.829
525
Oh gerne, hatte mich schon nicht mehr getraut zu fragen. Da kommt bestimmt noch was an Fragen. Grad auch zur Optimierung einiges kann man bestimmt eleganter abfragen. Melde mich dann.
Mir ist auch nicht klar ob das jemand gebrauchen kann, aber was solls ich poste das halt einfach mal.
 

gnarx

Sehr aktives Mitglied
18. Januar 2018
3.829
525
Ich stelle fest das ich für dieses RegEx Zeugs zu blöd bin. Seit 3 Tagen versuche ich was hinzubekommen was dauert an irgendeiner Sache nicht funzt.
Als erstes habe ich mir was gebaut damit ich nicht dauernd einen Verkauf ändern muss.
Code:
{% assign Variable = "Rotestraße 12 OT" %}\

{% assign fragezeichen = Variable | Matches: '[?]'|true  %}\
{% assign strassebuchstabe = Variable | Matches: '[A-Za-z]', true  %}\
{% assign strassezahl = Variable | Matches: '[0-9]', true  %}\
{% assign co = Variable | Matches: '[c/o]'|true  %}\
{% assign ot = Variable | Matches: '[OT]'|true  %}\

{% if Variable == "" %}Feld leer\
{% elsif fragezeichen == true %}Fragezeichen enthalten
{% elsif strassebuchstabe != true %}Buchstabe nicht enthalten
{% elsif strassezahl != true %}Zahl nicht enthalten
{% elsif co == true %}c/o enthalten
{% elsif ot == true %}OT enthalten
{% else %}Alles andere\
{% endif %}
Die Variable "Variable" ändere ich dann einfach gegen das JTL Feld aus und ändere die Ausgabe einfach in für alles okay und 1 für zurück halten.

Es scheint jetzt zu laufen bis auf "c/o" und "OT". Was macht der WF, an Hand des Feldes "{{ Vorgang.Lieferung.Lieferadresse.Straße }}":
1. Steht da ein Fragezeichen drinne zurück halten (Straße falsch)
2. Steht kein Buchstabe drinne zurück halten (Straße falsch)
3. Steht keine Zahl drinne zurück halten (Straße falsch)
4. Steht ein c/o drinne zurück halten (Straße falsch)
5. Steht ein OT drinne, hier muss es genau OT heißen damit z.B. Rotestrasse nicht auch falsch gemeldet wird, zurück halten (Straße falsch)

Wie gesagt die letzten beiden gehen nicht.

Noch eine Frage was heißt das Sternchen vor einer Anweisung? Kann man nicht 2. und 3. in einer Zeile abarbeiten?
 
Zuletzt bearbeitet:

_simone_

Sehr aktives Mitglied
17. Februar 2013
3.240
452
Emsland
Firma
Notun Delend
Der Slash "/" ist ein Steuerzeichen und muß mit \ ecaped werden und dein "c/o" muß mit einer boundery (Wortgrenze) versehen werden, also --> \bc\/o\b
Ähnlich für OT --> \bOT\b

Wo ist denn ein Sternchen?
 

gnarx

Sehr aktives Mitglied
18. Januar 2018
3.829
525
Das wars super. Danke dir!

Hier sind die Sternchen drinne:
Code:
{% elsif drei == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{3}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\

Ich habe das Gefühl das wenn ich eine RegEx in den Erweiterten habe die anders geschrieben sind als wenn ich eine RegEx direkt im WF nutze. Kann das sein?
 

_simone_

Sehr aktives Mitglied
17. Februar 2013
3.240
452
Emsland
Firma
Notun Delend
Die Syntax ist bei den regex eigentlich immer gleich...
Das Sternchen ist nicht nur ein Sternchen, sondern eine Leerstelle mit Sternchen. D.h.:
Null oder beliebig viele Leerstellen VOR den drei digits (Zahlen)
 

gnarx

Sehr aktives Mitglied
18. Januar 2018
3.829
525
Okay so nun habe ich auch mal was alleine hin bekommen, es geht also vorwärts. Recht vielen Dank.
 

gnarx

Sehr aktives Mitglied
18. Januar 2018
3.829
525
Hoffe ich nerve nicht. Zwei Sachen hätte ich momentan noch.
1. Litauen kann mit LT vorweg sein oder auch nicht. Wie ich da das Fragezeichen setze weiß ich nicht
Code:
*\b[L][T] ?\-?\ ?\d{5}\b'

2. Kann ich auch mit RegEx folgendes darstellen bzw. prüfen:
Straße: "Randstrasse 12a im Anbau" als Beispiel. Nun möchten die das ich zurückhalte wenn hinter der Hausnummer mehr als 3 Buchstaben sind.
 

gnarx

Sehr aktives Mitglied
18. Januar 2018
3.829
525
Hi
zu 2. ja das wäre der Fall also Straßennamen, Nummer, Leerzeichen oder auch nicht und dann 3 Zeichen höchstens. Könnte ja auch heißen "Meine Straße 15 a1" bzw. der Bindestrich also denke ich 3 beliebige Zeichen sind besser.
 

gnarx

Sehr aktives Mitglied
18. Januar 2018
3.829
525
Nur zur Info ich gehe jetzt jeden morgen mit dem Mitarbeiter seine Verkäufe durch wo er was anpassen muss. Dann modifiziere ich dahingehend die WF`s. Sobald der nix mehr hat in der Liste sondern das alles schön in Zurückgehalten ist poste ich die WF`s unter meinen Tipps.
 

gnarx

Sehr aktives Mitglied
18. Januar 2018
3.829
525
Das wars danke dir.
Sag mal Bescheid wenn du was für deinen Computer brauchst oder zum Reiten oder für den Hund oder Geschenke oder Fototapeten oder Sonstiges.
 
  • Haha
Reaktionen: _simone_

_simone_

Sehr aktives Mitglied
17. Februar 2013
3.240
452
Emsland
Firma
Notun Delend
Im Mom brauche ich:
  • 2x identische Rechner im 19" Rack mit i7 und Win10
  • Zum Reiten einen neuen Metzler K3 190/55 ZR 17
  • für den Hund mehr Zeit (hab z.Z. keinen Hund 😥 )
  • Fototapete nicht, hab Fenster ins Grüne
  • ...und für Sonstiges reicht der Platz im Thread nicht^^
...alles gut ;)
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Wie setzt Ihr eure Dev/Staging Umgebungen auf? Betrieb / Pflege von JTL-Shop 0
Neu JTL-Shop oder Workflow: Artikel mit Menge > 1 sollen trotzdem als separate Einzelartikel im Auftrag aufgeführt werden User helfen Usern - Fragen zu JTL-Wawi 0
Neu Workflow - Stücklisten im Auftrag abfragen und korrekt in einer Mail auflisten User helfen Usern - Fragen zu JTL-Wawi 1
Workflow = Gewinn unter 30 % vom netto = per Mail informiert JTL-Wawi 1.6 10
Verwiesen an Support BUG: Mahnlauf über Workflow ignoriert Zahlungsziel JTL-Workflows - Fehler und Bugs 3
Neu Wie gebrauchte Waren bei Ebay einstellen? Workflow User helfen Usern - Fragen zu JTL-Wawi 0
Neu Workflow - Mobile App Neukunden identifizieren User helfen Usern - Fragen zu JTL-Wawi 4
Neu Workflow - Stücklistenartikel abfragen User helfen Usern - Fragen zu JTL-Wawi 2
Neu Workflow - Positionen an Dropshipping-Lieferant mailen. Warum funktioniert dieser Code nicht? User helfen Usern - Fragen zu JTL-Wawi 1
Neu Workflow bei Login in WMS / WAWI starten User helfen Usern - Fragen zu JTL-Wawi 10
Neu Workflow - als Bedingung Standard-Dropshipping-Lieferantenname prüfen Gelöste Themen in diesem Bereich 5
Nach Aufruf von Stored Procedure 'Kunde.spKundeUpdate' schwere Fehler in JTL (z.B. Kundenliste, Workflow-Editor) JTL-Wawi 1.8 2
Neu Feldname für Workflow herausfinden User helfen Usern - Fragen zu JTL-Wawi 4
Workflow - internationaler Auftrag -> Artikelname aus Stammdaten JTL-Wawi 1.7 1
JTL Mahnwesen Workflow- Email nach 30 Tagen noch nicht bezahlt. JTL-Wawi 1.8 2
Neu Workflow der bei Stücklisten: Überverkäufe de-/aktivieren User helfen Usern - Fragen zu JTL-Wawi 11
Neu Workflow Aktion E-Mail senden kann nicht Plain und HTML Email zusammen versenden Arbeitsabläufe in JTL-Wawi 6
Workflow Manuell HTML Request wie Server Antwort verarbeiten JTL-Wawi 1.7 0
Workflow Marktplätze - Otto, Kaufland, etc. JTL-Wawi 1.6 0
Workflow Artikel + Anzahl in Einkaufsliste aktualisieren JTL-Wawi 1.8 0
Neu Workflow Web-Request Post für mollie Arbeitsabläufe in JTL-Wawi 6
Workflow MwSt.-Sätze ersetzen 0% -> 19% ändert netto in Positionen aber nicht in der Auftragssumme JTL-Wawi 1.7 2
Neu API Integration via Workflow Arbeitsabläufe in JTL-Wawi 10
In Diskussion Automatische Zuweisung der Kategorien für Artikel durch Workflow JTL-Workflows - Ideen, Lob und Kritik 3
In Bearbeitung Workflow offene Aufträge zusammenfassen bei ausgelieferten JTL-Workflows - Ideen, Lob und Kritik 1
Neu Workflow-Auswahl ... mit ins Kontext-Menü aufnehmen (rechten Maustaste) JTL-Wawi - Ideen, Lob und Kritik 2
Neu Benachrichtigung per Workflow bei Wareneingang User helfen Usern - Fragen zu JTL-Wawi 24
Workflow für Artikel versandklassen JTL-Wawi 1.7 1
Gelöst Per Workflow im Servicedesk eine Mail versenden. Gelöste Themen in diesem Bereich 4
Workflow für Versandart Wenn/Und JTL-Wawi 1.7 0
Workflow für Amazon Zahlart erstellen JTL-Wawi 1.7 0
In Diskussion Workflow von Stornobelege Rechnung JTL-Workflows - Ideen, Lob und Kritik 1
Workflow Auftraqspositionen per Email an Kunden senden JTL-Wawi 1.7 3
Gelöst Servicedesk Workflow Datei erstellen um einen Auftrag zu ändern Gelöste Themen in diesem Bereich 1
Neu Workflow mit Freipositionen in Email Gelöste Themen in diesem Bereich 3
Neu Workflow > Rechnungen > Label Setzen ? (1.8.11) User helfen Usern - Fragen zu JTL-Wawi 6
Neu Workflow Ereignis auslösen wenn alle Bedingungen erfüllt sind. Sonst anderes Ereignis auslösen. JTL-Wawi - Ideen, Lob und Kritik 0
Beantwortet Kunde von Firma per Workflow setzen JTL-Workflows - Ideen, Lob und Kritik 1
Neu Workflow für Rechnung gesucht Arbeitsabläufe in JTL-Wawi 1
Workflow - Debitorennummer JTL-Wawi 1.8 4
In Diskussion Workflow - Artikelmerkmale setzen? JTL-Workflows - Ideen, Lob und Kritik 2
Workflow: Mahnungen - Fehler JTL-Wawi 1.8 5
Neu Workflow Lieferantenartikel-Nummer vor Artikelname setzen JTL-Wawi 1.7 1
In Diskussion Workflow wenn offene Rechnungen, dann weitere offene Aufträge sperren und im Kundensatz Sperrung setzten. JTL-Workflows - Ideen, Lob und Kritik 0
Workflow für Kaufland greift nicht mehr 1.8.11.0 kaufland.de - Anbindung (SCX) 5
[JTL-WAWI API] - Trigger Sales Order Workflow Event JTL-Wawi 1.8 3
Workflow-Bug: 1.8.11 Attribute in Workflow setzen JTL-Wawi 1.8 10
In Diskussion Workflow, Wert setzen aus Zwischenablage/Clipboard JTL-Workflows - Ideen, Lob und Kritik 0
Neu EK-Preise per Workflow in Lieferantenbestellung einfügen? User helfen Usern - Fragen zu JTL-Wawi 0
Neu Workflow Rechnungsvorlage ändern klappt nicht - Wawi 1.7.13.1 User helfen Usern - Fragen zu JTL-Wawi 0

Ähnliche Themen