Komme mit Rulebuilder absolut nicht zurecht (Versandarten)

Hallo Freunde von Shopware,

ich ziehe zurzeit vom furchtbaren Prestashop auf Shopware um, Datensätze sind alle schon drüben.
Womit ich aktuell absolut verzweifle ist die Logik des Rulebuilders. Dass es aktuell noch auf der Roadmap steht, dass automatisch eine andere Versandart gewählt wird, habe ich kapiert.
Ich habe bereits versucht Versandarten über Kategorien festzulegen, das geht auch. Allerdings soll eine Versandart aktiv sein wenn nur Artikel aus der einen Versandart drin sind, diese soll aber deaktiviert werden, sobald andere Artikel mit im Warenkorb sind.
Vielleicht kurz im Detail:
Verfügbare Versandarten sind: Selbstabholung (immer aktiv), Versand per Einschreiben, Versand per UPS.
Eintrittskarten sollen generell nur per Einschreiben oder Selbstabholung versendet werden. Alle anderen Artikel können generell nur per UPS versendet werden.
Sind nun aber Eintrittskarten UND „andere Artikel“ im Warenkorb, soll nur noch der Versand über UPS möglich sein und generell nicht mehr per Einschreiben - ganz klar.

Habe hier schon viele verschiedene Möglichkeiten ausprobiert, komme aber einfach nicht drauf, wie ich das richtig abbilden soll…
Hat jemand eine Idee?

DANKE FÜR INPUT!

Was du benötigst ist eine Kombination aus Rule Builder und Preismatrix bei den Versandkosten. Dann sollte sich das umsetzen lassen. Dann noch auf die Priorität achten, damit das „überschreiben“ in der richtigen Reihenfolge passiert.

Hi, danke für deine Antwort.
Das habe ich schon versucht, aber leider hat es nicht funktioniert.
Einschreiben hat Prio 1 und UPS Prio 2. Wenn ich andere Artikel hinzufüge nachdem Karten drin sind, bleibt der Versand aber leider auf Einschreiben :frowning:

Die Bedingung bezüglich Kategorien im Warenkorb gilt zurzeit schon als erfüllt, wenn eine einzelne Position darauf zutrifft. Das heisst, wenn dann weitere Positionen dazu kommen, die nicht zu der Kategorie gehören, ändert sich daran nach dieser Definition nicht, dass die Bedingung weiterhin erfüllt ist.
In einem kommenden Release wird es für alle Bedingungen, die Warenkorb-Positionen betreffen, eine Option geben, dass die Bedingung nur dann erfüllt ist, wenn sie auf alle Positionen im Warenkorb zutrifft. Die Änderungen sind - zurzeit noch unreleased - bereits auf GitHub eingespielt, siehe Changelog.

Bis jetzt habe ich es wie folgt: Die Kategorien-Regel habe ich wieder rausgeworfen.
UPS ist Standard-Versandart.
Rule UPS: Position in Kategorie ist eine von SHOP, Priorität 1;
Rule Einschreiben: Positionen mit Tag ist eine von „Einschreiben“, Priorität 2;

Wenn ich nun anfange eine Eintrittskarte in den Warenkorb zu legen kommt als erstes „Aktuelle Versandart für diesen Artikel gesperrt“. Dann ändere ich im Warenkorb auf Einschreiben → alles klar, 3,35€. Danach füge ich einen Artikel ohne Tag Einschreiben hinzu → Versand bleibt auf den 3,35€ für Einschreiben, ändert sich nicht auf den Preis für UPS Versand.
Ich raffe es einfach nicht…

Alle Bedingungen bezüglich Positionen im Warenkorb sind so ausgelegt, dass nur eine einzelne Position auf Bedingung zutreffen muss, um sie zu erfüllen. Die Option diese Bedingungen auf alle Positionen im Warenkorb auszuweiten, kommt wie bereits geschrieben in einem kommenden Release.
Als Workaround kann zurzeit die Bedingung „Gesamtanzahl Produkte im Warenkorb“ verwendet werden. Wenn die Regel nur erfüllt sein soll, wenn ausschließlich Produkte mit einem spezifischen Tag oder einer Kategorie im Warenkorb liegen, kann man folgendermaßen vorgehen:

Bedingung anlegen „Gesamtanzahl Produkte im Warenkorb“ mit „Gleich“ und als Wert 0.
Rechts neben dem Feld wo man die Zahl einträgt, ist ein Trichter- bzw Filter-Icon. Da drauf klicken, dann öffnet sich ein Modal, wo man Filter-Bedingungen hinzufügen kann.
Innerhalb dieses Modals dann wiederum eine Bedingungen hinzufügen z.B. „Positionen mit Tag“ mit „Ist keine von“ und dem Tag, der eigentlich für die Bedingung erforderlich sein soll. Sprich man dreht die Logik quasi um an der Stelle und sagt damit, dass ausser Produkten mit diesem Tag, sonst keine im Warenkorb liegen dürfen, damit die Bedingung erfüllt ist.

1 Like

Wow, danke! Das hat mir sehr geholfen - wäre ich im ersten Schritt nicht von selbst drauf gekommen.
Scheint so zu funktionieren! Dann warte ich jetzt nur noch geduldig auf den Fix, dass die Versandart automatisch gewechselt wird statt anzuzeigen, dass die aktuell gewählte Versandart nicht verfügbar ist.

Vielen Dank!

Gibts schon ne Info, wann „option-to-match-all-for-line-item-rules“ ins update kommt?