我试图制作能够让员工获得签证余额的模块。 我试图做的是,当一个员工分配签证号时,它会将计数器used_visa改为1。 所以我的问题是如何更新在签证中的柜台.balance.balance.line'在' hr.employee'中选择签证号码时的模型模型
这是我的代码:
class hr_visa_balance(models.Model):
_name = "hr.visa.balance"
_rec_name = "visa_no"
visa_no = fields.Char("Visa Number")
approval_date = fields.Date('Approval Date')
visa_line_ids = fields.One2many('visa.balance.line', 'visa_line_id', 'Visa Balance Details')
class visa_balance_line(models.Model):
_name = 'visa.balance.line'
_rec_name = "visa_line_id"
profession = fields.Char()
gender = fields.Selection([('m','Male'),('f','Female')], 'Gender')
country_id = fields.Many2one('res.country', 'Nationality')
available_visa = fields.Integer('Available')
used_visa = fields.Integer('Used')
visa_line_id = fields.Many2one('hr.visa.balance', 'Visa Balance Details')
class hr_employee(models.Model):
_inherit = 'hr.employee',
visa_line = fields.Many2one('visa.balance.line', 'Visa Balance Details')
@api.onchange('visa_line')
def onchange_visa_no(self):
~ code here ~
答案 0 :(得分:0)
首先,我没有得到你的结构, 我认为在员工中你必须选择多个“hr.visa.balance”对象, 你正在选择“visa.balance.line”
现在你需要做什么:
在hr.employee中给出一个hr.visa.balance中的一个,并且在visa_no的on_change上你必须写逻辑,
注意:您可以直接在“hr.visa.balance”这个对象中计算签证余额。
无需在visa.balance.line中使用此字段。