- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Snaker 用户手册目录参与者使用组 9自定义访问策略 9获取待办任务 9执行任务 9委托代理 10增加委托代理表 10配置拦截器 10管理委托代理 1014、子流程 11二、应用整合 12API 方式整合 12配置snaker.xml 12编写帮助类 12调用流程引擎 14与Spring 整合 14SnakerEngine 配置 14DBAccess 配置 15事务配置 16三、流程设计器 18四、API 说明 24一、常用操作1、流程定义部署如何使用流程设计器定义流程请参考三、流程设计器。部署的相关方法包含:deploy、redeploy、undeploy,分别表示流程定义的部署、重新部署、卸载。部署时统一使用InputStream 输入流作为流程定义的数据。可借助org.snaker.engine.helper.StreamHelper帮助类完成。方法如下定义:InputStream的方法名称描述getStreamFromString根据字符串获取输入流getStreamFromFile根据文件对象获取输入流getStreamFromClasspath根据类路径下的资源文件名称获取输入流getStreamFromUrl根据Url 远程资源获取输入流?deploy cess().deploy(StreamHelper. getStreamFromClasspath(test/task/simple/process.snaker)); 部署相同的流程定义,会产生版本号依次加1的新的流程定义数据。但是不会对同名的流程实例产生影响。?redeploy cess().redeploy(processId, StreamHelper.getStreamFromClasspath(test/task/simple/process.snaker)); 重新部署流程会影响当前流程实例的执行?undeploy cess().undeploy(processId); 卸载流程只会更新状态state值,不会物理删除数据。2、启动流程实例可根据流程定义的id或者名称启动流程实例。如果相同的流程名称存在不同的版本,并使用名称启动实例时,会按照最新的版本来启动,其它低版本运行中的流程实例不会受到影响,这样就允许流程的多个版本同时运行。?根据id 启动实例engine.startInstanceById(processId); engine.startInstanceById(processId, admin);engine.startInstanceById(processId, admin, args); 由id启动实例的参数为:流程定义id、操作人operator、参数列表args?根据name 启动实例engine.startInstanceByName(simple); engine.startInstanceByName(simple, 0); engine.startInstanceByName(simple, 0, admin); engine.startInstanceByName(simple, 0, admin, args); 由name启动实例的参数为:流程定义name、版本号version、操作人operator、参数列表args 流程实例的启动会在以下的表中产生数据:wf_order、wf_hist_order 3、执行任务执行任务的处理逻辑包括两部分:?完成当前任务?按照流程定义产生新的任务执行任务的api 如下:engine.executeTask(taskId); engine.executeTask(taskId, admin);engine.executeTask(taskId, admin, args); 执行任务的参数为:任务号taskId、操作人operator、参数列表args 4、转派任务任务转派的业务逻辑是结束当前任务,并创建新的任务给转派人。其调用的api 为:engine.task().createNewTask(task.getId(), 0, test); engine.task().complete(task.getId()); createNewTask方法中的第二个参数“任务类型”表示创建主办、协办任务。5、撤回任务根据历史任务id,撤回由该历史任务派发的所有活动任务,如果无活动任务,则不允许撤回。抛出SnakerException异常engine.task().withdrawTask(taskId, admin); 6、提取任务任务提取一般发生在参与者为部门、角色等组的情况下,该组的某位成员提取任务后,其它成员无法处理任务。engine.tas
原创力文档


文档评论(0)