Versandkosten mit eigener Berechnung - Erweiterung funktioniert nicht

Hallo zusammen, unser Shop läuft unter 5.6.6 und ist unter autarker.de/shop zu finden.

Wir haben bisher einige Versandkosten konfiguriert und sind damit auch sehr zufrieden. Soweit haben wir einen Standardversand für Produkte bis 100€. Darüber ist die Lieferung versandkostenfrei.

Da wir auch Gefahrgut versenden haben wir ein Freitextfeld unter attr4 eingefügt. Die Auswahl funktioniert gut. Wenn ein Kunde solch einen Artikel auswählt, werden im In- und Ausland die korrekten Gefahrgutkosten ausgegeben.

Jetzt zum Problem: Wir versenden auch kleinstteile, die natürlich nicht für 6,90 € versendet werden müssen. Dafür möchte ich eine Warensendung anlegen. In attr5 habe ich das entsprechend hinterlegt. Dann habe ich im Verdandkostenmodul die erweiterte SQL Abfrage hinterlegt mit :

MAX(a.topseller) as has_topseller, MAX(at.attr3) as has_comment, MAX(b.esdarticle) as has_esd, MAX(at.attr4=“1”) as attribut, MIN(at.attr5=‘1’) as warensendung, MAX(at.attr5=‘1’) as nicht_nur_warensendung

So haben die Versandkosten bisher gepasst:

und so würde ich das jetzt ergänzen:

und bei der Versandart Waresendung dann so hinterlegen:

Wenn ich dann allerdings solch einen Artikel in den Warenkorb lege, wir die rechte Seite mit dem Warenkorb und den Versandkosten nicht mehr angezeigt

auch wenn ich statt dessen andere Artikel wähle komme ich hier nicht weiter. Helft mir bitte vom Schlauch herunter, auf dem ich stehe.

Auch für Rückfragen stehe ich gerne zur Verfügung.

Mit freundlichen Grüßen

Andreas Irmer

So, für alle, die hier auch suchen: Ich habe die Lösung nach stundenlangem probieren hinbekommen!

Im Versandkostenmodul habe ich diese SQL Abfrage eingestellt:

MAX(IF((at.attr4=‚1‘), 1, 0)) AS has_article_with_gefahrgut, MIN(IF((at.attr5 = „1“), 1, 0)) AS has_only_articles_warensendung

So stelle ich sicher, dass der Gefahrgutzuschlag erhoben wird, wenn auch nur ein Gefahrgut im Warenkorb ist und sonstige Artikel die Frachtfreigrenze überschreiten.

In der Bedingung 2 überprüfe ich, ob alle Artikel im Warenkorb als Warensendung markiert sind.

Beim Standardversand habe ich dann die Bedingung eingefügt:

!has_article_with_gefahrgut AND !has_only_articles_warensendung
 

Bei der Warensendungspauschale heißt die Bedingung dann natürlich  has_only_articles_warensendung und beim Gefahrgut dann  has_article_with_gefahrgut

Den Rest steuert man dann über die in der jeweiligen Versandart zugelassenen Zahlungsarten und Lieferländer.

Vielleicht kann ich ja jemandem hiermit helfen, der auch ewig sucht.