随笔 - 71  文章 - 15  trackbacks - 0
<2024年11月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

因为口渴,上帝创造了水;
因为黑暗,上帝创造了火;
因为我需要朋友,所以上帝让你来到我身边
Click for Shaanxi xi'an, Shaanxi Forecast
╱◥█◣
  |田|田|
╬╬╬╬╬╬╬╬╬╬╬
If only I have such a house!
〖总在爬山 所以艰辛〗
Email:myesjoy@yahoo.com.cn
NickName:yesjoy
MSN:myesjoy@hotmail.com
QQ:150230516

〖总在寻梦 所以苦痛〗

常用链接

留言簿(3)

随笔分类

随笔档案

文章分类

文章档案

Hibernate在线

Java友情

Java认证

linux经典

OA系统

Spring在线

Structs在线

专家专栏

企业信息化

大型设备共享系统

工作流

工作流产品

网上购书

搜索

  •  

最新评论

阅读排行榜

评论排行榜

阅读本文,你必须已经使用过工作流引擎作过纯流程的例子,并且拥有java,jsp,html的基础,而且知道如何阅读相关javadoc/chm查阅编程所需的api

我们以一个简单的请假流程来介绍如何实现一个工作流项目:

流程很简单,程序员向部门经理提交一张请假单,部门经理收到后,根据主观意识决定是否批准(黑暗吧,哈哈…)

既然要填写一张请假单,因此我们必须知道请假申请活动对应的请假单的路径,在b/s程序中,就是请假单的超链接,因此我们要给请假申请活动添加一个扩展属性来记录超链接,如下:

同样,经理审批活动也要一个,后两个活动不重要,略了。

因为需要在审批的时候看到申请单的信息,所以需要知道是哪一条申请记录,最直接的方法,就是储存申请单的主键值在流程中,本例假设该表是单主键,所以我们在流程定义中添加一个工作流相关数据集id

而审批需要根据审批结果是通过/失败决定流程的走向,因此我们还需要一个工作流数据集auditResult(Boolean)

 

 

 

然后要设定表达式,这样才能决定走向

另一条路径就不设了,引擎会自动判断。

下面是各步骤程序功能的说明:

接下来出场的是实现代码

你想的美咧,自己整去~~

后记:

本文写得挺郁闷的,因为开始时不想画流程,后来发现不画流程不好解释引擎和业务系统间的关系。


接着又发现不容易描述在流程进行时每一步程序该做些什么,于是又画了张描述图,但是这图不知道属于哪种图,而且也不知道别人看不看得懂。流程活动步骤程序伪码图?--这么长的名字有够拉风的。

就这样吧。工作流的初学者可以看看这篇文章。

将工作流引擎与业务系统结合使用,就是在其中一处储存另外一处的一些信息,我上面使用的是在引擎中储存业务信息的方法,当然也可以反过来,在业务表存流程序号和活动序号。

目前任一个开源工作流引擎,都是可以应用到项目的。关键是看自身的技术路线合适哪个引擎,市场考量等等。

但是一般一开始使用某个引擎,以后就很难换掉,因为在不断的扩展引擎的功能,而且要保证历史项目的兼容性,再转移这些代码到另一个引擎就是浩大的工程。

本人原创文档版权归本人所有,如欲转载,请注明作者及出处。



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=549408

posted on 2006-01-05 14:46 ★yesjoy★ 阅读(175) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: