最近做workflow的开发,由于在测试过程中,可能要经常改客制化的工作流后台包,而在编译过程中,如果有未完成的工作流仍在pending中的话,会导致编译后的包与工作流缓存的包的版本不一致,导致后面新提交的工作流失败。因此要么把所有pending的结束了再编,要么重启应用解决不一致....
如果要结束pending的工作流,如果量多的话,在页面上去结束显然有点累,所以可以通过代码完成,大致如下:
BEGIN
FOR i IN (SELECT DISTINCT item_key
FROM wf_item_activities_history_v
WHERE item_type = 'FUNRMAIN'
AND activity_status <> 'COMPLETE')
LOOP
wf_engine.abortprocess(itemtype => 'FUNRMAIN', itemkey => i.item_key);
END LOOP;
END;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10359218/viewspace-753531/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10359218/viewspace-753531/