ShopwareSearchOrders/DatastoreWriter schreibt nicht alle Auftragspositionen

Hallo zusammen,
wir sind aktuell dabei unseren Bestellprozess über Shopware (Version 5.5.6) zu automatisieren und importieren diese über den Step ShopwareSearchOrders (5.2+) in einen Datastore.
Der Flow läuft auch wie gewünscht durch und laut Eventlog ist alles in Ordnung.
In der Datastore-Übersicht wird angezeigt, dass es 3 Records gibt, was so korrekt ist (1 OrderHead + 2 OrderPositions).
Allerdings ist in dem Datastore selbst nur ein Datensatz hinterlegt, nämlich die letzte Position des Auftrags.
Einige Zeit später wird in der Übersicht auch nur noch 1 Record angezeigt.
Irgendwas scheint hier überschrieben zu werden, wir können aber nicht genau nachvollziehen, woran das liegt…
Hatte jemand schon einmal ein ähnliches Problem und kann weiterhelfen?

Danke! :slight_smile:

LG Alex

Hallo @luchs,

um schon einmal den gröbsten Fehler auszuschließen. Was für einen identifier nutzt Ihr um die OrderPositions zu schreiben? Denn wenn es einer ist, der bei beiden OrderPositions gleich ist, dann wird die erste Position immer von der zweiten überschrieben.

Viele Grüße
Lukas

1 „Gefällt mir“

Hallo @synesty-Lukas ,
danke für die schnelle Antwort!
Es war tatsächlich der gröbste Fehler… :sweat_smile:
Wir haben die Aufträge jetzt auf einen Parent-Datastore, in den nur die Auftragsköpfe laufen, und einen Kind-Datastore, der nur die Positionen bekommt, aufgeteilt.
Im Parent ist die OrderId der Identifier, im Kind OrderItemDetailId.

Das war der Denkanstoß, den wir gebraucht haben!

LG Alex

1 „Gefällt mir“