Abverkauf hat bei Setzen über die API keine Wirkung

Hallo zusammen,
uns ist kürzlich aufgefallen, dass beim Setzen des Schalters “Abverkauf” über die API zwar der gesetzte Haken im Backend zwar zu sehen, aber im
Frontend keine Wirkung zeigt.

Erst wenn man ins Backend geht und einfach den Artikel speichert, zeigt der Artikel im Frontend, dass er nicht verfügbar ist.

Hatte jemand schon einmal diesen Effekt und hat vielleicht eine Idee?

Viele Grüße Marco

Hallo,

ohne den Code, wie du es setzt, wird dir hier nur schwierig jemand weiterhelfen können.

Vermutung: wahrscheinlich hast du es beim mainDetail - Objekt vergessen mit zu setzen, siehe: https://forum.shopware.com/discussion/comment/194127/#Comment_194127 oder https://forum.shopware.com/discussion/comment/245755/#Comment_245755 .

Grüße

Sebastian

Hallo,
vielleicht habe ich mich missverständlich ausgedrückt. Der Haken wird im Artikelstamm von Shopware über die API gesetzt. Man sieht, dass der Abverkauf aktiviert ist, wenn man nach dem Setzen über die API im Backend schaut. Nur hat es keine Wirkung. Erst wenn man den Artikel im Backend öffnet und einfach speichert (den haken bei Abverkauf muss man ja nicht setzen, er ist bereits aktiv), zeigt der Artikel im Frontend die entsprechende Wirkung.

Hallo,

dann scheint deine API - Änderung keine Invalidierung des Caches des jeweiligen Artikels auszulösen, denn das passiert beim Speichern des Artikels im Shopware Backend. Das müsstest du also bei dir ggf. noch implementieren.

Grüße

Sebastian

OK. Aber müsste dann nach dem Upload über unsere API-Implementierung nicht ein manuelles Löschen des Caches, den gleichen Effekt haben? Denn ich habe nach dem Upload eines Artikels über die API den Cahe geleert. Ohne Effekt. Erst das Speichern des Artikels zeigte Wirkung.

Komischerweise, werden alle anderen Daten auch ohne Cache-Leerung sofort angezeigt. Z. B. Hervorheben. Nur das Setzen des Abverkaufes über die API zeigt keine unmittelbare Wirkung

Wie eingangs erwähnt setzt du wahrscheinlich nicht beide Haken für den Abverkauf. Es gibt einen Haken in der s_articles und s_articles_details. Ist nur einer von beiden gesetzt, wird durch Speichern im Backend die Inkosistenz aufgelöst. Falls das kein Variantenartikel ist siehst du es leider nicht im Backend direkt, dass ein Haken fehlt.

1 „Gefällt mir“

Danke für den Tipp. Hier hat auch ein anderer User geschrieben, dass man das einfach setzen muss, obwohl es nirgendwo dokumentiert ist.

Hier ist es vorhanden:https://developers.shopware.com/developers-guide/rest-api/api-resource-article/

Hier nicht: https://developers.shopware.com/developers-guide/rest-api/models/#article-detail

Danke für den Tipp

2 „Gefällt mir“

Danke für den Hinweis, Marco!

Wir hatten dasselbe Problem, weil die Doku zu Article Detail unvollständig ist. Es fehlt hier das Erwähnen der lastStock-Property.

[
  ‘lastStock’ => true,
  ‘mainDetail’ => [
    ‘lastStock’ => true,
  ],
]

bringt den gewünschten Erfolg!