diff options
| author | qdp-odoo <qdp@odoo.com> | 2015-12-02 11:21:58 +0100 |
|---|---|---|
| committer | qdp-odoo <qdp@odoo.com> | 2015-12-02 14:35:27 +0100 |
| commit | 7909a4409afb0b2dc4ac8b4db402f8e5dd5970c8 (patch) | |
| tree | d5bc1c2059aba6ab15110ee1a7ed5e702386e901 /addons | |
| parent | 5db0db924a1edef4bf40f86886d527069f7e3505 (diff) | |
[FIX] analytic: fixed name_search() on analytic account. The partner_id field is not mandatory, but the previous domain was making an inner join with the partner table, which resulted in not finding the accounts matching the search criteria on name/code if they hadn't a partner set.
Diffstat (limited to 'addons')
| -rw-r--r-- | addons/analytic/models/analytic.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/addons/analytic/models/analytic.py b/addons/analytic/models/analytic.py index b1759ac7406..45de1c26198 100644 --- a/addons/analytic/models/analytic.py +++ b/addons/analytic/models/analytic.py @@ -77,7 +77,11 @@ class account_analytic_account(models.Model): @api.model def name_search(self, name='', args=None, operator='ilike', limit=100): args = args or [] - recs = self.search(['|', '|', ('code', operator, name), ('partner_id.name', operator, name), ('name', operator, name)] + args, limit=limit) + domain = ['|', ('code', operator, name), ('name', operator, name)] + partners = self.env['res.partner'].search([('name', operator, name)], limit=limit) + if partners: + domain = ['|'] + domain + [('partner_id', 'in', partners.ids)] + recs = self.search(domain + args, limit=limit) return recs.name_get() |
