Neu TIPP: PLZ für Europa prüfen und Zurückhalten

  • Ersteller des Themas Ersteller des Themas gnarx
  • Erstellungsdatum Erstellungsdatum

gnarx

Sehr aktives Mitglied
18. Januar 2018
3.901
545
Hier nun der WF für die Postleitzahlen. Um zu wissen welche PLZ`s richtig sind hier mal eine Liste der DHL: https://www.dhl.de/content/dam/imag...express-internationale-plz-formate-012017.pdf
Ich habe in den Workflow die Abfragen nach unseren Erfahrungen angepasst. Mal am Beispiel Polen, die korrekte Schreibweise ist 99-999. Bei uns sind folgende Schreibweisen, die bei DHL durchgehen, vorhanden: 99-999, 99999, 99 - 999, 99- 999, und 99 -999. Diese Möglichkeiten habe ich soweit bei den PLZ`s mit eingebaut:
Habt ihr noch andere Schreibweisen immer her her damit baue ich dann ein. Gerne auch Verbesserungen am Workflow hier posten. International kann man den WF auch machen ist aber Arbeit, vielleicht später mal.

2020-06-02 07_57_08-CSB-JTL Server NEU - AnyDesk.jpg
Code:
{% assign drei = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(FO|IS)'|true  %}\
{% assign vier = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(BE|BG|DK|AT|SI|HU|CY|CH|NO)'|true  %}\
{% assign fuenf = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(DE|EE|FI|FR|GR|IT|HR|LT|SM|ES|VA|UA|TR)'|true  %}\
{% assign sechs = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(RO|RU|BY|RS)'|true  %}\
{% assign irland = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(IE)'|true  %}\
{% assign lettland = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(LV)'|true  %}\
{% assign luxemburg = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(LU)'|true  %}\
{% assign malta = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(MT)'|true  %}\
{% assign holland = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(NL)'|true  %}\
{% assign polen = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(PL)'|true  %}\
{% assign portugal = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(PT)'|true  %}\
{% assign slowakei = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(SK)'|true  %}\
{% assign tsche = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(CZ)'|true  %}\
{% assign england = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(GB)'|true  %}\
{% assign schweden = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(SE)'|true  %}\
{% if Vorgang.Lieferung.Lieferadresse.PLZ == "" %}1\
{% elsif drei == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{3}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif vier == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif fuenf == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{5}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif sechs == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{6}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif irland == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\w\d{2}\ ?\w{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif lettland == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b[L][V] ?\-?\ ?\d{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif luxemburg == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b[L] ?\-?\ ?\d{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif malta == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\w{3}\ ?\d{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif holland == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{4}\ ?\w{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif polen == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{2}\ ?\-?\ ?\d{3}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif portugal == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{4}\ ?\-?\ ?\d{3}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif slowakei == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{3}\ ?\d{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif tsche == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{3}\ ?\d{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif england == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\w\w?\d\w?\ ?\d\w\w\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif schweden == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\w?\w?\ ?\-?\ ?\d{3}\ ?\d{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% else %}1
{% endif %}\

Diese WF https://forum.jtl-software.de/threads/tipp-seite-um-plz-und-sonstiges-zu-pruefen.128871/ kommt neu mit Google Maps. Grund ist das man bei Google Maps mehrere Selektoren übergeben kann.
Das heißt wenn die Prüfung ergibt das die PLZ falsch ist dann habe ich ja einen Rückhaltegrund den ich Abfragen kann. Deshalb überträgt der manuelle WF nur noch Land, Ort und Straße.
 
Zuletzt bearbeitet:

gnarx

Sehr aktives Mitglied
18. Januar 2018
3.901
545
So nach einiger Zeit hat sich das jetzt mit den PLZ eingespielt. Daher mache ich jetzt hier noch ein Update des Codes:

Code:
{% assign drei = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(FO|IS)'|true  %}\
{% assign vier = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(BE|BG|DK|AT|SI|HU|CY|CH|NO|MK)'|true  %}\
{% assign fuenf = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(DE|EE|FI|FR|IT|HR|SM|ES|VA|UA|TR)'|true  %}\
{% assign sechs = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(RO|RU|BY|RS)'|true  %}\
{% assign irland = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(IE)'|true  %}\
{% assign lettland = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(LV)'|true  %}\
{% assign luxemburg = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(LU)'|true  %}\
{% assign malta = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(MT)'|true  %}\
{% assign holland = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(NL)'|true  %}\
{% assign polen = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(PL)'|true  %}\
{% assign portugal = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(PT)'|true  %}\
{% assign slowakei = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(SK)'|true  %}\
{% assign tsche = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(CZ)'|true  %}\
{% assign england = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(GB)'|true  %}\
{% assign schweden = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(SE)'|true  %}\
{% assign griechenland = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(GR)'|true  %}\
{% assign litauen = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(LT)'|true  %}\
{% if Vorgang.Lieferung.Lieferadresse.PLZ == "" %}1\
{% elsif drei == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{3}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif vier == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif fuenf == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{5}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif sechs == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{6}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif irland == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\w\d{2}\ ?\w{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif lettland == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\bL?V? ?\-?\ ?\d{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif luxemburg == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' bL? ?\-?\ ?\d{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif malta == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\w{3}\ ?\d{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif holland == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{4}\ ?\w{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif polen == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{2}\ ?\-?\ ?\d{3}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif portugal == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{4}\ ?\-?\ ?\d{3}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif slowakei == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{3}\ ?\d{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif tsche == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{3}\ ?\d{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif england == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\w\w?\d\w?\ ?\d\w\w\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif schweden == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\w?\w?\ ?\-?\ ?\d{3}\ ?\d{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif griechenland == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{3}\ ?\d{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif litauen == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' \bL?T? ?\-?\ ?\d{5}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% else %}1
{% endif %}\
 

gnarx

Sehr aktives Mitglied
18. Januar 2018
3.901
545
Letzte Version:

Code:
{% assign drei = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(FO|IS)'|true  %}\
{% assign vier = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(BE|BG|DK|AT|SI|HU|CY|CH|NO|MK|LU|AL)'|true  %}\
{% assign fuenf = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(DE|EE|FI|FR|IT|HR|SM|ES|VA|UA|TR|RS)'|true  %}\
{% assign sechs = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(RO|RU|BY|RS)'|true  %}\
{% assign irland = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(IE)'|true  %}\
{% assign lettland = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(LV)'|true  %}\
{% assign luxemburg = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(LU)'|true  %}\
{% assign malta = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(MT)'|true  %}\
{% assign holland = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(NL)'|true  %}\
{% assign polen = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(PL)'|true  %}\
{% assign portugal = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(PT)'|true  %}\
{% assign slowakei = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(SK)'|true  %}\
{% assign tsche = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(CZ)'|true  %}\
{% assign england = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(GB)'|true  %}\
{% assign schweden = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(SE)'|true  %}\
{% assign griechenland = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(GR)'|true  %}\
{% assign litauen = Vorgang.Lieferung.Lieferadresse.LandISO | Matches: '^(LT)'|true  %}\
{% if Vorgang.Lieferung.Lieferadresse.PLZ == "" %}1\
{% elsif drei == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{3}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif vier == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif fuenf == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{5}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif sechs == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{6}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif irland == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\w\d{2}\ ?\w{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif lettland == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\bL?V? ?\-?\ ?\d{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif luxemburg == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' bL? ?\-?\ ?\d{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif malta == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\w{3}\ ?\d{4}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif holland == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{4}\ ?\w{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif polen == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{2}\ ?\-?\ ?\d{3}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif portugal == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{4}\ ?\-?\ ?\d{3}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif slowakei == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{3}\ ?\d{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif tsche == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{3}\ ?\d{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif england == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\w\w?\d\w?\ ?\d\w\w\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif schweden == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\w?\w?\ ?\-?\ ?\d{3}\ ?\d{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif griechenland == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' *\b\d{3}\ ?\d{2}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% elsif litauen == true %}\
   {% assign PLZ = Vorgang.Lieferung.Lieferadresse.PLZ | Matches: ' \bL?T? ?\-?\ ?\d{5}\b', true  %}\
   {% if PLZ == true %}0
   {% else %}1
   {% endif %}\
{% else %}1
{% endif %}\
 

Ähnliche Themen