Se rendre au contenu
Menu
Cette question a été signalée
1 Répondre
1489 Vues

when I create a new company, the company_registry value in res.partner (Customers - Sales) is not filled in automatically. I want it to be filled in automatically if res.company already has a company_registry value. Please correct the model if there is something wrong...



from odoo import models, fields
class ResPartner(models.Model):    _inherit = 'res.partner'
    company_registry = fields.Char(string='Company Registry')        def create(self, vals):        company_id = vals.get('company_id')        if company_id:            company = self.env['res.company'].browse(company_id)            if company.company_registry:                vals['company_registry'] = company.company_registry        return super(ResPartner, self).create(vals)
    def write(self, vals):        if 'company_id' in vals:            company = self.env['res.company'].browse(vals['company_id'])            if company.company_registry:                vals['company_registry'] = company.company_registry        return super(ResPartner, self).write(vals)
Avatar
Ignorer
Meilleure réponse

Hellow,
Why not you simplify it by removing the function create​ and write​, and then change the property for the field declaration like this:

company_registry = fields.Char(
​store=True,
​​string='Company Registry',
​related='company_id.company_registry')
Avatar
Ignorer
Publications associées Réponses Vues Activité
2
sept. 24
1190
1
oct. 24
1506
1
mai 24
1017
3
août 25
348
2
août 25
383