Magento Extensions:Enhanced Order Grid

From XTENTO Support Wiki
Jump to: navigation, search
This is a guide for Magento 1. For Magento 2 extensions and guides, please refer to Magento 2 Guides.

Extension Logo



Customizing your sales grids has never been easier before! Easily add new columns (30 fields available - including payment method, shipping method, items ordered, tracking numbers and many more), hide unnecessary columns and change column positions in the Sales > Orders, Invoices, Shipments and Credit Memos grids using the Enhanced Order Grid extension by XTENTO.

Interested in this Magento Extension?

Head over to our store to purchase this extension: Enhanced Order Grid

Got questions? Feel free to contact us! Contact Form

Setting up the extension


Please refer to our general Extension Installation and Setup Guide for installation instructions.

To enable the module, go to System > Configuration > XTENTO Extensions > Enhanced Order Grid. Make sure to enter your license key and enable the module there.


Customizing your grids is easy. Just open the respective grid, for example Sales > Orders, and press the "Grid Customization" button located right above the "Reset Filter" button.

You will now see a table with your grid configurations. If none exists, click "Add new customized grid" to create a new grid configuration.

Adding custom columns

Since version 1.4.6, it is easy to add custom columns to the grid, for example data stored in other tables in the database or other fields stored, e.g., in the sales_flat_order table.

To do so, just rename the app/code/local/Xtento/EnhancedGrid/Model/Columns/Customer/Columns.php.sample to Columns.php. Then follow the instructions/documentation inside that file.



Wyomind Orders Eraser

This is actually an incompatibility in the Wyomind_Orderseraser extension. Please open the file app\code\community\Wyomind\Orderseraser\Model\Observer.php and look for this line: if (get_class($block) == Mage::getStoreConfig("orderseraser/system/grid")) { Replace this with: if (is_subclass_of($block, Mage::getStoreConfig("orderseraser/system/grid"))) { Save the file, refresh the Magento cache/compiler. Done.

Wyomind Advanced Stock

Please open the file /app/code/local/Wyomind/Advancedinventory/Model/Observer.php and look for: if (get_class($block) == Mage::getStoreConfig("advancedinventory/system/ordergrid")) { Replace this with: if ($block instanceof Mage_Adminhtml_Block_Sales_Order_Grid) { Look for: $collection->addFieldToFilter('assignation_warehouse', array('finset' => $value)); Replace this with: $collection->addFieldToFilter('main_table.assignation_warehouse', array('finset' => $value)); Save the file, log out of Magento and log in again, refresh the Magento cache/compiler. Done.

Amasty Flags

Please open the file /code/local/Xtento/EnhancedGrid/Model/Grid/Rewrite.php and look for: $this->_rewriteClass($collectionModule, $collectionName, $newModelClass, 'model'); Replace this with: #$this->_rewriteClass($collectionModule, $collectionName, $newModelClass, 'model'); Save the file.

Open the file /code/local/Xtento/EnhancedGrid/etc/config.xml and look for: </xtento_enhancedgrid_mysql4> AFTER this add: <sales_resource><rewrite><order_grid_collection>Xtento_EnhancedGrid_Model_Sales_Order_Grid_Collection</order_grid_collection></rewrite></sales_resource> Save the file, refresh the Magento cache/compiler. Done.

Aitoc Checkout Fields Manager

Reason: This is caused by a bug in the Checkout Fields Manager extension. They add main_table in front of EVERY field in their grid rewrite, that's wrong. Please open the file app/code/local/Aitoc/Aitcheckoutfields/Block/Rewrite/AdminhtmlSalesOrderGrid.php and look for: $field = 'main_table.' . $field; Replace this with: #$field = 'main_table.' . $field; Save the file, refresh the Magento cache/compiler. Done.

WDCA Enhanced Admin Product Grid

The WDCA extension and our extension use the same configuration page identifier at System > Configuration. Thus, once our extension is installed, you will need to go to System > XTENTO > Enhanced Order Grid to configure the WDCA Product Grid extension. The WDCA Product Grid configuration is BELOW the "Extension Configuration" section of our extension.


The usage of BL_CustomGrid and our extension at the same time is not recommended. In order for the sales grids to work, please disable BL_CustomGrid rewriting the sales grid by going to System > Configuration > ENHANCED ADMIN GRIDS > Base Configuration and in the "Global Exclusions" list please add an exclusion for: Block Type "adminhtml/sales_*_grid" (Without quotes, and yes including the *) - Rewriting Class: "*" (Without quotes, so this field will just contain a *)

Fatal error: Call to a member function setColumn() on a non-object

If you are using our extension and are getting an error on the Sales grids saying:

Fatal error: Call to a member function setColumn() on a non-object in [...]/app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column.php on line 291

This can be caused by a extension that added fields to the Sales grids but has now been disabled. To fix this, go into the xtento_enhancedgrid_grid table in your database and delete your grid configurations. The error will disappear and you will be able to set up your grids again.


The way this extension rewrites the order grid collection is not compatible. Thus, you have to disable the rewrite of the order_grid_collection class in config.xml and comment out the _getCollectionClass() function in Block/Adminhtml/Sales/Order/Grid.php.

New payment method installed, does not show up in grid

Or if other fields remain empty. This is because the grid configuration is cached for performance reasons. Simply go to Sales > Orders, press "Grid Customization" and open your grid configuration. Save it once. You will now see the new fields on the grid.

Personal tools
General Information
Magento 1 Guides
Magento 1 Extensions
Magento 2 Guides
Magento 2 Extensions
Magento Integration Suite