把ccflow集成到您的应用系统里,首先要解决的组织结构的集成,然后根据自己的项目确定集成模式。
##3.1:组织结构集成
组织结构表的概念:
用于控制用户的权限的表都称为组织结构表,比如:操作员、部门、岗位。与ccflow的耦合也就是组织结构表的耦合。
耦合的核心思想:
把CCFlow中的组织表删除了,换成5个数据列结构一样的视图,数据是从被耦合的系统数据库映射回来的。
这样CCFlow在工作时,仍然不会影响。
以一个sql来说明问题。
DROP TABLE Port_Emp /* 删除本机的人员表 */
GO
CREATE VIEW Port_Emp /* 创建人员视图表 */
AS
SELECT BH AS No, MC as Name, bumenbianhao as FK_Dept, Password as Pass FROM ERP.dbo.Yonghu
GO
3.1.1:耦合说明
在应用过程中,您的应用系统与ccflow数据库是分开的,应用示意图如下。
在ccflow系统中有如下5个组织结构表。
表英文名称
中文名称
字段说明
Port_Station
岗位
岗位编号No, 名称Name.岗位级别: int枚举类型 0,高层岗1,中层岗,2执行岗,如果要修改他们请打开. Select * from sys_enum where enumKey=’StaGrade’
Port_Dept
部门
No 部门编号, Name 部门名称
Port_Emp
人员
No 编号 ,Name 名称 ,Pass 密码
FK_Dept
所在部门编号
SID,登陆安全ID
Port_EmpStation
人员岗位表
FK_Emp 人员编号, FK_Station 岗位编号
Port_EmpDept
人员部门表
FK_Emp 人员编号, FK_Dept 部门编号
与驰骋工作流耦合,主要是用户表,部门表,岗位表,用户与部门对应表,用于与岗位对应表。对应的表结构。
耦合的过程就是不使用工作流引擎中的表,而使用视图数据。
耦合期间一定注意数据类型,比如:操作员编号一定是varchar类型,如果设计成其它的类型就会出错,您转化一下就可以。
3.1.2:部门 Port_Dept
在ccflow4.5一下的版本中,是按照部门的行政编码规则来确定部门之间的隶属关系。比如:37山东,
3701山东济南,
370108山东济南高新区.
在ccflow5版本中,编码以树形结构。
Port_Dept 字段为: No, 编号 Name, 名称 ParentNo 父节点编号. 顶级部门为 0
3.1.3:岗位表Port_Station
岗位表 Port_Station 编号的长度需要是2的倍数。
中文名称
英文名称
描述
编号
No
名称
Name
岗位类型
StaGrade
此列没有计算意义,只是对岗位进行分组,它是一个枚举类型请打开:select * from Sys_Enum where enumKey=’StaGrade’ 根据自己的业务配置它。
说明:岗位表也可以成为角色表、用户组,岗位人编号规则概念部门的编号规则长度相同。
3.1.4:部门表Port_Dept
中文名称
英文名称
描述
编号
No
名称
Name
父节点编号
ParentNo
根目录必须为0
3.1.5:人员表Port_Emp
中文名称
英文名称
描述
编号
No
名称
Name
密码
Pass
部门
FK_Dept与Port_Dept 对应
验证码
SID
登陆时间的随机号
3.1.6:人员部门对应表Port_EmpDept
中文名称
英文名称
描述
人员
FK_Emp
对应Port_Emp.No
部门
FK_Dept
对应Port_Dept.No
3.1.7:人员岗位对应表Port_EmpStation
中文名称
英文名称
描述
人员
FK_Emp
对应Port_Emp.No
部门
FK_Station
对应Port_Station.No
3.2:BS模式代码集成
####第1步:ccflow的四大项目引入到您的解决方案里
类库
说明
D:\ccflow\trunk\Components\BP.En30
BP框架的底层类库
D:\ccflow\trunk\Components\BP.Web.Controls30
BP框架的底层类库
D:\ccflow\CCPortal\CCGPM\Components\BP.OS
BP框架的组织结构
如果是免费用户 D:\ccflow\trunk\Components\BP.WF,如果是vip用户 D:\ccflow\value-added\Components\BP.WF
流程引擎层
注意不建议引用dll,如果ccflow有更新,ccflow不会发布最新的dll而是发布最新的源代码,所以如果涉及到更新,首先更新带有源代码的类库。
####第2步:开始执行编译,如果编译不通过,ccflow还会依赖其他的第三方开放的类库,他们都位于。D:\ccflow\trunk\DLL
####第3步:把ccflow的必须的前台代码copy到您的前台解决方案里。
目录名称
说明
D:\ccflow\trunk\CCFlow\ClientBin
Ccflow的流程设计器,表单设计器,与其他的sl 程序。
D:\ccflow\trunk\CCFlow\DataUser
Ccflow的目录文件
D:\ccflow\trunk\CCFlow\WF
前台流程应用文件
D:\ccflow\trunk\CCFlow\Web.config
应用配置文件,如果您的应用程序也把一些配置放入了appSetting 节点里,请把他们整合在一起.
####第4步:设置数据库连接,并执行ccflow的安装。
打开web.config 配置文件,修改AppCenterDSN数据库连接,最好的方案是把您的应用程序数据库与ccflow的数据库放在一个数据库里。
执行ccflow的数据库的安装,直接运行:http://yourServerIP/WF/Admin/DBInstall.aspx。
按照提示步骤执行安装,如果您是正式的运行环境,就不要安装ccflow提供的demo了。
##3.3:CS模式代码集成
###3.3.1:代码级集成
暂无
###3.3.2:调用Webservices模式集成
第1步:下载ccflow到d:\ccflow下面后就不要变动代码。
第2步:建立网站应用程序主目录设置为 D:\ccflow\trunk\CCFlow。
第3步: