web工作流管理系统开发26-30

web工作流管理系统开发26-30

ID:13234956

大小:1.11 MB

页数:29页

时间:2018-07-21

web工作流管理系统开发26-30_第1页
web工作流管理系统开发26-30_第2页
web工作流管理系统开发26-30_第3页
web工作流管理系统开发26-30_第4页
web工作流管理系统开发26-30_第5页
资源描述:

《web工作流管理系统开发26-30》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、二十六.net工作流系统之扩展性.net工作流系统之扩展性最近为用户做工作流实施时,都无一例外的提出工作流系统的扩展性问题。事件一:eworkflow工作流系统预置了一些系统的条件,前置后置函数等。如果这些不能满足业务需要,用户需要定制自己的业务规则,业务过程,该如何做?解决方案:eworkflow系统预置了很多系统的条件类,前置后置函数类。简单一些的业务规则,可以直接用自定义脚本,写个表达式的方式来实现。 如条件类的:判断用户是否有某个角色 cn.com.fcsoft.workflow.util.UserHasRoleCondition             判断是否是竞争

2、型任务的签收人cn.com.fcsoft.workflow.util.CompetitionTaskCondition            ....               事件类:将指定步骤的执行人保存到mostRecentCaller变量中cn.com.fcsoft.workflow.util.MostRecentCaller       ...        打开我们的任意一个条件类,可以看到,条件类必须实现Condition接口,实现passesCondition()方法   ///

判断调用者caller是否属于role参数所指的角色 ///ca

3、ller:userid role:roleid ///

 publicclassUserHasRoleCondition:Condition {  //~Methods////////////////////////////////////////////////////////////////    publicvirtualboolpassesCondition(System.Collections.IDictionarytransientVars,System.Collections.IDictionaryargs,PropertySetps) ....

4、  流程的上下文、相关的业务参数、数据库连接、当前操作员id等,均可以在passesCondition的三个参数中获得。  因此在需要扩展业务规则的时候,可以扩展这种条件类,只需要在用户的应用系统中引用eworkflow.dll(java版的就是引入eworkflow.jar),新建业务规则类,实现Condition接口,在passesCondition方法中写业务规则就可以了,所有和流程相关的信息,节点定义的属性,业务参数,均可以从passesCondition方法的三个参数中获得。  将写好的条件类注册到WF_DSN_CLASS表中,在流程定义的时候,从节点的属性页中选择出

5、这些扩展的业务规则,挂接到流程的节点上。在流程实例运行到此节点的时候,就会执行这些节点上定义的业务规则类,作出规则判断。   下面是一个判断当前操作员用户,是否属于某个区域的业务规则的判断          -----------------------------------------条件和事件的分隔线----------------------------------------------- 打开任意一个事件函数类,可以看到,事件函数类的,必须实现FunctionProvider接口,实现execute()方法  publicclassMostRecentCaller:

6、FunctionProvider {  //~Methods////////////////////////////////////////////////////////////////    publicvirtualvoid execute(System.Collections.IDictionarytransientVars,System.Collections.IDictionaryargs,PropertySetps)    和条件类的接口一样,流程的上下文、相关的业务参数、数据库连接、当前操作员id等,均可以在execute的三个参数中获得。集成开发文档中会有这三

7、个参数的详细描述。    在需要扩展业务事件,业务过程的时候,只需要在用户的应用系统中引用eworkflow项目或者eworkflow.dll((java版的就是引入eworkflow.jar),新建这种事件类,实现FunctionProvider接口,在execute()方法中写业务实现,所有和流程相关的信息,节点定义的属性,业务参数,均可以从execute方法的三个参数中获得。  将写好的类注册到WF_DSN_CLASS表中,在流程定义的时候,从节点的属性页中选择出这些扩展的业务事件类,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。