Skip to main content

Please add below changes to your code.

You need to add GROUP BY entity_idGROUP BY entity_id.

Add select query on collection like below.

$collection->getSelect()->joinLeft(
            array('s' => new Zend_Db_Expr('(SELECT (o.grand_total - o.tax_amount) grand_excl_tax,'
                . ' FROM ' . Mage::getSingleton('core/resource')->getTableName('sales/invoice') . ' AS o'
                . ' GROUP BY entity_id)')),
            "s.entity_id = main_table.entity_id",
            array('grand_excl_tax')
        );

After that add filter_indexfilter_index in addColumnaddColumn:

$this->addColumn('grand_excl_tax', array(
        'header'    => Mage::helper('customer')->__('Amount Excl. Tax'),
        'index'     => 'grand_excl_tax',
        'filter_index' => 's.grand_excl_tax',
        'type'      => 'currency',
        'align'     => 'right',
        'currency'  => 'order_currency_code',
    ));

I am tested it and it's working fine form me  , After applying this there is not any issue on grid filter.

Let me know still if you face any issue.

Please add below changes to your code.

You need to add GROUP BY entity_id.

Add select query on collection like below.

$collection->getSelect()->joinLeft(
            array('s' => new Zend_Db_Expr('(SELECT (o.grand_total - o.tax_amount) grand_excl_tax,'
                . ' FROM ' . Mage::getSingleton('core/resource')->getTableName('sales/invoice') . ' AS o'
                . ' GROUP BY entity_id)')),
            "s.entity_id = main_table.entity_id",
            array('grand_excl_tax')
        );

After that add filter_index in addColumn

$this->addColumn('grand_excl_tax', array(
        'header'    => Mage::helper('customer')->__('Amount Excl. Tax'),
        'index'     => 'grand_excl_tax',
        'filter_index' => 's.grand_excl_tax',
        'type'      => 'currency',
        'align'     => 'right',
        'currency'  => 'order_currency_code',
    ));

I am tested it and it's working fine form me  , After applying this there is not any issue on grid filter

Let me know still if you face any issue.

Please add below changes to your code.

You need to add GROUP BY entity_id.

Add select query on collection like below.

$collection->getSelect()->joinLeft(
    array('s' => new Zend_Db_Expr('(SELECT (o.grand_total - o.tax_amount) grand_excl_tax,'
        . ' FROM ' . Mage::getSingleton('core/resource')->getTableName('sales/invoice') . ' AS o'
        . ' GROUP BY entity_id)')),
    "s.entity_id = main_table.entity_id",
    array('grand_excl_tax')
);

After that add filter_index in addColumn:

$this->addColumn('grand_excl_tax', array(
    'header'    => Mage::helper('customer')->__('Amount Excl. Tax'),
    'index'     => 'grand_excl_tax',
    'filter_index' => 's.grand_excl_tax',
    'type'      => 'currency',
    'align'     => 'right',
    'currency'  => 'order_currency_code',
));

I am tested it and it's working fine form me, After applying this there is not any issue on grid filter.

Let me know still if you face any issue.

deleted 6 characters in body
Source Link
Nitin Vala
  • 485
  • 3
  • 7

Please add below changes to your code.

You need to add GROUP BY entity_id.

Add select query on collection like below.

$collection->getSelect()->joinLeft(
            array('s' => new Zend_Db_Expr('(SELECT (o.grand_total - invoiceo.tax_amount) grand_excl_tax,'
                . ' FROM ' . Mage::getSingleton('core/resource')->getTableName('sales/invoice') . ' AS o'
                . ' GROUP BY entity_id)')),
            "s.entity_id = main_table.entity_id",
            array('grand_excl_tax')
        );

After that add filter_index in addColumn

$this->addColumn('grand_excl_tax', array(
        'header'    => Mage::helper('customer')->__('Amount Excl. Tax'),
        'index'     => 'grand_excl_tax',
        'filter_index' => 's.grand_excl_tax',
        'type'      => 'currency',
        'align'     => 'right',
        'currency'  => 'order_currency_code',
    ));

I am tested it and it's working fine form me , After applying this there is not any issue on grid filter

Let me know still if you face any issue.

Please add below changes to your code.

You need to add GROUP BY entity_id.

Add select query on collection like below.

$collection->getSelect()->joinLeft(
            array('s' => new Zend_Db_Expr('(SELECT (o.grand_total - invoice.tax_amount) grand_excl_tax,'
                . ' FROM ' . Mage::getSingleton('core/resource')->getTableName('sales/invoice') . ' AS o'
                . ' GROUP BY entity_id)')),
            "s.entity_id = main_table.entity_id",
            array('grand_excl_tax')
        );

After that add filter_index in addColumn

$this->addColumn('grand_excl_tax', array(
        'header'    => Mage::helper('customer')->__('Amount Excl. Tax'),
        'index'     => 'grand_excl_tax',
        'filter_index' => 's.grand_excl_tax',
        'type'      => 'currency',
        'align'     => 'right',
        'currency'  => 'order_currency_code',
    ));

I am tested it and it's working fine form me , After applying this there is not any issue on grid filter

Let me know still if you face any issue.

Please add below changes to your code.

You need to add GROUP BY entity_id.

Add select query on collection like below.

$collection->getSelect()->joinLeft(
            array('s' => new Zend_Db_Expr('(SELECT (o.grand_total - o.tax_amount) grand_excl_tax,'
                . ' FROM ' . Mage::getSingleton('core/resource')->getTableName('sales/invoice') . ' AS o'
                . ' GROUP BY entity_id)')),
            "s.entity_id = main_table.entity_id",
            array('grand_excl_tax')
        );

After that add filter_index in addColumn

$this->addColumn('grand_excl_tax', array(
        'header'    => Mage::helper('customer')->__('Amount Excl. Tax'),
        'index'     => 'grand_excl_tax',
        'filter_index' => 's.grand_excl_tax',
        'type'      => 'currency',
        'align'     => 'right',
        'currency'  => 'order_currency_code',
    ));

I am tested it and it's working fine form me , After applying this there is not any issue on grid filter

Let me know still if you face any issue.

Source Link
Nitin Vala
  • 485
  • 3
  • 7

Please add below changes to your code.

You need to add GROUP BY entity_id.

Add select query on collection like below.

$collection->getSelect()->joinLeft(
            array('s' => new Zend_Db_Expr('(SELECT (o.grand_total - invoice.tax_amount) grand_excl_tax,'
                . ' FROM ' . Mage::getSingleton('core/resource')->getTableName('sales/invoice') . ' AS o'
                . ' GROUP BY entity_id)')),
            "s.entity_id = main_table.entity_id",
            array('grand_excl_tax')
        );

After that add filter_index in addColumn

$this->addColumn('grand_excl_tax', array(
        'header'    => Mage::helper('customer')->__('Amount Excl. Tax'),
        'index'     => 'grand_excl_tax',
        'filter_index' => 's.grand_excl_tax',
        'type'      => 'currency',
        'align'     => 'right',
        'currency'  => 'order_currency_code',
    ));

I am tested it and it's working fine form me , After applying this there is not any issue on grid filter

Let me know still if you face any issue.