爬虫组件分析
- 目录
- 概述
- 需求:
- 设计思路
- 实现思路分析
- 1.表单引擎
- 模版表
- 系统框架
- Jflow 对使用者的要求
- 参考资料和推荐阅读
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.表单引擎
表单设计器:
开发者表单设计器
设计器
傻瓜表单设计器
工具栏
模版表
表单模版
SELECT * FROM Sys_MapData WHERE No=‘ND1001’; --模版注册表.
SELECT * FROM Sys_MapAttr WHERE FK_MapData=‘ND1001’; – 字段表.
SELECT * FROM Sys_MapDtl WHERE FK_MapData=‘ND1001’; --从(子)表
SELECT * FROM Sys_MapAttr WHERE FK_MapData =‘ND1001Dtl1’ – 从(子)表的字段.
SELECT * FROM Sys_GroupField WHERE FrmID=‘ND1001’; --分组列表.
SELECT * FROM Sys_MapExt WHERE FK_MapData=‘ND1001’; --业务逻辑
高级开发:
向工作处理器传值的方法大全
说明,在启动开始节点时,通常会向其发起点(流程的第一个点)传输一系列值,来减少用户的输入,或者处理特定业务,或者执行特定的功能,下面把这些特定的方法总结汇总如下。
利用url传输数据给表单:
事例:MyFlow.htm?FK_Flow=001&FK_Node=101&PrjNo=GB1002&PrjName=项目名称.
解释:利用Url的方式传递值,Key就是表单的字段名,如果一致ccform 就是自动获取它们把值放入表单控件里,这种方式适用于数据量比较少,没有从表的情况下。
把指定物理表的一列值传递给表单:
事例:
MyFlow.htm?FK_Flow=001&FK_Node=101&FromTableName=Prj_Main&FromTablePK=No&FromTablePKVal=GB1001
解释:利用特定的标记传递table名称,这个table的主键列名称,指定的行数据。系统就会自动的生成一个sql 查询到这个行数据。
Select * from FromTableName whereFromTablePK =’FromTablePKVal’.
如果查询不到数据,就会抛异常。
查询到数据就会把这一行的数据根据列名与表单属性名称相对应的copy上去。
这种方式适用于数据量比较大数据传递。
其它流程节点通过url转向,转向到开始节点:
应用背景:一个流程A结束后,根据条件它要启动另外一个流程B,对于A流程结束点的数据(主表数据,从表数据,附件数据)都要传递到B流程的第一个节点上去,类于ccflow节点之间数据传递。
事例:
在A流程节点属性中->配置 ->成功发送后转向方式:转向指定的url 转向处理内容:MyFlow.htm?FK_Flow=001&FK_Node=101这种方式系统就会直接把A流程结束节点的数据复制到B流程的开始节点上去。这些数据包括: 主表、多个从表、附件数据。Ccflow采用静默的默认的传递。实现这些方法请参考BP.WF 中的Flow.cs 类中的NewWork() 方法。
删除草稿:
ccflow草稿的概念: 当启动一个流程时,ccflow就会为当前操作人员第一个节点表单插入一条数据,用户点保存时,就会更新这条数据,这个WFState=0,做为空白,如果发送出去了,WFState=1,就变成了节点表单的历史数据了。
如果有了草稿ccflow就会把这个草稿调出来显示给用户。也就是说当前打开当前点时草稿就产生了。
草稿的产生是因为用户在开始节点时,保存了数据但是没有发送
如何删除草稿:
事例:MyFlow.htm?FK_Flow=001&FK_Node=101& IsDeleteDraft=1
说明:删除主表草稿数据,从表草稿数据,附件数据。
设计-概念-名次
组织模式
我们把组织模式分为:单组织版, 集团版, SAAS版三种形式。
单组织版:没有组织编号的概念,一套组织结构,一套岗责体系.
集团版: 一个集团里有多个分公司,每个分公司都可以独立的管理内部的人员岗位部门。都可以设计自己的流程与表单.
SAAS模式:
系统框架
驰骋BPM采用的BP开发框架,该框架是基于ORM模式工作的框架,简单,高效
该框架有成熟稳定的组件,比如:查询、卡片、批处理、树结构等,用于实体类的增删改查.
该框架支持国内外10多种数据库,扩展性好.
流程引擎与表单引擎的关系.
流程与表单就是汽车的控制系统与车厢之间的关系.
控制系统是处理流程的前进、后退、转弯、鸣笛等操作。
表单就是车厢是处理装载货物, 货物就是数据。
我们研究流程引擎不能把两者孤立的看待, 我们在工作流引擎控制系统里可以操纵数据的分合,实现不同的业务场景,来减少程序员的代码开发。
前端组成.
前端是操作员,常用的功能是,发起、待办、在途、抄送、查询, 5 大菜单功能。
有 3 个重要的页面,分别是:工作处理器、工作查看器、操作处理器。
发起与待办连接到工作处理器上, 在途与查询连接到工作查看器上,抄送连接到抄送处理器上。
Jflow 对使用者的要求
JFlow把使用者分为三种类型,流程基础设计人员
流程高级设计人员
流程二次开发人员,下面把不同层次的人员的知识要求与问题解决能力介绍如下。
流程基础设计人员:
知识要求:懂流程管理,流程业务知识,对信息化系统有一定的了解与掌握,能够做一些基础的维护。
流程处理能力:能够为单位建立基础的办公流程、业务流程。
说明:ccflow基本都是web界面化的操作,不需要编译、设计所见既所得。
流程高级设计人员:
知识要求:满足[流程技术设计人员]条件,会基础的SQL语法,能够编写函数,存储过程。公司、单位系统管理员一般都具备这个水平。
流程处理能力:能够把ccflow与其它系统集成起来工作,能够处理复杂的业务逻辑开发,能够有效的把ccflow与其它的业务系统集成在一起。
流程二次开发人员:
知识要求:会写Javascript 脚本验证,具有一定的编程知识与能力,有1-2年的业务系统开发经验。
流程处理能力:能够利用API可以与其它系统集成起来工作,能够处理复杂的业务逻辑开发,能够有效的把ccflow与其它的业务系统集成在一起。
参考资料和推荐阅读
- https://gitee.com/opencc/JFlow/wikis/%E6%B5%81%E7%A8%8B%E8%AE%B2%E4%B9%89/JFlow%E5%AF%B9%E4%BD%BF%E7%94%A8%E8%80%85%E8%A6%81%E6%B1%82
欢迎阅读,各位老铁,如果对你有帮助,点个赞加个关注呗!~