Versandkosten überschneiden sich

Hallo, weiß jemand genauer über die Möglichkeiten in shopware bescheid, wie man Versandkosten genauer einstellen kann? Mein Problem: Ich habe Staffelungen bis 31,5 Kg (darunter holt DHL noch günstig ab) Die darüberliegenden Staffelungen bereiten mir Probleme: Die bestellte Ware besteht fast immer aus mehreren Paketen. Wenn nur die Gesamtbestellung (aber kein einzeldes Paket) über 31,5kg greifen die höheren Staffelungen. Jetzt gibt es aber auch die Möglichkeit, das sofort ein einzelnes Paket über besagte 31,5kg liegt. Hier möchte ich das eine andere Versandart (Speditionsversand) mit anderen Konditionen greift. Es kann also sein, das 2 Bestellungen mit jeweils Gesamtgewicht 50kg unterschiedlich versendet werden sollen. Einmal mehrere Pakete mit DHL, die andere Bestellung sofort mit Spedition. Hat hier von Euch einer ne Idee. Ich danke Euch.

Das verstehe ich nicht so ganz… Woher soll der Shop wissen, wie du deine Pakete packen möchtest? Oder gibt es einzelne Artikel, die 50kg wiegen, die du nur per Spedition senden kannst?! Kannst du deine Anforderungen bitte noch einmal genauer verdeutlichen? Viele Grüße

Es geht um Klimasplitgeräte. Beispielset 1 wiegt Inneneinheit 10kg und Ausseneinheit 28kg Zusammen also über 31,5kg. Hier würde ich 2 Pakete mit DHL verschicken, weil kein einzelnes über 31,5kg liegt. Beispielset 2 wiegt Inneneinheit 10kg und Ausseneinheit 33kg Zusammen auch über 31,5. Hier würde ich 1 kleine Palette mit der Spedition versenden, da hier 1 Paket(Ausseneinheit) über 31,5kg liegt. Und hier ist DHL einfach zuteuer. Wie könnte ich hier eine passende Versandkostenregel finden? Danke

Hallo Jockel, wie bereits von Aquatuning geschrieben, kann der Shop nicht wissen, wie Du Deine Ware beim Verpacken aufteilst. Wir habe mit ähnlichen Bedingungen zu kämpfen, da bei uns vom Paket bis zur Europalette alles im Sortiment ist. Nicht 100% perfekt, aber für die meisten unserer Fälle funktioniert es so: Ware, welche durch ihr Gewicht die 31,5 kg überschreitet versenden wir per Spedition. Dafür haben wir eine eigene Versandart, welche sich Spedition nennt. Im Artikel haben wir dafür ein Freitextfeld angelegt und eine SQL-Abfrage bei den Versandkosten. Die Spedition-Versandart ist nach Gewicht gestaffelt und das Freitextfeld wird bei den eigenen Bedingungen abgefragt. Legt ein Kunde einen „normalen“ Artikel in den Warenkorb, bekommt er DHL als Versand, kommt ein Speditionsartikel dazu, nimmt der Shop die Versandart Spedition. Das passt, da der DHL-Artikel einfach mit dem Speditions-Artikel zusammen verschickt werden kann, der Kunde zahlt nur den Speditionsversand. Wir haben noch weitere Versandarten (Streckenlieferung, Sperrgut etc.) angelegt. Ist nicht ganz trivial, aber wie bereits geschrieben, in den allermeisten Fällen passt das sehr gut. Alle Konstellationen abzufangen wäre utopisch und würde den Rahmen sprengen. Hat aber auch einige Zeit gedauert, eh das hingehauen hat. :wink: Ich hoffe, das hilft Dir etwas weiter. Gruß, Tom

Danke Tom, ganau so etwas suche ich. Nur scheitere ich gerade bei den SQL-Abfragen. Gebe ich diese bei den Versandkosten unter “erweiterte Einstellungen” in “eigene Bedingungen” ? oder doch wo anders. Gibt es hier eine Hilfedatei dafür? Das scheinen mir ja spezielle Codes zusein. Danke Dir Jochen

Eigene Freitextfelder: Einstellungen -> Grundeinstellungen -> Artikel -> Artikel-Freitextfelder Wiki: http://wiki.shopware.de/Artikel-Freitex … _1114.html Erweiterte SQL-Abfrage: Einstellungen -> Grundeinstellungen -> Storefront -> Versandkosten-Modul Wiki: http://wiki.shopware.de/Versandkosten-e … stellungen Bsp. Speditionsversand Artikel-Freitextfeld anlegen: Name: attr8 Feldtyp: Checkbox Feldbezeichnung: Speditionsversand Hilfetext: optional, was immer Du möchtest Position: bestimmt die Position des Freitextfeldes im Artikel-Backend innerhalb der Freitextfelder Pflichtfeld: leer lassen, wenn es (sehr wahrscheinlich) kein Pflichtfeld sein soll Varianten-Fähigkeit: Haken rein, wenn es für Varianten genutzt werden soll Erweiterte SQL-Abfrage: Einträge ergänzen mit: MAX(at.attr8=“true”) as spd_attribut MAX(a.topseller) as has\_topseller, MAX(at.attr3) as has\_comment, MAX(b.esdarticle) as has\_esd, MAX(at.attr8="true") as spd\_attribut einzelne Abfragen per Komma voneinander trennen Versandkostenmodul Neue Versandart Speditionsversand erstellen. Gewichte und Preise gestaffelt hinterlegen. Zahlarten und Länder auswählen, die für diese Versandart erlaubt sind. Erweiterte Einstellungen: Unter eigene Bedingungen: spd_attribut Somit greift diese Versandart nur, wenn bei dem Artikel ein Haken bei Speditionsversand gesetzt wurde. Analog dazu haben wir z.B. eine Versandart Versandkostenpauschale. Anlegen von Freitextfeld und SQL-Abfrage wie oben beschrieben. Eigene Bedingung bei der Versandart: !spd_attribut && dep_attribut Bedeutet: Versandart greift nur, wenn bei dem Artikel bei Speditionsversand KEIN Haken gesetzt wurde, aber bei Paketversand Pauschale Ich hoffe, meine Erklärung hilft Dir etwas weiter. Wiki: http://wiki.shopware.de/Versandkosten-e … l_672.html Gruß, Tom

Danke für Deine ausführliche Antwort. Der Weg ist schon mal sehr, sehr gut. Genau das was ich suche. Ich bin nur noch nicht ganz am Ziel. Sobald ich in den Versandkosten(Speditionsversand) unter Erweiterte Einstellungen „spd_attribut“ eingebe, gibt es bei Eingang in den Warenkorb folgende Fehlermeldung. Wenn ich diesen Zusatz heraus nehme, gehen die bestellten Artikel in den Warenkorb. Nur halt mit Standart-versand. Dabei war Deine Erklärung wirklich sehr gut. Hättest Du noch eine Idee, die ich übersehen habe? Danke Dir Ups! Ein Fehler ist aufgetreten! Die nachfolgenden Hinweise sollten Ihnen weiterhelfen. SQLSTATE[42S22]: Column not found: 1054 Unknown column ‚spd_attribut‘ in ‚where clause‘ in Zend/Db/Statement/Pdo.php on line 234 Stack trace: #0 Zend/Db/Statement.php(300): Zend_Db_Statement_Pdo->_execute(Array) #1 Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array) #2 Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query(’???SELECT???..’, Array) #3 Enlight/Components/Db/Adapter/Pdo/Mysql.php(75): Zend_Db_Adapter_Pdo_Abstract->query(’???SELECT???..’, Array) #4 Enlight/Components/Adodb.php(296): Enlight_Components_Db_Adapter_Pdo_Mysql->query(’???SELECT???..’, Array) #5 engine/core/class/sAdmin.php(3553): Enlight_Components_Adodb->GetAssoc(’???SELECT???..’) #6 Shopware/Controllers/Frontend/Checkout.php(1031): sAdmin->sGetPremiumDispatches(2, NULL, NULL) #7 Shopware/Controllers/Frontend/Checkout.php(107): Shopware_Controllers_Frontend_Checkout->getSelectedDispatch() #8 Enlight/Controller/Action.php(148): Shopware_Controllers_Frontend_Checkout->cartAction() #9 Enlight/Controller/Dispatcher/Default.php(521): Enlight_Controller_Action->dispatch(‚cartAction‘) #10 Enlight/Controller/Front.php(214): Enlight_Controller_Dispatcher_Default->dispatch(Object(Enlight_Controller_Request_RequestHttp), Object(Enlight_Controller_Response_ResponseHttp)) #11 Shopware/Components/HttpCache/HttpKernel.php(79): Enlight_Controller_Front->dispatch() #12 Symfony/Component/HttpKernel/HttpCache/HttpCache.php(434): Shopware\Components\HttpCache\HttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #13 Shopware/Components/HttpCache/AppCache.php(242): Symfony\Component\HttpKernel\HttpCache\HttpCache->forward(Object(Symfony\Component\HttpFoundation\Request), true, NULL) #14 Symfony/Component/HttpKernel/HttpCache/HttpCache.php(403): Shopware\Components\HttpCache\AppCache->forward(Object(Symfony\Component\HttpFoundation\Request), true) #15 Symfony/Component/HttpKernel/HttpCache/HttpCache.php(303): Symfony\Component\HttpKernel\HttpCache\HttpCache->fetch(Object(Symfony\Component\HttpFoundation\Request), true) #16 Shopware/Components/HttpCache/AppCache.php(162): Symfony\Component\HttpKernel\HttpCache\HttpCache->lookup(Object(Symfony\Component\HttpFoundation\Request), true) #17 Symfony/Component/HttpKernel/HttpCache/HttpCache.php(192): Shopware\Components\HttpCache\AppCache->lookup(Object(Symfony\Component\HttpFoundation\Request), true) #18 Shopware/Components/HttpCache/AppCache.php(97): Symfony\Component\HttpKernel\HttpCache\HttpCache->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #19 Shopware/Bootstrap.php(70): Shopware\Components\HttpCache\AppCache->handle(Object(Symfony\Component\HttpFoundation\Request)) #20 Enlight/Application.php(192): Shopware_Bootstrap->run() #21 shopware.php(83): Enlight_Application->run() #22 {main}

Hallo. Packe mal bitte solche Meldungen/ Code-Schnipsel hier im Forum in die code-tags (das Symbol neben den Sprechblasen). Lässt sich besser lesen. Zu Deinem Problem. Ich kenne das Problem, trat bei mir auch auf. :frowning: Wenn ich jetzt noch wüsste, wie ich das gelöst hatte… :wink: EDIT (was hier stand war Müll) EDIT ENDE Lösung: Einstellungen -> Caches/ Performance anklicken -> Alle auswählen -> Leeren Gerade getestet, Fehler ließ sich ganz sauber reproduzieren. Nach dem Cache leeren geht alles wie gewünscht. Tom

Danke Tom, die Code verpacke ich mal anders. Wieder was gelernt. Bei der eigentlichen Problematik gehe ich morgen nochmal dran. Habe mehrfach deine Hilfe durchgelesen. Zahlarten und Länder zugewiesen. Aber es spielt noch nicht mit. Morgen auf ein neues. Danke erstmal

Hallo Tom, ich verzweifel. Ich bin zum zichten male Deiner Erklärung durchgegangen und habe erforderliches Eingerichtet. Er nimmt aber partut nur die Standart-Versandregel. Erst wenn ich diese inaktiv setzte, wird die Speditionsregel genommen. Habe auch schon versucht die Speditionsregel als Ausweich-regel zu definieren. Aber auch hier tut sich nichts. Auch den Cache leere ich nun regelmassig. Hättest Du noch ne Idee. Theoretisch hört sich das so logisch an. Gruß Jochen

Ahhh… also bekommst Du die Fehlermeldung nicht mehr, aber die Versandart greift noch nicht? Dann brauch ich ein paar Infos von Dir. Am einfachsten wäre, Du gewährst mir mal Zugriff auf Dein Backend. Könntest einen neuen Benutzer anlegen und danach wieder löschen. Setzt natürlich eine gehörige Portion Vertrauen voraus. Habe ich hier auch schon mal gemacht, als ich Hilfe brauchte. Ist eine nette Community hier. :thumbup: Können gern per PM weiter machen. Sollten wir die Lösung Deines Problems finden, dann kannst Du es hier mitteilen, damit alle was davon haben. :slight_smile: Gruß, Tom

Hi! Vielleicht hilft hier auch erstmal etwas weiter? administration-f55/erweiterte-versandkostenberechnung-gesammeltes-wissen-t15135.html Wäre auch toll wenn ihr dazu beitragen könntet mit euren Berechnungen oder Tipps!

Hallo, danke Tom für Dein Angebot. Ich würde gerne darauf eingehen. Wie könnten wir denn weiter kontaktieren? Gruß Jochen

Ein danke an dieses Forum und besonders an Tom. Seine folgende Erklärung hat das Ziel erreicht. „“"" Eigene Freitextfelder: Einstellungen -> Grundeinstellungen -> Artikel -> Artikel-Freitextfelder Wiki: http://wiki.shopware.de/Artikel-Freitex … _1114.html Erweiterte SQL-Abfrage: Einstellungen -> Grundeinstellungen -> Storefront -> Versandkosten-Modul Wiki: http://wiki.shopware.de/Versandkosten-e … stellungen Bsp. Speditionsversand Artikel-Freitextfeld anlegen: Name: attr8 Feldtyp: Checkbox Feldbezeichnung: Speditionsversand Hilfetext: optional, was immer Du möchtest Position: bestimmt die Position des Freitextfeldes im Artikel-Backend innerhalb der Freitextfelder Pflichtfeld: leer lassen, wenn es (sehr wahrscheinlich) kein Pflichtfeld sein soll Varianten-Fähigkeit: Haken rein, wenn es für Varianten genutzt werden soll Erweiterte SQL-Abfrage: Einträge ergänzen mit: MAX(at.attr8=„true“) as spd_attribut 1 MAX(a.topseller) as has_topseller, MAX(at.attr3) as has_comment, MAX(b.esdarticle) as has_esd, MAX(at.attr8=„true“) as spd_attribut einzelne Abfragen per Komma voneinander trennen Versandkostenmodul Neue Versandart Speditionsversand erstellen. Gewichte und Preise gestaffelt hinterlegen. Zahlarten und Länder auswählen, die für diese Versandart erlaubt sind. Erweiterte Einstellungen: Unter eigene Bedingungen (Speditionsversand): spd_attribut Unter eigene Bedingungen (Standart-Versand): !spd_attribut Somit greift diese Versandart nur, wenn bei dem Artikel ein Haken bei Speditionsversand gesetzt wurde. Analog dazu haben wir z.B. eine Versandart Versandkostenpauschale. Anlegen von Freitextfeld und SQL-Abfrage wie oben beschrieben. Eigene Bedingung bei der Versandart: !spd_attribut && dep_attribut Bedeutet: Versandart greift nur, wenn bei dem Artikel bei Speditionsversand KEIN Haken gesetzt wurde, aber bei Paketversand Pauschale Wiki: http://wiki.shopware.de/Versandkosten-e … l_672.html

Sorry - Weiß nicht warum aber es läuft jetzt. Danke für diesen Beitrag! [size=50] Hey das ist ja genau mein Thema - Herrlich! Könnt ihr mir nochmal bei der Umsetzung helfen ? Bei mir kommt weiterhin (auch nach Cache-Löschen) die Fehlermeldung: [quote]Die nachfolgenden Hinweise sollten Ihnen weiterhelfen. SQLSTATE[42S22]: Column not found: 1054 Unknown column ‚spd_attribut‘ in ‚where clause‘ in Zend/Db/Statement/Pdo.php on line 234 Stack trace:[/quote] Muss nicht noch an irgendeiner Stelle „spd_attribut“ eingetragen werden?[/size]