[FIX] res.partner: name_search() should match complete contact names in the format returned by name_get()
This was missed during the change of the name_get() format at revision 4923.1.12 revid:odo@openerp.com-20130416093121-t5soophs2aui8rzq lp bug: https://launchpad.net/bugs/1188300 fixed bzr revid: odo@openerp.com-20130612095300-pcr3ly5g7bv656i1
This commit is contained in:
parent
e532701d28
commit
8722e2a01e
|
@ -593,10 +593,16 @@ class res_partner(osv.osv, format_address):
|
|||
if limit:
|
||||
limit_str = ' limit %(limit)s'
|
||||
query_args['limit'] = limit
|
||||
# TODO: simplify this in trunk with _rec_name='display_name', once display_name
|
||||
# becomes a stored field
|
||||
cr.execute('''SELECT partner.id FROM res_partner partner
|
||||
LEFT JOIN res_partner company ON partner.parent_id = company.id
|
||||
WHERE partner.email ''' + operator +''' %(name)s
|
||||
OR partner.name || ' (' || COALESCE(company.name,'') || ')'
|
||||
WHERE partner.email ''' + operator +''' %(name)s OR
|
||||
CASE WHEN company.id IS NULL OR partner.is_company
|
||||
THEN partner.name
|
||||
ELSE
|
||||
company.name || ', ' || partner.name
|
||||
END
|
||||
''' + operator + ' %(name)s ' + limit_str, query_args)
|
||||
ids = map(lambda x: x[0], cr.fetchall())
|
||||
ids = self.search(cr, uid, [('id', 'in', ids)] + args, limit=limit, context=context)
|
||||
|
|
Loading…
Reference in New Issue