[FIX] base, res_partner: fixed the name_search in order to propagate the right parame...
authorQuentin (OpenERP) <qdp-launchpad@openerp.com>
Tue, 20 Mar 2012 15:47:57 +0000 (16:47 +0100)
committerQuentin (OpenERP) <qdp-launchpad@openerp.com>
Tue, 20 Mar 2012 15:47:57 +0000 (16:47 +0100)
bzr revid: qdp-launchpad@openerp.com-20120320154757-0o8q4pb2uch76su2

openerp/addons/base/res/res_partner.py

index 701b3ca..c570c3b 100644 (file)
@@ -294,11 +294,11 @@ class res_partner(osv.osv):
             args = []
         if name and operator in ('=', 'ilike', '=ilike', 'like'):
             # search on the name of the contacts and of its company
-            name = '%' + name + '%'
+            name2 = operator == '=' and name or '%' + name + '%'
             cr.execute('''SELECT partner.id FROM res_partner partner 
                           LEFT JOIN res_partner company ON partner.parent_id = company.id 
                           WHERE partner.name || ' (' || COALESCE(company.name,'') || ')'
-                          ''' + operator + ''' %s ''', (name,))
+                          ''' + operator + ''' %s ''', (name2,))
             ids = map(lambda x: x[0], cr.fetchall())
             if args:
                 ids = self.search(cr, uid, [('id', 'in', ids)] + args, limit=limit, context=context)