zoukankan      html  css  js  c++  java
  • 流程数据和业务数据的交互

    首先,业务表要和流程关联起来,必需在业务主表中增加wf_id字段,存流程实例id.
    例如,请假流程,请假单就是业务主表。报销流程,报销单主表,就是业务主表,报销明细子表,只要和报销单主表关联。

    其次,在给业务流程建模的时候,需要知道此业务流程操作的主业务表,业务表的id主键。
    流程实例启动的时候,将此信息生成到流程实例表中。

    这样在业务表中,有流程实例id;在流程实例表中,有业务主表和主表的id字段。

    当从业务表记录列表中,需要执行流程的时候,就可以通过 业务表的wf_id字段,来获取到流程的相关信息,执行流程引擎的api函数,达到流程的递进。
    当从流程实例列表中,需要执行业务操作时,就可以通过,流程实例表中的业务主表和主表id字段,获取到业务表的记录,达到办理业务的过程。

    这是最基本的流程数据与业务数据的交互。

    有了这层的交互,往往是不够的。

    当流程建模的时候,通常需要获取到业务关键字段的值,做一些相关的判断或者显示使用。例如报销金额,经理审核的结果等等。
    这些就需要将表单中的业务数据做为变量传递到流程上下文中。

    当流程建模的时候,通常还有一些系统的环境变量等需要获取到,例如,当前执行人id,当前执行人名称,历史步骤的执行人。甚至指定步骤执行人的上级等。

    表单挂接到流程中,需要和流程交互,也需要获得流程的相关信息。
    在表单中需要获得,流程实例id,当前步骤id,当前可执行动作id,当前步骤的轨迹id,动态分支实例id 等等。通过这些信息达到和流程的交互。


    总结一下,流程数据和业务数据的交互,
    表字段的建立:业务表中加流程实例id,轨迹id(可选),分支实例id(可选)
                  流程实例表中加业务主表的表名和主键字段
                 
    变量的关联:表单中的业务数据作为变量传递到流程中
                系统运行的一些环境变量送到流程中使用
                表单中也需要获得一些流程的相关变量
                变量又分持久化变量和临时变量
               
    如下面这个请假流程

    审核拒绝时,需要返回重新修改请假单
    经理做的审核拒绝,就作为变量,传递到流程中,作为条件判断依据。

    返回的时候,谁填写的就返回给谁继续修改,用了临时变量mostRecentCaller,获取到填写步骤的填写人,存到mostRecentCaller变量。

    审核表单中,审核子表增加了trace_id字段,存入流程的轨迹id
    当查看历史步骤的时候,打开关联的表单,可以将审核的结果关联出来,作为显示查看用。

    如上面在查看流程关联的表单时,可根据轨迹id关联出当时的审批记录。

  • 相关阅读:
    算法实现:在10个数中选6个数,显示所有组合
    转载:PostgreSQL和MySQL协议简介
    转载:国内外高精地图厂商一览
    使用带key访问iPortalREST服务
    cass启动提示Frame主框架程序没有加载
    设置Gridview单元格内容不换行
    Sql自定义编号唯一性问题
    关于EXCEL数据导入到SQLServer中字段存在NULL的问题
    Gridview显示网格线
    ComboBox自动匹配查找
  • 原文地址:https://www.cnblogs.com/webreport/p/2184111.html
Copyright © 2011-2022 走看看