首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

jbpm4.4在线设计旁支跳转

2012-09-11 
jbpm4.4在线设计分支跳转??我们知道jbpm4.4提供了三种比较方便的分支跳转方式,如下所示:1.通过expression?

jbpm4.4在线设计分支跳转

?

?我们知道jbpm4.4提供了三种比较方便的分支跳转方式,如下所示:

1.通过expression

?

?

2.通过handler

?

3.通过condition

?

我们发现这种方式,若一旦我们的流程定义完成后,再想在运行中动态改变这种分支条件的设计就很难了,但是我们知道可以在流程定义发布到后台后,我们可以提供动态修改xml的方式,用handler的方式加上我们的分支决定的decision(需要实现jpbm的decision接口即可),通过handler来实现分支有一个比较大的优点就是我们可以在handler动态去执行我们需要工作流额外执行的代码,并且可以通过这个判断来决定其跳转的路径。

?

但我们不可能为所有的有分支决定的流程都加一个decision handler,并且在里面进行动态的分支判断。那样的工作很大,并且不灵活。

?

我们看一下第二种handler的接口:

?

发布后,设计其分支条件,如下所示:

jbpm4.4在线设计旁支跳转

?

我们在条件那里加入流程干预:

?

其对应的字段映射为:

jbpm4.4在线设计旁支跳转

在后台绑定该表单:

jbpm4.4在线设计旁支跳转

启动流程:

jbpm4.4在线设计旁支跳转

执行后,可以看到流程自动判断跳转:

jbpm4.4在线设计旁支跳转

?

我们看一下本身我们的handler如何写:

?

?

?

里面其实比较简单,就是通过动态执行那个给用户开放的代码片段,并且根据其tranTo变量的值来决定其如何跳转,在上面的例子就是流程表单中的金额是否大于2000元来跳转。

?

同样,我们知道jbpm4_lob中存着jbpm4的流程定义的xml文件,只要把动态修改jbpm4的流程定义,可以为我们的作何节点加上我们需要流程动态执行的事件及代码。请关注后续的文章,有介绍如何扩展jbpm4的流程事件。

?

?

在线看预览情况:

?

http://bbs.jee-soft.cn/swf/design_decision.html

?

http://bbs.jee-soft.cn/posts/list/285.page#384

在线测试地址:

网通:

http://oa.jee-soft.cn:8080/index.jsp

电信:

http://office.jee-soft.cn:8080/index.jsp

?

用户:admin,密码:1

热点排行