2012-03-31 56 views
1

親愛的社區我需要你的幫助。Magento 1.6.2不能重新索引產品價格

花費很多時間在一個看起來很容易修復的問題上。無法重新定價。價格將在productview頁面上更改,但不會在類別視圖中更改。

該錯誤隻影響configeruble產品的類別查看價格。

我所做的:

  • 使用Magento的-cleanup.php
  • 刪除所有門店
  • 刪除所有名品
  • Repeare數據庫(PHP myadmin)

試圖找到數據庫修復工具,但它似乎不再可用從magento網站?

下方異常日誌:

2012-03-31T12:02:12 + 00:00 DEBUG(7):異常消息:SQLSTATE [21S01]:插入值列表不匹配列列表:1136列計數不在行匹配值計數1

跟蹤:

#0 C:\xampp\htdocs\lib\Varien\Db\Statement\Pdo\Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array) 
#1 C:\xampp\htdocs\lib\Zend\Db\Statement.php(300): Varien_Db_Statement_Pdo_Mysql->_execute(Array) 


#2 C:\xampp\htdocs\lib\Zend\Db\Adapter\Abstract.php(479): Zend_Db_Statement->execute(Array) 


#3 C:\xampp\htdocs\lib\Zend\Db\Adapter\Pdo\Abstract.php(238): Zend_Db_Adapter_Abstract->query('INSERT INTO `ca...', Array) 

#4 C:\xampp\htdocs\lib\Varien\Db\Adapter\Pdo\Mysql.php(389): Zend_Db_Adapter_Pdo_Abstract->query('INSERT INTO `ca...', Array) 


#5 C:\xampp\htdocs\app\code\core\Mage\Catalog\Model\Resource\Product\Indexer\Price\Default.php(278): Varien_Db_Adapter_Pdo_Mysql->query('INSERT INTO `ca...') 


#6 C:\xampp\htdocs\app\code\core\Mage\Downloadable\Model\Resource\Indexer\Price.php(47): Mage_Catalog_Model_Resource_Product_Indexer_Price_Default->_prepareFinalPriceData() 


#7 C:\xampp\htdocs\app\code\core\Mage\Catalog\Model\Resource\Product\Indexer\Price.php(381): Mage_Downloadable_Model_Resource_Indexer_Price->reindexAll() 


#8 C:\xampp\htdocs\app\code\core\Mage\Index\Model\Indexer\Abstract.php(143): Mage_Catalog_Model_Resource_Product_Indexer_Price->reindexAll() 


#9 C:\xampp\htdocs\app\code\core\Mage\Index\Model\Process.php(207): Mage_Index_Model_Indexer_Abstract->reindexAll() 
#10 C:\xampp\htdocs\app\code\core\Mage\Index\Model\Process.php(253): Mage_Index_Model_Process->reindexAll() 


#11 C:\xampp\htdocs\app\code\core\Mage\Index\controllers\Adminhtml\ProcessController.php(124): Mage_Index_Model_Process->reindexEverything() 


#12 C:\xampp\htdocs\app\code\core\Mage\Core\Controller\Varien\Action.php(420): Mage_Index_Adminhtml_ProcessController->reindexProcessAction() 


#13 C:\xampp\htdocs\app\code\core\Mage\Core\Controller\Varien\Router\Standard.php(250): Mage_Core_Controller_Varien_Action->dispatch('reindexProcess') 


#14 C:\xampp\htdocs\app\code\core\Mage\Core\Controller\Varien\Front.php(176): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http)) 

#15 C:\xampp\htdocs\app\code\core\Mage\Core\Model\App.php(349): Mage_Core_Controller_Varien_Front->dispatch() 


#16 C:\xampp\htdocs\app\Mage.php(640): Mage_Core_Model_App->run(Array) 


#17 C:\xampp\htdocs\index.php(83): Mage::run('', 'store') 


#18 {main} 

有人可以提供一些線索這光?

THX!

+0

的數據庫修復工具可以在這裏下載:http://www.magentocommerce.ro/download/ – Shaz 2012-04-02 18:26:32

+0

嘗試'PHP從CLI /your-magento-path/shell/indexer.php info'有哪些呢它返回? – B00MER 2012-04-02 22:29:16

回答

0

問題對我來說很棘手,我昨天試了一下Magento 1.7,升級後又增加了一些列(特別是group_price)。由於存在一些錯誤,我切換到1.6.2,但列仍然在這裏。所以我不得不在數據庫中手動刪除創建的列。

希望這會有所幫助!

+0

嘿,謝謝你的支持!上週末帶我度過了無法解決的問題......剛剛恢復舊備份並承受了損失...... – 2012-05-26 12:01:38

0

我已經使用傳統(和有效)的方式升級了幾個Magento CE(1.4)到Magento EE(1.11)。但是,我發現在重新定價阻止Magento這樣做的時候存在一個重要問題。

閱讀關於Magento Boards的這篇文章我發現問題(在我的情況下)與catalog_product_entity_tier_price表錯誤有關,其中一些條目與不存在的產品有關。這是實際的錯誤,並試圖重新索引產品的價格時,Magento的會拋出這樣的消息:

There was a problem with reindexing process. 

如何解決呢

所以要解決這個問題。您必須刪除catalog_product_entity_tier_price表中與所有不存在的產品相關的所有條目。您可以手動執行此操作,也可以使用我創建的以下腳本。它非常易於使用。

[download from here][1] 

在該文件中,你會發現:

The script: clean_tier_prices.php 
A library to connect in a really easy way to the db 

按照此步驟:

Make a copy of your database (just in case) 
Uncompress the zip file in your magento base directory 
Edit the lib/db.php file and put there your connection settings (db user, user pass and db) 
Open the browser and go to http://yourmagentopath.com/clean_tier_prices.php 
You’ll see wich references have been deleted from the catalog_product_entity_tier_price table 
Try reindexing again in your Magento backoffice 

重要提示:您需要您自擔風險使用此腳本。在應用之前製作數據庫的副本。如果你改善了這一點,請與我和世界其他地方分享! download from here