Voici un correctif pour un bug de la version 1.4.1.1 de Magento ( Oui je sais c’est une vieille version mais il existe des sites qui l’utilisent encore … )
Lorsque vous souhaitez rechercher une règle de promotion par identifiant, vous obtenez une belle erreur fatale.
Donc le message d’erreur est le suivant :

SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'rule_id' in where clause is ambiguous

Pour corriger cette erreur nous allons copier le fichier app/code/core/Mage/Adminhtml/Promo/Quote/Grid.php dans le dossier app/code/local/Mage/Adminhtml/Promo/Quote/Grid.php

Puis dans la fonction _prepareColumns éditer les paramètres du champ rule id

 $this->addColumn('rule_id', array(
            'header'    => Mage::helper('salesrule')->__('ID'),
            'align'     =>'right',
            'width'     => '50px',
            'index'     => 'rule_id',
            'filter_index' => 'main_table.rule_id', // Ajout d'un filtre index pour corriger la recherche
        ));

La recherche est à présent corrigée 🙂