[FIX] account_analytic_default_hr_expense : fix _onchange_product_id

_onchange_product_id() used to always (re)set hr_expense analytic_account_id & analytic_tag_ids to default values.
Or set those to false if no default values are found.
Installing account_analytic_default_hr_expense made odoo/addons/hr_expense/tests/test_expenses.py tests fail

- changed function name (no need to be a _onchange_product_id override)
- removed super() & return
- only set default value to var if var is False

closes odoo/odoo#50456

Task: 2205544
X-original-commit: 1c41c90ba715ba4141fd0410af886fac2a2c245c
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
Signed-off-by: jbw-odoo <jbw-odoo@users.noreply.github.com>
This commit is contained in:
jbw
2020-04-30 11:29:38 +00:00
parent 5f7de6226b
commit 4566cf2e57
@@ -8,7 +8,7 @@ class HrExpense(models.Model):
_inherit = 'hr.expense'
@api.onchange('product_id', 'date', 'account_id')
def _onchange_product_id(self):
def _onchange_product_id_date_account_id(self):
rec = self.env['account.analytic.default'].sudo().account_get(product_id=self.product_id.id, account_id=self.account_id.id, company_id=self.company_id.id, date=self.date)
self.analytic_account_id = rec.analytic_id.id
self.analytic_tag_ids = rec.analytic_tag_ids.ids
self.analytic_account_id = self.analytic_account_id or rec.analytic_id.id
self.analytic_tag_ids = self.analytic_tag_ids or rec.analytic_tag_ids.ids