如何重启已终止的工作流程?

Dan*_*eis 3 workflow openerp

在具有工作流的模型中,当您创建新记录时,它会启动一个新记录workflow instance.然后它将在"活动"之间转换,直到达到flow stop一个cancel或多个done状态.

我在OpenERP 6.1中遇到的是,一旦workflow instance到达它flow stop,它已经死了,你不能在它上面执行更多的转换.

但我想Reset to draft在表单上有一个按钮,允许重新启动已终止的工作流.有没有办法实现这一点,比如说,通过Python调用Openerp工作流服务的方法?

Oma*_*maL 6

您可以在帐户付款模块中找到示例.

def set_to_draft(self, cr, uid, ids, *args):
    self.write(cr, uid, ids, {'state': 'draft'})
    wf_service = netsvc.LocalService("workflow")
    for id in ids:
        wf_service.trg_create(uid, 'your.model.name', id, cr)
    return True
Run Code Online (Sandbox Code Playgroud)