I would like to add three years to the existing fields.date (date_entree
) and get back the result in the field date_fin_prev
in Odoo.
The first approach is:
from odoo import fields,api,models
from datetime import datetime
class Ca_administrateur (models.Model):
_name= "ca_administrateur"
date_entree= fields.Date(string="Date d'entrée")
date_fin_prev= fields.Date(compute="_compute_date_fin_prev", store=False)
@api.multi
@api.depends('date_entree')
def _compute_date_fin_prev(self):
for record in self:
record.date_fin_prev = record.date_entree + datetime.timedelta(years=3)
The error generates is "AttributeError: 'ca_administrateur' object has no attribute '_compute_date_fin_prev'
"
When i try the second approach
date_fin_prev= fields.Date()
@api.multi
@api.onchange('date_entree')
def on_change_state(self):
for record in self:
record.date_fin_prev = record.date_entree + datetime.timedelta(years=3)
But when i clicks in "save" on the interface, it's not effect in the table date_fin_prev