我正在尝试分配某些产品用于高级库存管理,在DB中似乎没问题,但有些事情没有在BO上打勾,我想知道这是否会产生任何影响。
例如,当选择商店组并在BO中进行产品时,我没有看到“我想对此产品使用高级库存管理”,而“依赖库存”单选按钮被正确选中(因此,如果保持不变,则禁用复选框)。我不知道这对产品库存是否有问题。如果有人对此有任何意见,我们将不胜感激。
这是我到目前为止所做的:
$warehouse = new Warehouse(1);
$stock_manager = StockManagerFactory::getManager();
foreach($prods as $prod)
{
StockAvailable::setProductDependsOnStock($prod['id_product'], 1);
if ($stock_manager->addProduct($prod['id_product'], 0, $warehouse, 1, 5, 0.1, 1))
{
StockAvailable::synchronize($prod['id_product']);
}
}
答案 0 :(得分:1)
StockAvailable::setProductDependsOnStock
未启用该产品的AdvancedStockManagement。您还需要设置产品AdvancedStockManagement。您可以使用:
$warehouse = new Warehouse(1);
$stock_manager = StockManagerFactory::getManager();
foreach($prods as $prod)
{
$product = new Product($prod['id_product']);
if(!$product->advanced_stock_management)
$product->setAdvancedStockManagement(true);
StockAvailable::setProductDependsOnStock($prod['id_product'], 1);
if ($stock_manager->addProduct($prod['id_product'], 0, $warehouse, 1, 5, 0.1, 1))
{
StockAvailable::synchronize($prod['id_product']);
}
}