summaryrefslogtreecommitdiff
path: root/addons/analytic/models
diff options
context:
space:
mode:
authorqdp-odoo <qdp@odoo.com>2020-03-02 13:54:12 +0000
committerLaurent Smet <las@odoo.com>2020-03-26 13:22:58 +0000
commit847889b49768db290f86ab5c5f48e8134fa29266 (patch)
tree62d0d4f0b317b5e13dcfc319d013bf90abb807af /addons/analytic/models
parent4a93f93e405a2e2a6bcb538eeb12e6507ceaa99a (diff)
[FIX] analytic, account: multi company fixes
added _check_company_auto and check_company attributes on relevant objects Was task 2206523 closes odoo/odoo#46586 Related: odoo/enterprise#8986 Related: odoo/upgrade#993 Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Diffstat (limited to 'addons/analytic/models')
-rw-r--r--addons/analytic/models/analytic_account.py12
1 files changed, 7 insertions, 5 deletions
diff --git a/addons/analytic/models/analytic_account.py b/addons/analytic/models/analytic_account.py
index e5fd1614f39..5c99a9dfcdf 100644
--- a/addons/analytic/models/analytic_account.py
+++ b/addons/analytic/models/analytic_account.py
@@ -59,6 +59,7 @@ class AccountAnalyticAccount(models.Model):
_inherit = ['mail.thread']
_description = 'Analytic Account'
_order = 'code, name asc'
+ _check_company_auto = True
@api.model
def read_group(self, domain, fields, groupby, offset=0, limit=None, orderby=False, lazy=True):
@@ -126,14 +127,14 @@ class AccountAnalyticAccount(models.Model):
code = fields.Char(string='Reference', index=True, tracking=True)
active = fields.Boolean('Active', help="If the active field is set to False, it will allow you to hide the account without removing it.", default=True)
- group_id = fields.Many2one('account.analytic.group', string='Group', domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]")
+ group_id = fields.Many2one('account.analytic.group', string='Group', check_company=True)
line_ids = fields.One2many('account.analytic.line', 'account_id', string="Analytic Lines")
company_id = fields.Many2one('res.company', string='Company', default=lambda self: self.env.company)
# use auto_join to speed up name_search call
- partner_id = fields.Many2one('res.partner', string='Customer', auto_join=True, tracking=True, domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]")
+ partner_id = fields.Many2one('res.partner', string='Customer', auto_join=True, tracking=True, check_company=True)
balance = fields.Monetary(compute='_compute_debit_credit_balance', string='Balance')
debit = fields.Monetary(compute='_compute_debit_credit_balance', string='Debit')
@@ -172,6 +173,7 @@ class AccountAnalyticLine(models.Model):
_name = 'account.analytic.line'
_description = 'Analytic Line'
_order = 'date desc, id desc'
+ _check_company_auto = True
@api.model
def _default_user(self):
@@ -183,10 +185,10 @@ class AccountAnalyticLine(models.Model):
unit_amount = fields.Float('Quantity', default=0.0)
product_uom_id = fields.Many2one('uom.uom', string='Unit of Measure', domain="[('category_id', '=', product_uom_category_id)]")
product_uom_category_id = fields.Many2one(related='product_uom_id.category_id', readonly=True)
- account_id = fields.Many2one('account.analytic.account', 'Analytic Account', required=True, ondelete='restrict', index=True, domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]")
- partner_id = fields.Many2one('res.partner', string='Partner', domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]")
+ account_id = fields.Many2one('account.analytic.account', 'Analytic Account', required=True, ondelete='restrict', index=True, check_company=True)
+ partner_id = fields.Many2one('res.partner', string='Partner', check_company=True)
user_id = fields.Many2one('res.users', string='User', default=_default_user)
- tag_ids = fields.Many2many('account.analytic.tag', 'account_analytic_line_tag_rel', 'line_id', 'tag_id', string='Tags', copy=True, domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]")
+ tag_ids = fields.Many2many('account.analytic.tag', 'account_analytic_line_tag_rel', 'line_id', 'tag_id', string='Tags', copy=True, check_company=True)
company_id = fields.Many2one('res.company', string='Company', required=True, readonly=True, default=lambda self: self.env.company)
currency_id = fields.Many2one(related="company_id.currency_id", string="Currency", readonly=True, store=True, compute_sudo=True)
group_id = fields.Many2one('account.analytic.group', related='account_id.group_id', store=True, readonly=True, compute_sudo=True)