İçereği Atla
Menü
Bu soru işaretlendi
2 Cevaplar
8706 Görünümler

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
Vazgeç
En İyi Yanıt

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
Vazgeç
Üretici

Thanks swapnesh.... it's work.

En İyi Yanıt

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

Avatar
Vazgeç
İlgili Gönderiler Cevaplar Görünümler Aktivite
1
Oca 25
3850
1
May 22
2778
1
Haz 25
15366
3
Nis 25
5545
Compute Fields Çözüldü
2
Tem 24
2556