开源ccflow学习的一些心得
- 目录
- 概述
- 需求:
- 设计思路
- 实现思路分析
- 1.心得
- 参考资料和推荐阅读
Survive by day and develop by night.
talk for import biz , show your perfect code,full busy,skip hardness,make a better result,wait for change,challenge Survive.
happy for hardess to solve denpendies.
目录
概述
需求:
设计思路
实现思路分析
1.心得
在自己用户登录后台,登录成功后,把当前的用户信息,保存到ccflow中的 Emp em = new Emp();em.No = username;
具体代码的书写,还是以当前情况来写,总之保存当前用户信息到em中。(这里只是个人的解决方法)。
在开发时,有些业务流程数据可能会很复杂,有可能不想用ccflow提供的表单设计器进行表单设计。
具体代码的书写,还是以当前情况来写,总之保存当前用户信息到em中。
在开发时,有些业务流程数据可能会很复杂,有可能不想用ccflow提供的表单设计器进行表单设计。
在开发流程时,就可以使用sdk表单开发。在节点属性那里设置相对应的url,即自己系统中工程根目录开始,到当前节点的SDK表单路径,例如我的:
对表单操作时,一些流程推送的事件,在后台按照接口文档提供的方法,调用就行了。在这里,就我个人开发过程中,遇到的几个小点敲几个字。
1
流程图为什么出不来
因为SL里面,接受的webservice,URL不对应,所以产生了查看流程图失败的原因。
可以在CCFlowDesigner项目中修改Glo.cs文件中的var endPoint = new EndpointAddress(Glo.BPMHost + “/WF/Admin/XAP/WebService.asmx”);改为自己项目中的,生成成功后,把相关的CCFlowDesigner.xap覆盖掉自己系统中当前的对应文件。
当然,也可以在查看流程图,工作轨迹时,路径指向你部署到iis下ccflow相关的路径。绕过查看流程图失败这个文图(这是下策)。
2 在设计流程时,流程节点的分支问题
在做流程设计时,为了结合实际需求,需要做分支流程,在分支流程的条件判断上,我们需要做的是条件判断,通过流程当前的业务数据进行自动流转判断。
可以有表单,岗位,SQL的条件判断,相关的在说明书上都有。
写SQL条件判断时,我们想获取当前的WorkID在SQL语句中是以@OID来获取的。
3
在流程设计时,有分合流的流程设计
我们在流程节点属性设置时,需要注意运行模式为分流或合流,有分必有合。在使用分合流时,会产生子线程,同时会生成WorkID,如果想获取父流程ID,只能获取FID。在子线程中,节点表单类型应为异表单类型,否则会报错,启用了多个同表单
4
在开发过程中,对于WF文件夹下的一些文件,可能不兼容自己项目中的文件类型,需要自己重新构建,那么就需要会取舍,用到的文件代码,把它融合到自己的项目中去。
二, 流程运行时.
分合流流程注册表: WF_GenerFH
流程注册表: WF_GenerWorkFlow
工作人员表: WF_GenerWorkerlist
启动一个流程后,ccflow自动产生一个WorkID, 一个流程一个WorkID, 并且处开始节点表(ND101)中插入一条数据, WFState=0 流程状态=0 表示运行中.
启动一个流程后,就产生一条数据,放在WF_GenerWorkFlow ,
发送一个步骤后,就把接受的工作人员放入WF_GenerWorkerlist .
流程运行完成后,就把两个表中的这个 WorkID 的数据清除.
5, 在流程数据表里(ND1Rpt)中, 每个节点有新采集的数据就会copy到此表中.
所以结合流程数据表,与当前的这两个表,你可以查询出来想要的数据满足二次开发.
参考资料和推荐阅读
- https://blog.51cto.com/u_15343873/3686152
- 如有侵权,私信联系,删除之
- https://blog.csdn.net/weixin_55421197/article/details/115586715
欢迎阅读,各位老铁,如果对你有帮助,点个赞加个关注呗!~