Wenn ich versuche im Backend eine alte Testbestellung zu löschen erhalte ich folgende Fehlermeldung:
Beim Löschen ist ein Fehler aufgetreten: Entity of type 'Shopware\Models\Article\Detail' for IDs id(54) was not found
Wie hier beschrieben habe ich bereits eine Foreign Key Reparatur gemacht. Ob das jedoch komplett erfolgreich war weiß ich nicht, da ich es nicht prüfen kann.
Es sind tatsächlich auch mehrere (ca. 10) Bestellung welche ich nicht löschen kann. Alles jedoch Testbestellungen, daher nicht all zu extrem schlimm, jedoch ärgerlich.
Moin!
Ich nehme an, ein halbes Jahr später ist das Thema erledigt. Aber falls jemand in Zukunft hierzu eine Frage hat - Die Fehlermeldung tritt nicht nur auf, wenn die Foreign Keys nicht passen. Sie erscheint auch, wenn ein Artikel, welcher sich in einer Bestellung befindet, nicht mehr existiert - beispielsweise gelöscht wurde oder sich die ID geändert hat.
Diese nicht existierende Position kann in der Datenbank-Tabelle s_order_details gelöscht werden. Daraufhin verhält sich die Bestellung wieder wie gewollt. Sinnvoll wäre, die Bestellung danach im Backend zu löschen und erneut anzulegen, da ich nicht weiter untersucht habe, welche Auswirkungen es haben könnte, die Bestellung weiterhin als „normal“ zu behandeln.
Dies sollte nicht in einem Live-System gemacht werden sondern zunächst auf einem Testsystem geprüft werden, da hier Interaktionen mit Plugins, die vielleicht diese Daten benötigen, nicht auszuschließen sind.