2014-01-08 52 views
0

我试图重新索引产品的价格,但它会引发以下错误:Magento的产品价格重新索引错误

2014-01-08T14:35:19+00:00 DEBUG (7): Exception message: SQLSTATE[21S01]: Insert value list does not match column list: 1136 Column count doesn't match value count at row 1 
Trace: #0 /var/www/vhosts/SITE DIRECTORY/lib/Varien/Db/Statement/Pdo/Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array) 
#1 /var/www/vhosts/SITE DIRECTORY/lib/Zend/Db/Statement.php(300): Varien_Db_Statement_Pdo_Mysql->_execute(Array) 
#2 /var/www/vhosts/SITE DIRECTORY/lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array) 
#3 /var/www/vhosts/SITE DIRECTORY/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('INSERT INTO `ca...', Array) 
#4 /var/www/vhosts/SITE DIRECTORY/lib/Varien/Db/Adapter/Pdo/Mysql.php(420): Zend_Db_Adapter_Pdo_Abstract->query('INSERT INTO `ca...', Array) 
#5 /var/www/vhosts/SITE DIRECTORY/app/code/community/OrganicInternet/SimpleConfigurableProducts/Catalog/Model/Resource/Eav/Mysql4/Product/Indexer/Price/Configurable.php(133): Varien_Db_Adapter_Pdo_Mysql->query('INSERT INTO `ca...') 
#6 /var/www/vhosts/SITE DIRECTORY/app/code/core/Mage/Catalog/Model/Resource/Product/Indexer/Price/Configurable.php(48): OrganicInternet_SimpleConfigurableProducts_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Price_Configurable->_prepareFinalPriceData() 
#7 /var/www/vhosts/SITE DIRECTORY/app/code/core/Mage/Catalog/Model/Resource/Product/Indexer/Price.php(385): Mage_Catalog_Model_Resource_Product_Indexer_Price_Configurable->reindexAll() 
#8 /var/www/vhosts/SITE DIRECTORY/app/code/core/Mage/Index/Model/Indexer/Abstract.php(143): Mage_Catalog_Model_Resource_Product_Indexer_Price->reindexAll() 
#9 /var/www/vhosts/SITE DIRECTORY/app/code/core/Mage/Index/Model/Process.php(209): Mage_Index_Model_Indexer_Abstract->reindexAll() 
#10 /var/www/vhosts/SITE DIRECTORY/app/code/core/Mage/Index/Model/Process.php(255): Mage_Index_Model_Process->reindexAll() 
#11 /var/www/vhosts/SITE DIRECTORY/app/code/core/Mage/Index/controllers/Adminhtml/ProcessController.php(124): Mage_Index_Model_Process->reindexEverything() 
#12 /var/www/vhosts/SITE DIRECTORY/app/code/core/Mage/Core/Controller/Varien/Action.php(419): Mage_Index_Adminhtml_ProcessController->reindexProcessAction() 
#13 /var/www/vhosts/SITE DIRECTORY/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(250): Mage_Core_Controller_Varien_Action->dispatch('reindexProcess') 
#14 /var/www/vhosts/SITE DIRECTORY/app/code/core/Mage/Core/Controller/Varien/Front.php(176): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http)) 
#15 /var/www/vhosts/SITE DIRECTORY/app/code/core/Mage/Core/Model/App.php(354): Mage_Core_Controller_Varien_Front->dispatch() 
#16 /var/www/vhosts/SITE DIRECTORY/app/Mage.php(683): Mage_Core_Model_App->run(Array) 
#17 /var/www/vhosts/SITE DIRECTORY/index.php(87): Mage::run('', 'store') 
#18 {main} 

我真的不能看到在声明中“INSERT INTO`CA表名......” “所以我不太清楚发生了什么事。

非常感谢

+0

您可以编辑'/ var/www/vhosts/SITE DIRECTORY/app/code/community/OrganicInternet/SimpleConfigurableProducts/Catalog/Model/Resource/Eav/Mysql4/Product/Indexer/Pri ce/Configurable.php(133)'并找到第133行。在该行之前查找定义查询的位置,并在两者之间放置一个var_dump()'变量。如果查询不起作用,您可能需要尝试使用magento数据库修复工具。请参阅http://www.magentocommerce.com/wiki/1_-_installation_and_configuration/db-repair-tool –

+0

谢谢,在我尝试完成之前,我简单的禁用网站dirc /应用程序/ etc/modules/OrganicInternet_SimpleConfigurableProducts.xml,reindexed和它工作正常,然后再次启用该文件。 – user3173757

回答

8

我干脆禁用网站DIRC /应用/ etc/modules中/ OrganicInternet_SimpleConfigurableProducts.xml,重建索引,它做工精细,然后再次启动该文件。

+0

伟大的工作。但是,如果禁用该文件,重新索引是否正常工作? –

0

为了解决这个问题,去以下路径编辑Configurable.php:

../app/code/community/OrganicInternet/SimpleConfigurableProducts/Catalog/Model/Resource/Eav/Mysql4/Product/Indexer/Price/Configurable.php

,并添加以下代码:

line 87 ->  'group_price'  => new Zend_Db_Expr('pi.group_price'), 
line 88 ->  'base_group_price' => new Zend_Db_Expr('pi.group_price'), 

line 131 ->  'group_price', 
line 132 ->  'base_group_price', 

请参考下列网站 http://teition.com/price-indexer-will-not-re-index-in-magento/