简体   繁体   English

如何在Magento中手动更新库存数量

[英]How to Update Stock Quantity Manually in Magento

I'm trying to update the stock quantity in magento manually. 我正在尝试手动更新magento中的库存数量。 I know it's possible but I don't know how to proceed... 我知道有可能,但我不知道如何进行...

I want to update the stock from a web service, and I'm searching how to list all my articles. 我想通过Web服务更新库存,我正在搜索如何列出所有文章。 Then, get the id of the article, send it to the web service, get the stock provides by the web service and to finish, update the stock in the database of Magento. 然后,获取商品的ID,将其发送到Web服务,获取Web服务提供的库存,最后,更新Magento数据库中的库存。

I'm a new user of Magento and your help will be really appreciate :) 我是Magento的新用户,非常感谢您的帮助:)

Thank you so much guys! 十分感谢大家!

3 tables are mainly used to manage the stock : cataloginventory_stock , cataloginventory_stock_item and cataloginventory_stock_status 3个表主要用于管理库存: cataloginventory_stockcataloginventory_stock_itemcataloginventory_stock_status

If you need to update a product's stock quantity you will need to find the relevant line in the cataloginventory_stock_item table and edit the qty field: 如果需要更新产品的库存数量,则需要在cataloginventory_stock_item表中找到相关行并编辑数量字段:

Example (set qty to 100 for product ID 33) : 示例(将产品ID 33的数量设置为100):

UPDATE cataloginventory_stock_item set qty=100 where product_id=33

Exist following solution 存在以下解决方案

$stockItem = Mage::getModel('cataloginventory/stock_item');
Mage::getResourceModel('cataloginventory/stock_item')->loadByProductId($stockItem, $allProductsIDs[$sku]);

$dataStock['sku'] = $sku;
$dataStock['qty'] = $qty;
$dataStock['is_in_stock'] = $isInStock;
$dataStock['manage_stock'] = $stockData['manage_stock'];
$dataStock['use_config_manage_stock'] = $stockData['use_config_manage_stock'];

foreach($dataStock as $key1=>$value1) {
$stockItem->setData($key1, $value1);
}

$stockItem->save();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM