2016-10-27 2 views
2

Wir haben eine Anforderung haben von überall her in hybris, bestimmte Produkte zu löschen (einschließlich Wagen, Aufträge, Werbeaktionen) und alle seine Referenzen als auch wie Medien, Kategorie, Aktien usw.Hybris - von überall her Produkt löschen

gefunden diese eine Lösung:

REMOVE Product [batchmode=true];itemType(code)[unique=true] 
;Product; 

ich mich gefragt, ob nur das Produkt zu löschen, die alle aus hybris seine Referenzen entfernen würde, oder gibt es eine bessere Lösung, dies zu tun.

Jede Hilfe wird sehr geschätzt!

Antwort

2

Entfernen der Produktreferenzen um es zu entfernen, aber nicht die Objekte, die es sich beziehen (wie Media, Kategorie, Aktien, etc.)

die einzigen Objekte, die mit denen refered durch Attribute werden gelöscht werden der partOf Modifikator.

Ein Teil der Beziehung zwischen zwei Klassen erstreckt sich eine Aggregationsbeziehung , indem sichergestellt wird, dass der Lebenszyklus des abhängigen Objekts (der Teil) mit dem Lebenszyklus des Objekts Mutter gebunden ist. Wenn Sie das übergeordnete Objekt löschen, werden alle Instanzen seiner Attributtypen als partOf markiert und dann kaskadiert.

Hybris nicht wissen, ob ein Medien oder eine Kategorie nicht mehr benötigten nach einem Produkt entfernt wird. Daher müssen Sie diese Objekte explizit löschen.

+0

Wenn ein Produkt in einer bereits vergebenen Bestellung existiert, würde die Produktentnahme die Bestellung beeinträchtigen? Wenn ja, was passiert mit dem Gesamtpreis, Menge der Bestellung. Für Medien, Kategorien usw. Ich verstehe, dass ich die Referenzen von Produkten von ihnen getrennt löschen muss. –

+0

Bestellpreise und -mengen werden nicht dynamisch berechnet. Sie werden im Auftrag oder in den Bestelleinträgen gespeichert und bei Bedarf aktualisiert. Sie ändern sich also nicht beim Löschen eines Produkts. Natürlich sollten Sie es testen, bevor Sie es bereitstellen. –

+0

@SanchitKhera: Beantwortet das deine Frage? –

0

Das Entfernen des Produkts entfernt nur Instanzen des Produkttyps, aber nicht alle Daten wie Medien.

Um aus dem Warenkorb zu entfernen: Das Produkt ist nicht mehr verfügbar im Speicher

Für erfolgreich ordert es Benutzer informieren sollte: Sie sollten in Warenkorb grundlegenden Details des Produkts mit der Meldung angezeigt werden können [:) :) Aber Sie sollten liefern, wenn die Bestellung erfolgreich aufgegeben wurde und die Zahlung erhalten wurde, ansonsten eine schlechte E-Commerce-Impression]

Für Werbeaktionen: Sie sollten alle Werbeaktionen entfernen, die mit diesem Produkt in Verbindung stehen.

+0

Sobald die Bestellung aufgegeben wurde, kann nichts mehr geändert werden und sollte nicht aus den Auftragsdaten entfernt werden. –