In Magento 1 werden Inventarinformationen in einem Lagerartikelobjekt gespeichert. Jedes Lagerartikelobjekt ist einem Produktobjekt zugeordnet. Magento behält Stock Item-Objekte in der cataloginventory_stock_item
Tabelle bei.
Jedes Lagerartikelobjekt verfügt jedoch über ein zugehöriges Lagerstatusobjekt. Lagerstatus erscheint ein sein (Index | Cache | de-normalisiert) Tisch speichert ein Lagerbestand des Produktes als in Integer - Konstante, und ermöglicht es Ihnen , mehr verfügbaren Teile und Produkte mit einem anderen zu verbinden website_id
. Magento behält Lagerstatusobjekte bei cataloginventory_stock_status
. Die Klassenkonstanten und das Tabellenschema hierfür sind unten aufgeführt.
class Mage_CatalogInventory_Model_Stock_Status extends Mage_Core_Model_Abstract
{
const STATUS_OUT_OF_STOCK = 0;
const STATUS_IN_STOCK = 1;
}
mysql> describe cataloginventory_stock_status;
+--------------+----------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+----------------------+------+-----+---------+-------+
| product_id | int(10) unsigned | NO | PRI | NULL | |
| website_id | smallint(5) unsigned | NO | PRI | NULL | |
| stock_id | smallint(5) unsigned | NO | PRI | NULL | |
| qty | decimal(12,4) | NO | | 0.0000 | |
| stock_status | smallint(5) unsigned | NO | | NULL | |
+--------------+----------------------+------+-----+---------+-------+
5 rows in set (0.01 sec)
Aus Gründen, die nicht ganz klar sind, enthält diese Tabelle jedoch auch eine qty
Spalte.
Welche Beziehung besteht zwischen diesen beiden qty
Spalten?
Welches ist die Quelle der Wahrheit qty
und welches ist der indizierte / zwischengespeicherte Wert? Ist der Wert in stock_status
einer zwischengespeicherten Version von dem, was in der Lagerartikeltabelle enthalten ist? Oder gibt es eine Möglichkeit, Magento für die Verwaltung von Lagerbeständen auf Website-Ebene zu konfigurieren? Oder ist die Beziehung etwas anderes als das, was ich beschrieben habe?