Hallo, ich habe den Wiki-Artikel zum Erstellen der Versandkostenregeln nach Postleitzahl durchgelesen. Nun habe ich hier folgende Situation: 101,50 € sollen berechnet werden für die Postleitzahl-Bereiche 33-37 44-49 usw usw. Mit der eigenen Versandkostenbedingung IFNULL(us.zipcode,ub.zipcode) > ‘33000’ AND IFNULL(us.zipcode,ub.zipcode) < ‘37999’ AND IFNULL(us.countryID,ub.countryID) = 2 habe ich den ersten Versandkostenbereich abgedeckt, funktioniert auch gut. Nun meine Frage: Wie kann ich den zweiten PLZ-Bereich dazunehmen. Ich hatte es schonmal so versucht: IFNULL(us.zipcode,ub.zipcode) > ‘33000’ AND IFNULL(us.zipcode,ub.zipcode) < ‘37999’ IFNULL(us.zipcode,ub.zipcode) > ‘44000’ AND IFNULL(us.zipcode,ub.zipcode) < ‘49999’ AND IFNULL(us.countryID,ub.countryID) = 2 Damit bekomme ich aber eine SQLSTATE[42000]: Syntax error or access violation: im Warenkorb dann. Kann mir jemand sagen wie die Sytax aussehen muss? LG chop
Hi, lege für die zweite Serie Postleitzahlen eine neue Versandkostentabelle an, da ja hier andere Preise gelten. Du hast auch oben die gleichen PLZ drin. Viell. ist das der Fehler, oder war das nur ein Beispiel??? Ich habe es z.B. so drin: IFNULL(us.zipcode,ub.zipcode) = ‚27498‘ OR IFNULL(us.zipcode,ub.zipcode) = ‚27499‘ OR IFNULL(us.zipcode,ub.zipcode) = ‚83256‘ AND IFNULL(us.countryID,ub.countryID) = 2
Hallo Petra, nein, kein anderer Preis. Für die PLZ-Bereiche 33-37 44-49 soll die Versandpauschale 101,50 € gelten. Muss ich deswegen immer eine eine neue Versandart anlegen, oder kann ich das bei meiner eigenen Versandregel mit einer anderen Sytax zusammenfassen?
Hi, ach so… ich dachte es sollen verschiedene Versandkosten sein. Nein, Du kannst alle in eins reinpacken. Versuch es mal so, ich hoffe es ist richtig. IFNULL(us.zipcode,ub.zipcode) > ‘33000’ AND IFNULL(us.zipcode,ub.zipcode) < ‘37999’ AND IFNULL(us.zipcode,ub.zipcode) > ‘44000’ AND IFNULL(us.zipcode,ub.zipcode) < ‘49999’ AND IFNULL(us.countryID,ub.countryID) = 2
[quote=“artep”]Hi, ach so… ich dachte es sollen verschiedene Versandkosten sein. Nein, Du kannst alle in eins reinpacken. Versuch es mal so, ich hoffe es ist richtig. IFNULL(us.zipcode,ub.zipcode) > ‘33000’ AND IFNULL(us.zipcode,ub.zipcode) < ‘37999’ AND IFNULL(us.zipcode,ub.zipcode) > ‘44000’ AND IFNULL(us.zipcode,ub.zipcode) < ‘49999’ AND IFNULL(us.countryID,ub.countryID) = 2[/quote] Hallo Petra, danke für deine Mühe aber dein Ansatz funktioniert so leider nicht. Ich bekomme dann zB für die Postleitzahl 34497 Versandkosten von 0 Euro ausgegeben. Ich habe folgendes angelegt: IFNULL(us.zipcode,ub.zipcode) \> '33000' AND IFNULL(us.zipcode,ub.zipcode) \< '37999' AND IFNULL(us.zipcode,ub.zipcode) \> '44000' AND IFNULL(us.zipcode,ub.zipcode) \< '47999' AND IFNULL(us.zipcode,ub.zipcode) \> '50000' AND IFNULL(us.zipcode,ub.zipcode) \< '51999' AND IFNULL(us.zipcode,ub.zipcode) \> '55000' AND IFNULL(us.zipcode,ub.zipcode) \< '59999' AND IFNULL(us.zipcode,ub.zipcode) \> '67000' AND IFNULL(us.zipcode,ub.zipcode) \< '67999' AND IFNULL(us.zipcode,ub.zipcode) \> '62000' AND IFNULL(us.zipcode,ub.zipcode) \< '62999' AND IFNULL(us.zipcode,ub.zipcode) \> '80000' AND IFNULL(us.zipcode,ub.zipcode) \< '86999' AND IFNULL(us.zipcode,ub.zipcode) \> '89000' AND IFNULL(us.zipcode,ub.zipcode) \< '89999' AND IFNULL(us.zipcode,ub.zipcode) \> '90000' AND IFNULL(us.zipcode,ub.zipcode) \< '91999' AND IFNULL(us.zipcode,ub.zipcode) \> '97000' AND IFNULL(us.zipcode,ub.zipcode) \< '97999' AND IFNULL(us.zipcode,ub.zipcode) \> '01000' AND IFNULL(us.zipcode,ub.zipcode) \< '03999' AND IFNULL(us.zipcode,ub.zipcode) \> '08000' AND IFNULL(us.zipcode,ub.zipcode) \< '14999' AND IFNULL(us.zipcode,ub.zipcode) \> '16000' AND IFNULL(us.zipcode,ub.zipcode) \< '16999' AND IFNULL(us.zipcode,ub.zipcode) \> '20000' AND IFNULL(us.zipcode,ub.zipcode) \< '22999' AND IFNULL(us.zipcode,ub.zipcode) \> '29000' AND IFNULL(us.zipcode,ub.zipcode) \< '32999' AND IFNULL(us.zipcode,ub.zipcode) \> '38000' AND IFNULL(us.zipcode,ub.zipcode) \< '39999' AND IFNULL(us.zipcode,ub.zipcode) \> '99000' AND IFNULL(us.zipcode,ub.zipcode) \< '99999' AND IFNULL(us.countryID,ub.countryID) = 2
Grundlage für die Berechnungen soll diese Tabelle sein: Klick Ich möchte erstmal die PLZ Bereiche mit 101,50 € anlegen. Vielleicht hast du noch eine Idee? LG chop
Niemand sonst mehr eine Idee wie man das zusammenfassen kann?
Nochmal Push… Ich komme leider nicht weiter. Kann mir jemand vom Team nicht zumindest sagen ob es prinzipiell möglich sein kann, oder ob ich für jeden PLZ-Bereich eine eigene Versandart anlegen muss. Nochmal zusammengefasst: Es funktioniert nur wenn ich einen PLZ-Bereich angebe, zB.: IFNULL(us.zipcode,ub.zipcode) \> '33000' AND IFNULL(us.zipcode,ub.zipcode) \< '37999' AND IFNULL(us.countryID,ub.countryID) = 2
Sobald ich es mit 2 Bereichen mache, zB: IFNULL(us.zipcode,ub.zipcode) \> '33000' AND IFNULL(us.zipcode,ub.zipcode) \< '37999' AND IFNULL(us.zipcode,ub.zipcode) \> '44000' AND IFNULL(us.zipcode,ub.zipcode) \< '47999' AND IFNULL(us.countryID,ub.countryID) = 2
Wird die Versandregel komplett ignoriert. Konfiguriert habe ich eine Standardversandart von 0 € bis beliebig und die Versandkostentabelle mit den PLZ Bereichen als Aufschlags-Versandart, ebenfalls von 0 € bis beliebig. Bräuchte dringend Hilfe, das muss doch irgendwie möglich sein LG chop
Hallo kweb, hast Du eine Lösung gefunden? Geht es, wie von artep vorgeschlagen, mit OR? Viele Grüße
Nur mal so als Zwischenfrage. Was ist der Usecase dafür?
Probier mal: ((IFNULL(us.zipcode,ub.zipcode) \>= '33000' AND IFNULL(us.zipcode,ub.zipcode) \<= '37999') || (IFNULL(us.zipcode,ub.zipcode) \>= '44000' AND IFNULL(us.zipcode,ub.zipcode) \<= '47999'))
Das Land kannst Du über den Reiter „Länder Auswahl“ steuern.
Ich probier lieber nix. Komischer Kauderwelsch da oben. Ich sag als eCommerce-Praktiker meist immer nur was nicht geht oder was ich brauche… Nur wenn ich mal auf Superman mache, spiele ich mit den Codes. Ich würde gerne mehr über den Grund der PLZ Einschränkung erfahren. Möchtest du ein Bundesland aus politischen Gründen komplett ausgrenzen oder sind die Versandkosten in manche Gegenden höher/niedriger… Gruß Patrick
Hallo Patrick,
ich habe ein Ähnliches Problem.
Der Hintergrund ist in der Tat, dass Spedition PLZ in Zonen einteilen und die kosten teilweise dramatisch auseinander gehen.
Hierbei lassen die Speditionen scheinbar die durchschnittliche Häufigkeit der anlieferung in einem PLZ-Gebiet mit einfliessen, so sind Ballungszentren und direkte umgebung günstiger als andere Lagen.
Zusätzlich schlägt sich im Preis natürlich die entfernung vom Lager / Versender zur Ziel - PLZ deutlich nieder.
Ich hoffe, dass beantwortet die Frage nach dem Warum
Viele Grüße
Hotte