我正在尝试使用C#中的Magento SOAP API更新Magento中的产品库存。当我调用product_stock.update接口时,它返回true。但是当我检入Magento管理面板时,它没有更新。
ProductInventoryStock[] arrProdInventoryStock = new ProductInventoryStock[1];
for (int iCnt = 0; iCnt < arrProdInventoryStock.Count(); iCnt++)
{
ProductInventoryStock objProdInventoryStock = new ProductInventoryStock();
objProdInventoryStock.qty = "111";
objProdInventoryStock.is_in_stock = 1;
objProdInventoryStock.manage_stock = 1;
objProdInventoryStock.use_config_manage_stock = 0;
arrProdInventoryStock[iCnt] = objProdInventoryStock;
}
bool test = Inventory.Update(apiUrl, sessionId, new object[] { "126", arrProdInventoryStock });
请检查一下,这里有什么问题吗?还是别的什么?谢谢。
发布于 2015-10-19 14:33:51
我正在使用Mangento 1.9.x
和v2_soap?wsdl=1
,并与C# (4.5Framework)集成,我做了一个简单的函数来更新库存,参数为activeSession
,ProductId
,stockQty
,stockStatus
。需要注意的最重要的一点是,我已经将该值与is_in_stockSpecified
一起设置为is_in_stock
protected void AddInventory(string activeSession, string ProductId, string stockQty, int stockStatus)
{
MagentoService mservice = new MagentoService();
catalogInventoryStockItemUpdateEntity uStock = new catalogInventoryStockItemUpdateEntity();
int stock_status=stockStatus;
uStock.qty = stockQty;
uStock.is_in_stock = stock_status;
uStock.is_in_stockSpecified = Convert.ToBoolean(stock_status);
int result;
try
{
result = mservice.catalogInventoryStockItemUpdate(activeSession, ProductId, uStock);
}
catch (Exception ex)
{
}
}
https://stackoverflow.com/questions/28562845
复制相似问题