Przemysław Szczerbicki

Przemysław Szczerbicki Programista,
freelancer

Temat: Masowa zmiana cen produktów

Witam,

chciałem masowo zmienić ceny specjalne określonych produktów w bazie danych. Magento 1.4.0.1
Mam kod:
 $request = $this->getRequest(); 
$intPercent = $request->getParam('percent', 5);
$collection = Mage::getModel('catalog/product');
$products_collection = $collection ->getCollection() ->setPage(0, 10)
//->addAttributeToSelect('*') ->addAttributeToSelect('entity_id')
->addAttributeToSelect('special_price')
->addAttributeToSelect('price')
->addFieldToFilter('sku',array('like'=>'AZY-%'))
->addFieldToFilter('special_price', array("neq"=>''));

foreach($products_collection as $product) {
$newPrice = round($product->getSpecialPrice()*(1.0+$intPercent/100.0), 2);
if($newPrice > 0.97*$product->getPrice()) { echo 'Za wysoka cena: '.$newPrice.' '.$product->getSpecialPrice().'-'.$product->getPrice().'<br />'; }
else {
try {
$product->save();
} catch (Exception $e){
echo $e->getMessage(); exit(0);
} } }

Niestety rzuca mi błędem:
Warning: Invalid argument supplied for foreach() in /home/.../app/code/core/Mage/Eav/Model/Entity/Abstract.php on line 995

Dlaczego nie mogę zapisać wprowadzonych zmian? Próbowałem też pobrać każdy produkt po kolei, ale to nic nie zmieniało.
Pobierałem też komplet danych ->addAttributeToSelect('*'), ale to też nic nie zmieniło.

pzdr.
Przemek

EDIT:
rozwiązane: http://www.wilsonhui.ca/web-development/product-update...Przemysław Szczerbicki edytował(a) ten post dnia 05.04.11 o godzinie 13:00