Moin, wenn ein Artikel bestellt wird wo der Haken bei „Artikel als Versandkostenfrei markieren“ gesetzt ist, aber noch ein anderer Artikel dazu bestellt wird wo dieser Haken nicht gesetzt ist (also mit Artikel mit Versandkosten), ist die komplette Bestellung trotzdem versandkostenfrei. Das ist doch nicht richtig oder?
Beispiel Warenkorb:
1 Rad - 3,00 Euro Versandkosten
1 Radbefestigung - 0,00 Euro Versandkosten
Wird beides zusammen bestellt ist auch das Rad versandkostenfrei, kann ich das irgendwo einstellen und ändern? Danke!
Hatte ich kürzlich auch einrichten müssen, suche via Google (auch im Forum) hat mir weiter geholfen, steht so aber auch tief vergraben in der Doku.
Du brauchst zwei Versandarten - also Standardversand und Versankostenfrei.
Zunächst gehst Du nach „Einstellungen“ => „Storefront“ => „Versandkostenmodul“.
Dort findest Du „Erweiterte SQL-Abfrage“. Das Feld ergänzt Du mit , MIN(d.shippingfree) = 1 as allshippingfree
(nicht das Komma vergessen)
Nun gehst Du in die Einstellungen für den Standardversand - dort auf das Tab „Erweiterte Einstellungen“.
Dort setzt Du das Feld „Versandkostenfreie Artikel“ auf „Unterstützen, aber Versandkosten trotzdem berechnen“
Und trägst in das Feld „Eigene Bedingungen“ !allshippingfree ein.
Dann für die Versandart „Versankostenfrei“ die gleichen Felder: „unterstützen“ und allshippingfree
Die SQL-Abfrage ermittel, ob alle Positionen Versandkostenfrei sind, entsprechend wird allshippingfree auf wahr/falsch (1/0) gesetzt. Es wird der kleinste Wert geliefert, haben also alle Artikel den Haken, ist es „1“, ist eine Position dabei, die nicht Versandkostenfrei ist, der kleinste Wert von d.shippingfree = 0, und damit allshippingfree auch 0.
Wenn also alle Positionen Versandkostenfrei sind, wird Standardversand nicht ausgefüht, dafür Versandkostenfrei - und umgekehrt
Wenn keine weiteren komplexen Bedingungen dazu kommen, funktioniert das so.
ich habe das ebenfalls so umgesetzt. Funktioniert auch tadellos. Nur habe ich nun folgendes Phänomen entdeckt:
Unsere Kundengruppen enthalten einen Warenkorbrabatt. Wenn die versandkostenfreie Artikel im Warenkorb diesen Wert überschreiten, werden die Versandkosten wieder berechnet.
Beispiel:
Warenkorbrabatt = 500,-
Im Warenkorb liegt 1 x Artikel XY versandkostenfrei mit Einzelpreis = 200,-
Die Versandkosten sind = 0,-
Im Warenkorb liegt 3 x Artikel XY versandkostenfrei mit Einzelpreis = 200,-
Die Versandkosten sind = 5,95
Das passiert auch, wenn mehrere versandkostenfreie Artikel im Warenkorb liegen und den Warenkorbrabatt in der Summe übersteigen.
Falls es jemandem hilft: Hier noch einmal eine Lösung, bei der die Versandkosten nach Gewicht berechnet werden.
Bei der Versandart, die nach Gewicht berechnet, muss die Staffelung bei >0 starten also z.B. „0,1“. Außerdem muss dort unter Erweiterte Einstellungen > Versandkostenfreie Artikel die Auswahl „Unterstützen, aber Versandkosten trotzdem berechnen“ gewählt werden.
Unter Grundeinstellungen > Versandkosten-Modul > Erweitere SQL-Abfrage ergänzt man „, SUM(IF(b.shippingfree=0, d.weight*b.quantity, 0)) as weight“ ergänzen. Das überschreibt die Gewichtsberechnung.
Wenn nun Artikel als versandkostenfrei markiert sind, sind sie für shopware so, als ob sie 0 KG schwer sind und werden deshalb bei der Versandkostenberechnung nicht berücksichtigt.
Unter Grundeinstellungen > Versandkosten-Modul > Erweitere SQL-Abfrage ergänzt man „, SUM(IF(b.shippingfree=0, d.weight*b.quantity, 0)) as weight“ ergänzen. Das überschreibt die Gewichtsberechnung.
Die wichtige Aussage, die mir weder Agentur, noch der Support gegeben hat.
Dieser Thread hat mir wirklich sehr weitergeholfen und beide Wegen funktionieren, danke dafür! ABER jetzt ist mein Problem, dass die Versandberechnung nach Gewicht mit den Einstellungen oben kollidiert mit dem “Versandkostenfrei” Modus der Advanced Promotion Suite
Das scheint für viele kein Problem zu sein, bei uns ist es leider recht gross und ich finde keinen Weg drum herum. Shopware hat ein Ticket erstellt fürs Backlog. ich wäre Euch also wirklich richtig dankbar, wenn Ihr kurz voten würdet!
Hatte ich kürzlich auch einrichten müssen, suche via Google (auch im Forum) hat mir weiter geholfen, steht so aber auch tief vergraben in der Doku.
Du brauchst zwei Versandarten - also Standardversand und Versankostenfrei.
Zunächst gehst Du nach „Einstellungen“ => „Storefront“ => „Versandkostenmodul“.
Dort findest Du „Erweiterte SQL-Abfrage“. Das Feld ergänzt Du mit , MIN(d.shippingfree) = 1 as allshippingfree
(nicht das Komma vergessen)
Nun gehst Du in die Einstellungen für den Standardversand - dort auf das Tab „Erweiterte Einstellungen“.
Dort setzt Du das Feld „Versandkostenfreie Artikel“ auf „Unterstützen, aber Versandkosten trotzdem berechnen“
Und trägst in das Feld „Eigene Bedingungen“ !allshippingfree ein.
Dann für die Versandart „Versankostenfrei“ die gleichen Felder: „unterstützen“ und allshippingfree
Die SQL-Abfrage ermittel, ob alle Positionen Versandkostenfrei sind, entsprechend wird allshippingfree auf wahr/falsch (1/0) gesetzt. Es wird der kleinste Wert geliefert, haben also alle Artikel den Haken, ist es „1“, ist eine Position dabei, die nicht Versandkostenfrei ist, der kleinste Wert von d.shippingfree = 0, und damit allshippingfree auch 0.
Wenn also alle Positionen Versandkostenfrei sind, wird Standardversand nicht ausgefüht, dafür Versandkostenfrei - und umgekehrt
keine weiteren komplexen Bedingungen dazu kommen, funktioniert das so.
Vielen Dank für die perfekte Lösung!!! Hat bestens funktioniert
Ich bin mir nicht sicher was ich falsch mache oder ob ich das ganze einfach falsch verstehe.
Wenn ich einen Versandkostenfreien Artikel habe und einen Artikel der nach Warenwert berechnet wird, habe ich das Problem, dass der Versandkostenfreie Artikel im Warenwert dazu berechnet wird. Gibt es dazu auch eine Lösung?
Ich habe mal folgendes probiert, leider ohne Erfolg:
SUM(IF(b.shippingfree=0, b.price*b.quantity, 0)) as price
Hi! Das funktioniert super! Weiß jemand, ob man das Feld:
b.shippingfree
auf der Front-End-Detailsseite abfragen kann, so dass bei Artikeln, die als Versandkostenfrei definiert sind, dann nicht „zzgl. Versandkosten“ sondern eben Versandkostenfrei steht?