Odoo 10:如何在条件下改变工作流的状态?

时间:2018-04-07 09:08:06

标签: odoo-10

我有这堂课:

class Custom_Project (models.Model): 

_inherit = "project.task"

task_lines = fields.One2many('task.line','task_id',string="Lines")

 state = fields.Selection((('draft',_('Draft')),('open',_('In progress')),('done',_('Done'))), default = 'draft', string='Status', required="True")

当one2many树“task_lines”的所有行中的字段“progress”的值等于100时,我想要将工作流的状态更改为“done”。

所以在我的自定义模块(在.py文件中)我试过:

 @api.onchange( task_lines.progress)

 def progress_on_change(self):

  for record in self:

        all_done = True

        for line in record.task_lines:

               if line.progress != 100:

                   all_done = False

                   break

        if all_done == True:

               record.write({'state': 'done'})

但这并没有像我预期的那样改变状态。我该怎么做才能让它发挥作用?

谢谢,

0 个答案:

没有答案