[FIX] analytic: account search no partner=>work ok
The name_search of account.analytic.account do not find records that have no partner set. This is because some ORM search may breaks when it contains a auto_join relational field. We will try to fix this (at least in master version). In this changeset, we avoid the issue by combining 2 searches instead. opw-1941547 opw-1950010 closes #31881 Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
This commit is contained in:
@@ -160,7 +160,10 @@ class AccountAnalyticAccount(models.Model):
|
||||
if operator == 'ilike' and not (name or '').strip():
|
||||
domain = []
|
||||
else:
|
||||
domain = ['|', '|', ('code', operator, name), ('name', operator, name), ('partner_id.name', operator, name)]
|
||||
# search by partner separately because auto_join field can break searches
|
||||
partner_domain = [('partner_id.name', operator, name)]
|
||||
ids_partner = self._search(expression.AND([partner_domain, args]), limit=limit, access_rights_uid=name_get_uid)
|
||||
domain = ['|', '|', ('code', operator, name), ('name', operator, name), ('id', 'in', ids_partner)]
|
||||
analytic_account_ids = self._search(expression.AND([domain, args]), limit=limit, access_rights_uid=name_get_uid)
|
||||
return self.browse(analytic_account_ids).name_get()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user