Eigene Bedingungen für Versandart

Hallo zusammen,

ich möchte gerne eine Versandart erstellen, die nur für ausgewählte Artikel verfügbar ist. Ich habe dazu entsprechend der Shopware-Dokumentation ein Artikel-Attribut (attr4) als Checkbox konfiguriert und möchte dieses nun in den eigenen Bedingungen der Versandart abfragen. Leider führt dies aber nicht zum Erfolg.

Das Problem:
Sobald ich eine Bedingung eintrage, die sich auf eine Datenbankspalte bezieht, lädt der Warenkorb nicht mehr. Er schnell am Bildschirmrand zwar auf, bleibt aber weiß mit dem sich drehenden Ladebalken/-kreis. Wenn ich in die eigenen Bedingungen zum Beispiel einfach eine 1 eintrage, funktioniert alles. Trage ich hinegen beispielsweise MAX(at.attr4)=1 ein oder alternativ MAX(b.quantity)=1 hängt sich der Warenkorb wie beschrieben auf. Die beschriebenen Bedingungen entsprechen natürlich nicht meinem späteren Vorhaben, sollten aber doch grundsätzlich funktionieren oder nicht? Ich habe schon diverse Schreibweisen probiert, wie auch die Verwendung der erweiteren SQL-Abfrage in den Grundeinstellungen. Leider alles ohne Erfolg.
Just for fun habe ich MAX(b.quantity) bzw. MAX(at.attr4) auch einfach mal in die eigene Berechnung eingefügt, um dann im Frontend prüfen zu können, ob überhaupt ein int-Wert zurückgeliefert wird. Das war der Fall.

Nachdem ich nun seit Tagen die verschiedensten Abfragen und Schreibweisen probiert habe, bin ich mit meinem Latein wirklich am Ende und hoffe inständig, dass von euch noch jemand eine Idee dazu hat. Noch ein Hinweis am Rande: Ich habe auch einen Blick ins Log geworfen. Dort sind mir viele Zeilen aufgefallen, die absolut keinen Inhalt haben. Also nicht mal eine Uhrzeit, geschweige denn eine Fehlermeldung. Ich nehme an, die Einträge entstehen bei dem Versuch den Warenkorb zu laden und es wird vielleicht nichts rein geschrieben, weil der Prozess ja nie zu einem Ende kommt. Das ist aber nur eine Vermutung, vielleicht ist es ja ein hilfreicher Hinweis.

Viele Grüße
Yannick

Hey,

besteht das Problem weiterhin?

Hast du dir diese Hilfeseite mal angeschaut?

Du müsstest in den Grundeinstellungen unter Storefront>Versandkosten-Modul die SQL Abfrage erweitern. In deinem Fall wäre Folgendes zu ergänzen:

, MAX(at.attr4) as has_attr4

In der Versandart kannst du nun unter “Eigene Bedingungen” einfach has_attr4 eintragen und schon funktioniert deine Abfrage

Ich hoffe, ich komme nicht zu spät und konnte helfen.

Grüße

1 „Gefällt mir“

Hi,

vielen Dank, das hat mir auch schon ein bisschen weitergeholfen.

Allerdings will ich die Standardversandart sperren, wenn ein ausgewähltes Produkt im Warenkorb ist. Sobald dieser ausgewählte Artikel im Warenkorb ist gemischt mit “normalen” Artikeln (geeignet auch für Standardversand) soll nur noch die Alternative Versandart auswählbar sein.Ansonsten hat der Kunde die Möglichkeite beide Versandarten anzuklicken.

Was müsste ich dan in der SQL Abfrage eintragen und was in der Eigenen Bedingung der Standardversandart?!

 

Produkte A, B und C -> Standardversand

Produkt X -> Alternative Versandart

Produkt A, B, C und X -> Alternative Versandart

 

Kann mir da jemand weiterhelfen?!

Hallo,

schau dir doch einmal unter der Hilfeseite aus meinem letzten Post den Abschnitt „Komplexe Bedingung anhand von eines Freitextfeldes für Mischwarenkörbe“ an. Das sollte dir in deinem Fall helfen.

Grüße

1 „Gefällt mir“