Мне нужен SQL-запрос в magento 1.x для обновления каталога / инвентаря. Кол-во прямо сейчас я использую модель, как показано ниже, но это требует времени для выполнения, так что мне нужна программа, которая проверит, существует ли продукт, тогда кол-во будет обновлено
foreach ($value as $item)
{
$sku = $item['internalskucode'];
$availQty = $item['availableQuantity'];
if (is_numeric($sku) || $sku === '')
{
Mage::log($sku, null, 'numericsku.log');
}
else
{
if (Mage::getSingleton('catalog/product')->getIdBySku($sku)) {
// Product exists
$product_id = Mage::getModel("catalog/product")->getIdBySku($sku);
$stockItem = Mage::getModel('cataloginventory/stock_item')->loadByProduct($product_id);
$stockItem->setQty($availQty);
$stockItem->save();
Mage::log($sku, null, 'save.log');
}
else
{
// Product does not exist
Mage::log($sku, null, 'unavailable.log');
}
}
}
foreach ($value as $item)
{
$sku = $item['internalskucode'];
$availQty = $item['availableQuantity'];
if (is_numeric($sku) || $sku === '')
{
Mage::log($sku, null, 'numericsku.log');
}
else
{
if (Mage::getSingleton('catalog/product')->getIdBySku($sku)) {
// Product exists
$product_id = Mage::getModel("catalog/product")->getIdBySku($sku);
$stockItem = Mage::getModel('cataloginventory/stock_item')->loadByProduct($product_id);
$stockItem->setQty($availQty);
$stockItem->save();
Mage::log($sku, null, 'save.log');
}
else
{
// Product does not exist
Mage::log($sku, null, 'unavailable.log');
}
}
}
Кол-во должно обновляться SQL-запросом для всех продуктов.