• 工作流系统之四十三 集成应用系统


    工作流软件系统做为一个开发组件,只实现了工作流引擎,工作流的建模,流程实例的创建,流转等等。不包含整体的业务系统,当集成到用户的应用系统时候,需要作为组件的方式集成。

    集成的方式有多种,一般来说,用户系统是首先要集成的,应用系统的一般都会有自己的用户系统,包含,用户,角色,权限等。这些不包含在工作流软件系统中,但是在工作流软件系统中又一定会用到,流程节点的执行权限等,都离开用户角色权限等的设置。因此用户系统的集成是必须要做的。

    1.用户系统的集成
     采用映射表的方式,在 工作流系统之三十四 集成用户系统  http://www.cnblogs.com/webreport/archive/2011/02/14/1954084.html有详解
     
    2.工作流软件系统功能的集成

    工作流软件系统的可视化可操作的功能模块一般都会包含:
    业务流程设计器,业务流程建模管理,业务流程版本管理,业务表单(电子表单)管理,业务流程实例的发起,跟踪,监控..... 

    任务管理,我的待办任务,我的已办任务,我的抄送任务,我的流程实例......

     

     

    这些都会提供可视化的可操作的功能,和用户的应用系统集成,可以将这些可视化的功能模块直接集成。

    可视化的功能模块,直接将url挂接到应用系统中。例如,业务流程设计器,将打开业务流程设计器的url作为菜单,定义到应用系统中,在应用系统中就可以直接使用。(当然流程设计器的前后台代码类等都需要集成到应用系统中)


     
    3.调用工作流引擎的接口api方式的集成

    利用流程引擎对外提供的接口api函数来驱动流程。例如,启动指定的流程实例,执行指定的动作,获取当前用户的待办任务列表等等。

    工作流引擎内部实现抽象的业务流程建模,以及抽象的业务流程节点的流转,对外以接口api函数等的方式提供调用。流程管理中心的可视化模块也是利用这些接口函数来实现的。
    当流程管理中心提供的可视化操作模块,不能完全满足用户的需要时,可以通过调用流程引擎的api的方式,定制适合自己的业务模块。


    例如启动一个业务流程实例就有两种方式:
    1.先启动流程实例,得到流程实例id,再进入流程的第一个节点,运行第一个节点关联的表单。当表单提交时,将wf_id一起写入业务表。
    2.先打开流程第一个节点的业务表单,当表单提交时,再启动流程实例,获得流程实例id,和业务表单数据一起提交。然后再运行完流程的第一个节点,使得流转到第二个节点。

    这两种方式的启动,在流程管理中心都会有直接的模块对应。但是当这两种方式还是不能满足具体的需要时,可以结合自己的实际+调用流程引擎api的方式,定制实现。



     

    我的待办任务,已办任务,任务管理等信息,等等可视化的模块,列表项,更多的是反应流程管理,业务数据项很少,在集成的时候,用户也是经常需要列出更多的业务数据。这个也可以通过调用流程api的方式来达到。

    业务表单的提交+流程的动作执行:当工作流软件系统集成定制业务表单的时候,需要将表单业务数据的提交和流程的流转放在同一个事务中。

  • 相关阅读:
    Linux连接字符串
    【aws】
    运行mlflow命令报错 The 'nose' distribution was not found and is required by nose-exclude
    【apt install】Unable to locate package python3-pip
    python package打包发布,安装
    【mlflow】mlflow打包、启动、换用mysql backend、mysql配置
    【mlflow】打包:npm run build + python setup.py sdist
    【css flex】将多个<div>放在同一行
    【react 条件渲染】在render的html中使用 三元运算符 进行条件渲染
    由于无法验证发布者 所以windows阻止此软件
  • 原文地址:https://www.cnblogs.com/webreport/p/2051867.html
Copyright © 2020-2023  润新知