Вы поместили код хранимой процедуры как: -
$this->startSetup();
$sql = <<< __SQLPRC
...
Это должно быть следующим образом: -
$this->startSetup();
$sql = <<<__SQLPRC
...
Это должно работать сейчас, так как не должно быть никакихпробел после "<<<
" в соответствии с синтаксисом Heredoc ограничения строк PHP.
Надеюсь, это поможет.
Обновленный ответ: -
Можете ли вы попробовать использовать этот код: -
$write = Mage::getSingleton('core/resource')->getConnection('core_write');
$write->exec($sql);
вместо: -
$this->run($sql);
Я видел некоторые проблемыранее об этом на Magento.