2013-07-25 80 views
0

在Magento每個產品都有了要在股票Magmi股票地位問題

我用magmi從外部CSV文件更新股票indiviual最低數量。

的問題是,在CSV的成功更新用,magmi並不是指最低數量值來設置產品「股票」或「缺貨」

所以我所有的產品endup是「庫存」和只有當我在管理中編輯和保存產品時,它才能正確設置。


上述場景再次說明:

如果當前數量= 1 & mim_qty = 05和在CSV數量= 100

後magmi運行(重新索引完成)

new qty= 100 and i can see at front end at list.phtml 

未來

Current qty= 100 & mim_qty = 05 and in csv qty= 3 
如果你想min_qty由magmi解析

magmi運行(重新索引完成)以下設置

new qty= 3 and **i can see at front end at list.phtml** 

後在BOT案

Manage stock    = 1; 
use_config_manage_stock = 1; 
min_qty     = 05; 

回答

1

常見的,那麼你需要將它作爲輸入到magmi旁邊的價值。

Magmi上輸入數據,而不是當前的現有DB數據依賴95%(除不復制選擇/多選選項,或者檢查如果產品存在,得到的屬性元數據)

所以,min_qty不針對現有檢查價值,但輸入價值。如果輸入上未設置min_qty,則magmi不會根據min_qty的現有值更新is_in_stock。

這是我可以在下一個版本中加強的行爲。

+0

我已更新代碼..它檢查min_qty是否存在於magento中。 – user2206490

0

Magmi_ProductImportEngine類下的功能updateStock()

相反的:

$mqty=(isset($item["min_qty"])?$item["min_qty"]:0); 

我已經加入:

$gsql = "SELECT min_qty FROM cataloginventory_stock_item WHERE product_id=?"; 
$grvalue = $this->selectAll($gsql, array($pid)); 

foreach($grvalue as $gcalminqty) { 

    $gfinalminqty = $gcalminqty['min_qty']; 

} 

$gfinalminqty = (isset($gfinalminqty) ? $gfinalminqty : 0); 

$mqty = (isset($item["min_qty"]) ? $item["min_qty"] : $gfinalminqty); 

這會在CSV min_qty,如果不從Magento的讀取,otherwhise使用默認。

+0

試圖格式化您的代碼 - 請改善:-) – kleopatra