Bereits bestellte Produkte können nicht gelöscht werden

Hallo Zusammen, Hallo Shopware-Team

Wir testen gerade die API bzw. die neuen Repositories und mussten dabei gerade feststellen, dass wir beim DELETE einiger Produkte einen Fehler bekamen:

To change the product of line item (e624e04cf0ce41d8ac62b2d094baaf95), the following properties must also be updated: `productId`, `referenceId`, `payload.productNumber`.

Nach kurzer Recherche fanden wir heraus, dass es sich beim Line Item um das Line Item einer Bestellung (order_line_item) handelt.

Problem: Die Produkte sind in den Bestellungen referenziert.
Dies ermöglicht es aktuell nicht, Produkte aus dem Shop zu löschen, die in der Vergangenheit bereits bestellt wurden.

Können wir das als Bug betrachten oder ist dieses Verhalten so gewünscht?
Es kann vermutlich nicht die Lösung sein, all’ diese Produkte zu deaktivieren, oder?

Zumindest im Adminbereich ist es ein Bug, denn beim Auswählen und Löschen des Produkts passiert einfach nichts. Es gibt auch keine Fehlermeldung.

Getestet in der 6.1.1 Stable Version

Viele Grüße
Dennis

Wir können das Problem bei unseren Testshops reproduzieren. Man kann auch nicht mal die Varianten neu generieren, wenn sich dort etwas ändern sollte.

Die gleich Meldung erhält man, wenn man den Artkel per API aktualisieren möchte. 

Wir haben dazu einen Eintrag im Issue Tracker angelegt. Gerne kann hier gevotet werden. 

https://issues.shopware.com/issues/NEXT-7445

Wir stolpern da auch gerade drüber. Wir arbeiten an einem Admin-Modul, mit dem für eine Liste von Produkten ausgewählte Varianten angelegt werden können.

Dort können auch Varianten gelöscht werden. Sobald eine Variante schon verkauft wurde, gibt es den besagten Fehler.

In dem Ticket scheint ja 6.2.1 als Ziel anvisiert. Hat jemand bis dahin ggf. ein Workaround?

Die product_id und reference_id im order_line_item auf NULL setzen ist vermutlich ne schlechte Idee? :wink: (falls das überhaupt geht über die API)