Ist die Synchronisierung von Lagerbestand zwischen Bexio & WooCommerce aktiviert, werden die Lagerbestände seitens Shop in einer Cache-Tabelle abgelegt, von wo aus sie bei Bedarf abgerufen werden. Von dort wird der Bestand nur in bestimmten Fällen aktualisiert (siehe hier für Details).
Der Abgleich des Bestandes erfolgt jeweils über die Artikelnummer. Dies kann zu einem möglichen Problem führen, wenn ein Bexio-Produkt, für welches bisher Lagerbestand synchronisiert wurde, gelöscht wird. Dies kann zu einem falschen Lagerbestand im weiterhin bestehenden WooCommerce-Produkt mit der gleichen Artikelnummer führen. Da das Produkt in Bexio dann nicht mehr existiert, wird für diese Artikelnummer der Bestand in der Cache-Tabelle nicht mehr aktualisiert (da es dessen Produkt, resp. Bestand, in Bexio nicht mehr gibt). In einigen Fällen kann es dann jedoch dazu kommen, dass dieser gecachte Bestand verwendet wird, um den Bestand des WooCommerce Produktes zu aktualisieren.
Ein mögliches Beispiel: wenn auf dem WooCommerce-Produkt, dessen Bexio-Produkt gelöscht wurde, die Mehrfachaktion "Lagerbestand mit Bexio synchronisieren" ausgeführt wird (auch wenn es das Bexio-Produkt nicht mehr gibt), kann der Bestand in WooCommerce mit einem möglicherweise bereits alten Bestand aus dem Cache überschrieben werden. Dies deshalb, weil bei dieser Aktion der gecachte Bestand dieser Artikelnummer von Bexio neu abgefragt und im Cache aktualisiert wird, um anschliessend mit dem Bestand im Cache den Bestand in WooCommerce zu aktualisieren. Gibt es das Bexio-Produkt mit dieser Artikelnummer jedoch nicht mehr, kann auch kein neuer Bestand für diese Artikelnummer erhalten und in der Cache-Tabelle aktualisiert werden - dort besteht somit noch der alte Bestand des letzten Abgleiches (als das Bexio-Produkt noch existierte).
Dies wurde mit Version 2.2.3 des Plugins behoben, indem beim Aktualisieren von Beständen im Cache Bestände, deren Ablaufzeit erreicht wurde, nach einer weiteren Gnadenfrist von 6h aus dem Cache gelöscht werden. Die Ablaufzeit für gecachte Bestände beträgt standardmässig 6h (wenn diese nicht individuell überschrieben wurde). D.h. eine Löschung des Bestandes der jeweiligen Artikelnummer aus der Cache-Tabelle erfolgt standardmässig nach 12h, wenn der Bestand dort seither nicht erneuert wurde.
Plugin-Versionen <2.2.3
Wenn Sie eine Version bis und mit v2.2.2 des Bexio Automator Plugins verwenden, werden alte Lagerbestände nicht automatisch aus der Cache-Tabelle gelöscht. D.h., wenn Sie ein Bexio-Produkt löschen, sollten Sie den Bestand zu dessen Artikelnummer aus der Tabelle wp_rwcbc_stock
(oder je nach gewähltem Datenbank-Präfix) manuell löschen, um ein mögliches Überschreiben des Bestandes in WooCommerce durch einen alten Bestand aus dem Cache zu vermeiden.
Kommentare
0 Kommentare