请问谁能把做OA 时,自定义的工作流部分的设计思路详细说一下!
请问谁能把做OA 时,自定义的工作流部分的设计思路详细说一下! 我现在需要这个,但是有些想不清楚该如何设计!做到流程和业务分离,方便日后扩展,维护。但是,流程定义部分和业务部门怎么相连呢? 请大侠说说思路!不胜感激!!目前俺没分,不好意思 --------------------编程问答-------------------- 学习下workflow,就知道该怎么做了! --------------------编程问答-------------------- 一般来说工作流分为三大部分
1.应用库(流程实际流转的实例部分)
2.流程定义
3.组织架构
一般自定义流程信息可以拆分为
1.流程信息(流程名、版本、起始节点等,看实际需要)
2.节点信息(节点名,ID,对应的流程ID,节点的参与者列表,表单名,其它标志位)
3.路由表(对应的节点ID,路由条件,目标节点)
流程流转时,就是把该流程实例对应的节点信息实例化到该流程的文档中,用户在提交的时候,根据当前节点的路由列表,判断条件,符合的就将文档路由到指定的目标节点,重新按目标节点的信息实例化。
×其实实例化最简单的就是把流程与节点信息写入到文档中去。
组织架构就是重点考虑节点的参与者问题,这一块可以与流程定义拆分开考虑,并不需要与流程引擎完全挂钩
因为Domino在代理中可以使用公式,这样对于节点信息与路由信息的定义会带来很大的方便性。可以将所有定义内容都用公式来处理。
以上是最简单的功能点
流程引擎的必备功能包括条件路由,并行拆分,自定义合并等功能
其它如定时催办,Web与Client同时流转 等可以在上面进行扩展。
另外,一个好的流程引擎一定要考虑到二次开发的要求。在代码上要将前端代码与后端代码进行分离,即最核心的功能都通过接口的方式开放出来,并可以提供各种事件给流程开发人员调用
推荐可以学习一下Lotus Workflow
有问题欢迎进行交流MSN:lilo9412@hotmail.com
--------------------编程问答-------------------- 呵呵,你也来拉?
补充:企业软件 , Lotus