diff --git a/addons/account/models/account_invoice.py b/addons/account/models/account_invoice.py index d9f76a86cff..40dccf363d5 100644 --- a/addons/account/models/account_invoice.py +++ b/addons/account/models/account_invoice.py @@ -451,30 +451,16 @@ class AccountInvoice(models.Model): payment_term_id = False fiscal_position = False bank_id = False - p = self.partner_id company_id = self.company_id.id + p = self.partner_id if not company_id else self.partner_id.with_context(force_company=company_id) type = self.type if p: - partner_id = p.id rec_account = p.property_account_receivable_id pay_account = p.property_account_payable_id - if company_id: - if p.property_account_receivable_id.company_id and \ - p.property_account_receivable_id.company_id.id != company_id and \ - p.property_account_payable_id.company_id and \ - p.property_account_payable_id.company_id.id != company_id: - prop = self.env['ir.property'] - rec_dom = [('name', '=', 'property_account_receivable_id'), ('company_id', '=', company_id)] - pay_dom = [('name', '=', 'property_account_payable_id'), ('company_id', '=', company_id)] - res_dom = [('res_id', '=', 'res.partner,%s' % partner_id)] - rec_prop = prop.search(rec_dom + res_dom) or prop.search(rec_dom) - pay_prop = prop.search(pay_dom + res_dom) or prop.search(pay_dom) - rec_account = rec_prop.get_by_record() - pay_account = pay_prop.get_by_record() - if not rec_account and not pay_account: - action = self.env.ref('account.action_account_config') - msg = _('Cannot find a chart of accounts for this company, You should configure it. \nPlease go to Account Configuration.') - raise RedirectWarning(msg, action.id, _('Go to the configuration panel')) + if not rec_account and not pay_account: + action = self.env.ref('account.action_account_config') + msg = _('Cannot find a chart of accounts for this company, You should configure it. \nPlease go to Account Configuration.') + raise RedirectWarning(msg, action.id, _('Go to the configuration panel')) if type in ('out_invoice', 'out_refund'): account_id = rec_account.id