Versandkostenberechnung je Artikel + Aufschlag

Hallo,

ich komme leider nicht weiter, vielleicht habt mir mir eine Lösung.

Ich möchte je Artikel Versandkosten hinterlegen, gelöst über ein Freitextfeld attr10 und SUM(at.attr10*b.quantity). Klappt, auch wenn ein Artikel im Warenkorb ist, der bei attr10 „0 Euro“ hinterlegt hat.

Jetzt sollen aber die Versandkosten nicht immer erneut voll berechnet werden, sondern nur um Betrag x erhört werden, je mehr Artikel im Warenkorb liegen.

Z.B.

Artikel 1 mit 10 Euro Versandkosten, je Artikel mehr, Erhöhung um 2 Euro mehr und nur für den Artikel.

-> 5 x den selben Artikel im Warenkorb: 1x 10 Euro + 4x 2 Euro, also 18 Euro Versand.

SUM(at.attr10+(b.quantity*2)) …so würde das klappen, jedoch will ich Artikel ausschließen, die bei attr10 „0 Euro“ drin haben. So wird für jeden Artikel 2 Euro addiert.

Hallo @PeterBlaumeier‍,

ich kann dir nicht genau sagen, ob das so möglich ist. Aber ich denke das es möglich ist. Schau dir doch dazu einfach mal die folgende Seite von Shopware an: https://community.shopware.com/_detail_1933.html mit der Anleitung kannst du komplexe Versandbedingungen umsetzen.

Aus deinem Beispiel geht leider nicht hervor, was passiert, wenn du unterschiedliche Artikel im Warenkorb hast, wo gleiche Versandbedingungen zutreffen? Ich denke, dass ihr ganz genau planen müsst, was in welcher Kombination möglich sind und wie die Versandbedingungen dann zutreffen müssen.

VG

image
enerSpace Webhosting
Tel.: +49 511 - 219 568 76 | Web: https://www.enerspace.de

Wenn ich unterschiedliche Artikel drin habe wird für jeden Artikel 2 Euro addiert bzw. wenn andere Artikel ohne attr10 drin sind, greift b.quantity*2.
Die Seite kenne ich, da hab ich schon ein paar Sachen raus gezogen, aber die ultimative Lösung habe ich dafür nicht gefunden.

Nochmal zusammengefasst:

Grundsätzlich hat alles 0 Euro.

Bei manchen Artikeln soll 10 Euro Versandkosten berechnet werden und hier soll zusätzlich je Artikel mehr, bei dem 10 Euro Versand fällig wird, nur 2 Euro addiert werden.

 

Hallo @PeterBlaumeier,

dafür werden zwei Versandregeln benötigt. Ich werde im laufe des Tages was zusammenbauen und das Resultat hier veröffentlichen.

VG

image
enerSpace Webhosting
Tel.: +49 511 - 219 568 76 | Web: https://www.enerspace.de

Hallo @PeterBlaumeier‍,

ich hatte dir ja versprochen, dass ich mich heute nochmal dazu melde. Meine Variante lässt sich garantiert noch verfeinern, aber Sie funktioniert!

Folgende Konfigurationen musst du vornehmen:

1. Einstellungen->Grundeinstellungen->Storefront->Versandkostenmodul

Hier erweiterst du die alte Zeile:

MAX(a.topseller) as has_topseller, MAX(at.attr3) as has_comment, MAX(b.esdarticle) as has_esd

In:

MAX(a.topseller) as has_topseller, MAX(at.attr3) as has_comment, MAX(b.esdarticle) as has_esd, MAX(at.attr4="1") AS shipping_surcharge

2. Einstellungen->Freitextfeld-Verwaltung

Hier fügst du z.B. wie unter 1. angegeben, das Feld attr4 hinzu. In etwa so wie hier:

Jetzt haben wir die Änderungen durchgeführt, bei denen hinterher die Versandart je attr4 = 1 ausgewählt wird.

Info: attr4 kann natürlich auch bei dir anders heißen oder auch anders angelegt sein.

3. Einstellungen->Versand Kosten

Hier gehst du erst einmal in deine kostenlose Standard-Versandart rein. Hier klickst du auf den tab: „Erweiterte Einstellungen“ und gibst bei der Bedingung folgendes ein:

!shipping_surcharge

Damit geben wir an, dass diese Versandart nur dann ausgewählt wird, wenn kein Artikel im Warenkorb ist, der Versandgebühren hat oder auch attr4 = 1.

4. Einstellungen->Versand Kosten

Als nächstes legen wir eine Ausweichversandart an, die immer dann zutrifft, falls die Standardversandart nicht ausgewählt werden kann. Wichtig ist hierbei, dass unter: „Versandkosten-Berechnung nach:“ -> „Eigene Berechnung“ ausgewählt und der Faktor auf 100% gestellt wurde:

Als nächstes wechseln wir wieder in den Tab „Erweiterte Einstellungen“ und fügen die folgenden Regeln hinzu:

Eigene Bedingung:

shipping_surcharge

Eigene Berechnung:

8+(SUM(IF(at.attr4="1",((b.quantity)*2),0)))

Nun sind wir soweit durch. Jetzt kannst du in jedem Artikel bei dem du Versandkosten berechnen möchtest einfach das Häkchen stzen:

Falls du weitere Unterstützung benötigst, sag mir einfach bescheid.

VG

image
enerSpace Webhosting
Tel.: +49 511 - 219 568 76 | Web: https://www.enerspace.de

1 Like

Hallo

Danke für die obige Variante! Sie funktioniert, jedoch würde ich es gerne erweitern jedoch schaffe ich es nicht den richtige Eigene Berechnung zu schreiben.

  • Berücksichtigung Gewicht: Berechnung des Aufschlags pro Paket bis 30kg (ab 31 bis 60 ist der Aufschlag verdoppelt usw)
  • Drei weitere Attribute/Freitextfelder sollten auch noch berücksichtig werden.
  • 2 weitere Aufschläge (14.- / 30.- / 50.-)

Aktuell:
14+(SUM(IF(at.attr6=“1”,((b.quantity)*0),0)))

Jedes Attribut ist ein Transporteur (DPD attr6, Post attr7, Post Abend attr10, Post Samstag attr11)

 

Wie kann ich das lösen?

Bin dankbar für jede Hilfe

Viele Grüsse

Andrea