Mehrere Rabatte funktionieren nicht

Hallo,

wir kommen derzeit auf einen sehr komischen Sachverhalt bei einem unserer Kunden.

Umgebung:

  • Ein ehemaliger OXID 5 Shop der von uns migriert wurde auf OXID 6, anhand der Doku
  • Zwei Mandanten
  • Zwei Sprachen
  • MySQL 5.6 und 5.7 getestet

Sachverhalt:

  1. Rabatt für Artikel anlegen -> funktioniert
  2. Weiteren Rabatt einstellen -> wird gar kein Rabatt mehr angewandt
  3. Einen Rabatt deaktivieren, Cache leeren -> wie erwartet wird wieder aktiver Rabatt angewandt
  4. Weiteren Rabatt wieder aktivieren, Cache leeren -> es wird wieder gar kein Rabatt angewandt

Einfach gesagt: es funktioniert nicht, mehrere Rabatte gleichzeitig zu verwenden.

Unsere Lösungsansätze:

  • Wenn in der Klasse DiscountList erzwungen wird, dass die Tabellen und nicht die Views genommen werden (mit Einschränkung auf die ShopID), dann funktioniert es wie erwartet.
  • Wenn in dem SQL, dass in der DiscountList Klasse generiert wird, anstatt ein SELECT IF in Zeile 146/147, ein einfaches IF verwendet wird, umgeht dies ebenso den Sachverhalt.

Viele Grüße,
Ruben Jürgens

Hallo,
für die Enterprise Edition soll MySQL 5.6 ausdrücklich nicht verwendet werden. Ich glaube, in diesem Blog-Beitrag ist etwas beschrieben, was mit dem von Euch beobachteten Problem zusammenhängt: https://oxidforge.org/en/set-mysql-5-6-optimizer-for-oxid-eshop-enterprise.html.

Gruß, Jürgen

1 Like

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.