Versandkosten nach der "Länge" eines Artikels berechnen

Hallo. Hab da einen Problemfall für die Versandkostenberechnung, bei dem ich noch keine Lösung und Idee habe, wie ich das lösen könnte. Folgender Fall: Es gibt Aluschienen, die in der Länge von 1 mtr, 2 mtr, usw. bis 6 mtr. im Shop erhältlich sind. Da z.B. eine 6 mtr. Aluschiene als Sperrgut berechnet wird, muss ich natürlich - je länger die Schiene ist - andere Versandkosten berechnen. Hat jemand eine Idee wie man so etwas lösen könnte? Danke für jeden Vorschlag. Gruss

Hallo, du kannst hierzu die Eigene Berechnung bei den Versandkosten benutzen. Per MAX(d.length) bekommst du als Rückgabewert die „längste Länge“. Entsprechend kannst du dann die Staffel darauf ausrichten. Grüße Moritz

Hallo Moritz. Danke, das klingt schon ziemlich gut. DANKE DIR! Ich probiere das mal aus. Gruss

Also ich habe das jetzt mal nach diesem Artikel hier eingestellt. Leider ändert sich aber nichts bei meinen Versandkosten. Es wird immer der Standard-Versand berechnet. Ich muss evtl. auch etwas weiter ausholen. Bei dem Artikel sind Varianten angelegt mit einem Dropdownmenü, wo der User die Länge der Leiste angeben kann (von 1 bis 6 mtr.). Bestellt der User eine 6 mtr. lange Leiste, sind die Versandkosten natürlich höher als bei einer 1 mtr. langen Leiste. DAS müsste ich irgendwie realisieren können. DANKE! Gruss

Hallo, sind das Variantenoptionen? Du brauchst schon ein Feld, auf das du mit den Versandkosten zugreifen kannst. Am besten sowas wie das Feld “Länge” in den Artikeldetails oder ein Attributfeld. Moritz

Hallo Moritz. Ja, das sind Variantenoptionen. Ich habe auch bei diesem Artikel das attr4 Feld angelegt und dort einen Betrag rein geschrieben. Und in den Versandkosten im Feld EIGENE BERECHNUNG steht: SUM(at.attr4*b.quantity)

Hallo Moritz. Ich hab mich jetzt mal genau informiert wegen den “Spezial-Versandkosten”. Den Artikel (Aluschiene) gibt es in einer Länge von 1 bis 6 Metern im Shop zu kaufen. Die Versandkosten sollen für diesen Artikel nun so berechnet werden: 1 mtr bis 2 mtr: 4,50 EUR 3 mtr bis 6 mtr: 45,00 EUR Momentan hab ich eine Versandart “Sperrgut” angelegt mit eigener Berechnung (SUM(at.attr4*b.quantity)). Das Feld attr4 hab ich natürlich erstellt. Beim FAKTOR habe ich 100 eingetragen. Beim Artikel ist im Feld attr4 zum Testen mal ein Wert eingetragen: 2,50. Aber es ändert sich nichts an den Versandkosten im Checkout. Irgendwie steig ich da nicht durch. Hast du noch eine Idee wie ich das realisieren könnte? Vielen Dank! Gruß

Hallo, hast du als Versandart-Typ “Eigene Berechnung” eingestellt? Dann müsstest du noch den Faktor auf 100 setzen und das Feld Preis leer lassen. Dann sollte er zumindest schonmal deiner Berechnung folgen. Moritz

Ja, so habe ich alles eingestellt. Aber die Versandkosten ändern sich einfach nicht im Checkout. Verzweifle noch… Vielleicht gibt auch ein Plugin, welches diese Funktion bereits kann. Gruß

Mit dem Artikel-Freitextfeld “attr4” habe ich als Feldbezeichnung “Versandkosten” hinterlegt. Da dieser genannte Artikel ja Varianten hat, habe ich jetzt in jeder dieser Artikelvarienten in Freitextfeld attr4 die entsprechenden Versandkosten hinterlegt. Also bei 1 mtr. 4,90, bei 2 mtr. 4,90 und ab 3 mtr, 45,00. So sollte das doch wunderbar funktionieren denke ich?! Die dazu gehörige Versandart habe ich auf “Eigene Berechnung” gestellt und Faktor 100% (Versandkosten keine). Ins Feld “Eigene Berechnung” habe ich das angelegte Freitextfeld gesetzt: attr4. So sollte es funktionieren denke ich. Doch leider ändern sich die Versandkosten nicht (ab 3 mtr.) und es wird immer 4,00 EUR angezeigt. Dieser Wert ist aber nirgendwo hinterlegt. Ich kann mir nur vorstellen, dass er die 4,00 EUR aus dem Wort “attr4” nimmt. Gruß

Hallo, evtl. hat das System Problem mit Fließkommazahlen (BTW wurden die Zahlen mit einem Punkt als Dezimaltrenner eingetragen?). Dann trage in attr4 die Versandkosten in Cent ein und in eigene Berechnungen dann attr4/100. Damit umgeht man das Problem.

@Moritz Naczenski schrieb:

Hallo,

du kannst hierzu die Eigene Berechnung bei den Versandkosten benutzen. Per MAX(d.length) bekommst du als Rückgabewert die “längste Länge”. Entsprechend kannst du dann die Staffel darauf ausrichten.

Grüße
Moritz

 

Aber nur, solange nur ein Artikel im Warenkorb liegt. Liegen im Warenkorb mehrere Artikel, liefert MAX(d.length) den Wert der obersten Postion im Warenkorb zurück (Shopware V5.3.7).