Dalam Magento 1, informasi Persediaan disimpan dalam objek Item Saham. Setiap objek Stok Item dikaitkan dengan objek produk. Magento tetap objek Stock Item ke atas cataloginventory_stock_item
meja.
Namun, setiap objek Stok Item memiliki objek Status Stok terkait. Status Stok tampaknya menjadi tabel (indeks | cache | de-dinormalisasi) yang menyimpan status stok produk sebagai konstanta integer, dan memungkinkan Anda untuk mengaitkan beberapa item stok dan produk dengan yang berbeda website_id
. Magento tetap mempertahankan status stok objek ke cataloginventory_stock_status
. Konstanta kelas dan skema tabel untuk ini ada di bawah ini.
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)
Namun , untuk alasan yang tidak sepenuhnya jelas, ada juga sebuah qty
kolom dalam tabel ini.
Apa hubungan antara kedua qty
kolom ini?
Yang merupakan sumber kebenaran qty
dan yang merupakan nilai diindeks / di-cache? Apakah nilai stock_status
hanya versi yang di-cache dari apa yang ada di tabel item persediaan? Atau adakah cara untuk mengonfigurasi Magento untuk mengelola stok di tingkat situs web? Atau apakah hubungan itu sesuatu yang berbeda dari yang telah saya jelaskan?