diff --git a/openerp/addons/base/res/res_company.py b/openerp/addons/base/res/res_company.py index 71995487cf1..596d4143849 100644 --- a/openerp/addons/base/res/res_company.py +++ b/openerp/addons/base/res/res_company.py @@ -22,7 +22,7 @@ import os import re import openerp -from openerp import SUPERUSER_ID, tools +from openerp import SUPERUSER_ID, tools, api from openerp.osv import fields, osv from openerp.tools.translate import _ from openerp.tools.safe_eval import safe_eval as eval @@ -154,6 +154,19 @@ class res_company(osv.osv): ('name_uniq', 'unique (name)', 'The company name must be unique !') ] + @api.multi + def copy(self, default=None): + """ + Duplicating a company without specifying a partner duplicate the partner + """ + self.ensure_one() + default = dict(default or {}) + if not default.get('name') and not default.get('partner_id'): + copy_partner = self.partner_id.copy() + default['partner_id'] = copy_partner.id + default['name'] = copy_partner.name + return super(res_company, self).copy(default) + def onchange_footer(self, cr, uid, ids, custom_footer, phone, fax, email, website, vat, company_registry, bank_ids, context=None): if custom_footer: return {}