Ir al contenido
Menú
Se marcó esta pregunta
2 Respuestas
8605 Vistas

Hello All,


i am getting issue when applying compute method(_compute_days) in integer field(days) for odoo 13.

error is:-

lead.age.audit(<NewId origin=39>,).days

my code is below:-


class crm_lead_age(models.Model):
    _inherit = 'crm.lead'

    age_audit = fields.One2many('lead.age.audit', 'lead_id', index=True, store=True)


class crm_lead_age_audit(models.Model):
    _name = 'lead.age.audit'

    lead_id = fields.Many2one('crm.lead')
    stage_id = fields.Many2one('crm.stage')
    date_in = fields.Date()
    date_out = fields.Date()
    days = fields.Integer(compute='_compute_days', store=True)

    @api.depends('date_in', 'date_out')
    def _compute_days(self):
        for res in self:
            if res.date_in and res.date_out:
                res.days = (res.date_out - res.date_in).days


Thanks in advance.

Avatar
Descartar
Mejor respuesta

Hello Pawan,


You need to assign empty Value before the Loop

All the computed fields need to be assigned an empty value at least

@api.depends('date_in', 'date_out')
    def _compute_days(self):
        self.days = 0
        for res in self:
            if res.date_in and res.date_out:
                res.days = (res.date_out - res.date_in).days
Avatar
Descartar
Autor

Thanks swapnesh.... it's work.

Mejor respuesta

AttributeError: 'agri.projects' object has no attribute '_compute_wdays'

Avatar
Descartar
Publicaciones relacionadas Respuestas Vistas Actividad
1
ene 25
3713
1
may 22
2705
1
jun 25
15004
3
abr 25
5054
2
jul 24
1975