2

Magento 版本 - 1.7.0.2

可配置产品的工作量 ( CP )

例如,我有一个属性“size”,其值从 20 到 32

因此,我创建了12 个简单的产品,尺寸分别为 20、21、22 等**c(每个产品的 **quantity = 1)

然后我创建了两个不同的 CP(cp1 和 cp2)并在 Associated Product 选项卡中选择了那些 s* imple products with size *

如果用户购买size = 20的cp1,那么什么系统呢?

我想知道这种情况下的详细系统逻辑

大小为 20 的简单产品的数量为0,而 cp1 是否“缺货”

对不起我的英语,感谢任何关于我的问题的咨询!

4

2 回答 2

8

Magento 严格地说,可配置产品(CP)本身并不是一个产品,而是简单产品的集合。当你在一个CP的10种颜色中进行选择时,无非是选择了10种不同的同种颜色的简单产品。

假设一家商店只有一个 RED Ball和两个魔术盒CP1CP2

现在您可以从任何盒子中取出红球,因为它是一个魔法盒子。但是当您从其中一个盒子(CP1)中取出球时,红色球不能从另一个盒子(CP2)或CP1中取出,因为只有一个红色球

现在你可以拥有数百个魔术盒,你可以从任何一个盒子里取出红球(如果魔术师允许的话——在这种情况下是店主),但是当红球的存货用完时,没有人可以取出从任何一个盒子里的球。

当数量变为零时,要使产品缺货,你必须去

系统->配置->库存(在目录选项卡下)

如下图所示,将红色标记的字段设置为零。 在此处输入图像描述

而已。希望我让您对可配置产品的概念清楚。享受...

于 2012-12-27T08:15:02.280 回答
3

是的,如果您减少相关简单产品的库存,则包含该简单产品的所有父可配置产品的库存状态都会更新。仅当所有关联的子产品都缺货时,可配置产品才会缺货。

系统逻辑相当复杂,因为 Magento 可容纳许多内置产品类型,但也旨在适应自定义产品类型。在这些不同的产品类型中,可以通过多种方式管理(或不管理)库存。

当您在 Magento 中完成订单时,代表购物车的报价对象将转换为订单对象。如果您查看,Mage/CatalogInventory/etc/config.xml您会看到该模块正在观察系统中与库存水平相关的事件。很多这些事件是由Mage_Sales_Model_Service_Quote::submitOrder()哪个方法发出的,它是推动从报价到订单的大部分转换的方法。CatalogInventory 观察者方法既可以降低库存水平,又可以发出重新索引库存水平的请求。

Mage_CatalogInventory_Model_Stock_Status::updateStatus()第 266 行,您可以看到当简单产品的库存状态发生变化时更新该简单产品的所有父项的库存状态的调用。

于 2012-12-27T06:13:06.900 回答