• 驰骋工作流程引擎ccbpm,ccflow,jflow关于组织结构集成的重新解释.


    1.1: 组织结构集成

    组织机构的模式:

    根据不同的情况我们把组织结构分为一人一部门多岗位的模式,我们称呼为OneOne模式,我们把一人多部门多岗位的模式成为OneMore模式。对于这两种模式在全局配置文件里OSMode 属性里。

    JFlow中的配置,文件路径:D:JFlow runkjflow-websrcmain esourcesconfweb.properties
    image

    CCFlow中配置, 文件路径:D:ccflow runkCCFlowweb.config
    image

    关于两种模式下所需要的表:

    OneOne模式的组织结构表(一人一部门多岗位)

    表中文名

    表名

    字段(都是varchar类型)

    操作员表

    Port_Emp

    No,人员编号;Name,人员名称; Pass,密码; FK_Dept,所在部门; SID,安全校验码;

    部门表

    Port_Dept

    No,部门编号;Name部门名称;ParentNo父级编号;

    岗位表

    Port_Station

    No,岗位编号;Name岗位名称;FK_StationType岗位类型.

    岗位类型表

    Port_StationType

    No,编号;Name,名称;

    人员岗位

    Port_EmpStation

    FK_Emp,人员编号;FK_Station,岗位编号;

    您可以通过如下SQL来查询出来:

    SELECT No,Name,Pass,FK_Dept,SID FROM PORT_EMP

    SELECT No,Name,ParentNo FROM PORT_Dept

    SELECT No,Name,FK_StationType FROM PORT_Station

    SELECT No,Name FROM PORT_StationType

    SELECT FK_Emp,FK_Station FROM PORT_EmpStation

    OneMore模式的组织结构表(一人多部门多岗位)

    表中文名

    表名

    字段(都是varchar类型)

    操作员表

    Port_Emp

    No,人员编号;Name,人员名称; Pass,密码; FK_Dept,所在部门; SID,安全校验码;

    部门表

    Port_Dept

    No,部门编号;Name部门名称;ParentNo父级编号;

    岗位表

    Port_Station

    No,岗位编号;Name岗位名称;FK_StationType岗位类型.

    岗位类型表

    Port_StationType

    No,编号;Name,名称;

    人员部门

    Port_DeptEmp

    MyPK,组合主键;FK_Dept,部门编号;FK_Emp,人员编号;

    注:MyPK 是FK_Dept+”_”+FK_Emp 的组合.

    人员部门岗位

    Port_DeptEmpStation

    FK_Dept,部门编号;FK_Emp,人员编号;FK_Station,岗位编号;

    您可以通过如下SQL来查询出来:

    SELECT No,Name,Pass,FK_Dept,SID FROM PORT_EMP

    SELECT No,Name,ParentNo FROM PORT_Dept

    SELECT No,Name,FK_StationType FROM PORT_Station

    SELECT No,Name FROM PORT_StationType

    SELECT MyPK,FK_Emp,FK_Dept FROM PORT_DeptEmp

    SELECT MyPK,FK_Emp,FK_Dept,FK_Station FROM PORT_DeptEmpStation

           

    组织结构表的概念:

    用于控制用户的权限的表都称为组织结构表,比如:操作员、部门、岗位。与ccbpm的集成也就是组织结构表的集成,以上表格里的表都是组织结构表。

    组织结构的数据来源:

    根据用户的不同运行环境,我们把组织机构数据来源分为0=通过数据库映射,2通过webservices获得数据。3通过AD,获得组织结构数据,请参考上图的OSDBSrc设置,目前对于非vip用户,请使用0模式。

    组织结构集成的核心思想:

    把ccbpm集成到您的应用系统里,首先要解决的组织结构的集成,然后根据自己的项目确定集成模式。不管什么方式的集成,首先要把组织结构集成在一起。

    把ccbpm中的组织表删除了,换成数据结构一样的视图,数据是从被集成的系统数据库映射回来的。这样ccbpm在工作时,仍然不会影响。以一个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

    对于OneMore处理模式ccbpm如何识别当前登录部门属于那个部门?

    我们知道一人多部门的信息存储到Port_DeptEmp表里,这里描述了一个人对应多个部门,但是用户进入系统后如何知道他是以那个人员的身份登录的?ccbpm读取的是Port_Emp表的FK_Dept字段作为当前部门。如果用户要切换登录部门的时候,就要先修改这个字段值作为当前登录部门。

    对于历史版本的支持:

    CCFlow系统会自动升级,升级代码请参考BP.WF.Glo.UpdateVer()方法。

    JFlow 请手动按照上述方式修改与配置。

    重要的事情说三遍:

    Ccbpm的组织机构集成,就是删除ccbpm的组织机构表,建立同数据结构一样的视图!!!

    Ccbpm的组织机构集成,就是删除ccbpm的组织机构表,建立同数据结构一样的视图!!!

    Ccbpm的组织机构集成,就是删除ccbpm的组织机构表,建立同数据结构一样的视图!!!

  • 相关阅读:
    前端必备工具-IETest
    mysql_fetch_assoc 跟mysql_fetch_array 有什么区别?
    如何将Emmet安装到到 Sublime text 3?
    如何将Emmet(ZenCoding)安装到到Dreamweaver8?
    前端必备工具-Emmet (Zen Coding)
    前端必备工具-Sublime Text 2
    开店资源分享
    开店充值其实可以很便宜
    简单Gif制作
    项目笔记:导入功能
  • 原文地址:https://www.cnblogs.com/ccflow/p/5320331.html
Copyright © 2020-2023  润新知