Através de programação clara do produto, os preços do grupo - argumento Inválido fornecido para o foreach()

magento.stackexchange https://magento.stackexchange.com/questions/106782

  •  29-09-2020
  •  | 
  •  

Pergunta

Eu estou tentando através de programação limpar um produto, os preços do grupo dentro de um módulo personalizado.Thisi s o meu código:

Mage::setIsDeveloperMode(true); // for debug only
try
{
    $product = Mage::getModel('catalog/product')->load($productId);
    $product->setGroupPrice(null);
    $product->save();
}
catch (Exception $ex)
{
    echo "Error: ". $ex->getMessage();
}

Quando esse código é executado, recebo a seguinte exceção:

Aviso:Argumento inválido fornecido para foreach() em /home/www-data/public_html/app/code/core/Mage/Eav/Model/Entity/Abstract.php na linha de 1180

No system.log arquivo, vejo colocar essas entradas:

2016-03-17T18:01:06+00:00 MENSAGEM DE (3):Aviso:Argumento inválido fornecido para foreach() em /home/www-data/public_html/app/code/core/Mage/Eav/Model/Entity/Abstract.php na linha de 1180 2016-03-17T18:01:06+00:00 MENSAGEM de (3):Recuperável De Erro:Argumento 3 passadas para Mage_Catalog_Model_Resource_Abstract::_canUpdateAttribute() deve ser de o tipo de matriz, null dado, chamado em /home/www-data/public_html/app/code/core/Mage/Eav/Model/Entity/Abstract.php na linha de 1225 e definidos em /home/www-data/public_html/app/code/core/Mage/Catalog/Model/Resource/Abstract.php na linha 543 2016-03-17T18:01:06+00:00 MENSAGEM de (3):Recuperável De Erro:Argumento 3 passadas para Mage_Eav_Model_Entity_Abstract::_canUpdateAttribute() deve ser do tipo de matriz, null dado, chamado em /home/www-data/public_html/app/code/core/Mage/Catalog/Model/Resource/Abstract.php na linha 545 e definidos em /home/www-data/public_html/app/code/core/Mage/Eav/Model/Entity/Abstract.php na linha 1254 2016-03-17T18:01:06+00:00 MENSAGEM de (3):Aviso:array_key_exists() expects parameter 2 para ser matriz, null dada em /home/www-data/public_html/app/code/core/Mage/Eav/Model/Entity/Abstract.php na linha 1256

Alguma idéia do que pode estar causando isso?O mesmo código no meu dev magento instalação funciona, mas na produção magento, esse erro começou a aparecer, por isso estou um pouco confuso.

Foi útil?

Solução

Provavelmente você já ter resolvido esse problema já, mas para outras pessoas olhando para a resolução - você precisa definir loja âmbito primeiro.

Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange
scroll top