【问题标题】:I need to turn on the Manage Stock option我需要打开“管理库存”选项
【发布时间】:2013-09-26 21:43:00
【问题描述】:

我需要为数千种产品打开“管理库存”选项。我正在使用 PHP 来更新 Magento 表。我只需要帮助确定要更新的表和字段。这些字段是:

管理库存
商品状态变为缺货的数量
购物车中允许的最小数量
数量不足通知

我相信它们可能在 catalog_product_entity_int 但我不知道什么值与哪个相关。

【问题讨论】:

    标签: magento


    【解决方案1】:

    管理股票选项在cataloginventory_stock_item 中有自己的列 如果你想通过 mysql 做到这一点,你可以这样做。

    有 2 个选项,不确定哪个最适合您。

    如果系统配置System->Inventory->Product Stock Options->Manage Stock设置为yes,很多人只想更新use_config_manage_stock

    UPDATE 
        cataloginventory_stock_item 
    SET 
        use_config_manage_stock = 1
    

    另一种方法是为每个产品单独设置此项

    UPDATE
        cataloginventory_stock_item 
    SET 
        use_config_manage_stock = 0, 
        manage_stock = 1
    

    运行这些查询后,您应该重新索引“库存状态”

    【讨论】:

      【解决方案2】:

      您正在搜索Mage_CatalogInventory_Model_Stock_Item 模型:

      $sProductId = 911;
      $oStockItem = Mage::getModel('cataloginventory/stock_item')->loadByProduct($sProductId);
      var_dump($oStockItem->getData());
      
      Sample output:
      ["item_id"]=> string(4) "911"
      ["product_id"]=> string(4) "911"
      ["stock_id"]=> string(1) "1"
      ["qty"]=> string(6) "0.0000"
      ["min_qty"]=> string(7) "-3.0000"
      ["use_config_min_qty"]=> string(1) "1"
      ["is_qty_decimal"]=> string(1) "0"
      ["backorders"]=> string(1) "0"
      ["use_config_backorders"]=> string(1) "1"
      ["min_sale_qty"]=> string(7) "10.0000"
      ["use_config_min_sale_qty"]=> string(1) "1"
      ["max_sale_qty"]=> string(6) "0.0000"
      ["use_config_max_sale_qty"]=> string(1) "1"
      ["is_in_stock"]=> string(1) "0"
      ["low_stock_date"]=> string(19) "2013-06-28 01:02:34"
      ["notify_stock_qty"]=> string(6) "0.0000"
      ["use_config_notify_stock_qty"]=> string(1) "1"
      ["manage_stock"]=> string(1) "1"
      ["use_config_manage_stock"]=> string(1) "1"
      ["stock_status_changed_auto"]=> string(1) "1"
      ["use_config_qty_increments"]=> string(1) "1"
      ["qty_increments"]=> string(6) "0.0000"
      ["use_config_enable_qty_inc"]=> string(1) "1"
      ["enable_qty_increments"]=> string(1) "0"
      ["type_id"]=> string(6) "simple"
      ["stock_status_changed_automatically"]=> string(1) "1"
      ["use_config_enable_qty_increments"]=> string(1) "1"
      

      启用库存管理(或任何其他属性)的示例代码:

      $sProductId = 911;
      $oStockItem = Mage::getModel('cataloginventory/stock_item')->loadByProduct($sProductId);
      $sStockId = $oStockItem->getId();
      $aStock = array();
      if (!$sStockId) {
          $oStockItem
              ->setProductId($sProductId)
              ->setStockId(1);
      }
      else {
          $aStock = $oStockItem->getData();
      }
      
      $aStock['manage_stock'] = 1;
      // $aStock['use_config_manage_stock'] = 1;
      
      foreach ($aStock as $k => $v) {
          $oStockItem->setData($k, $v);
      }
      
      $oStockItem->save();
      

      【讨论】:

        【解决方案3】:

        表:cataloginventory_stock_item

        manage_stock 将值更新为 1 和 use_config_manage_stock 将值更新为 0

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2020-05-18
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-06-18
          • 2022-07-19
          • 2014-07-14
          相关资源
          最近更新 更多