2021-05-21 camunda基础操作及数据对应

1.操作一:流程部署

流程部署有两种方式,第一种是项目启动直接找resouces目录下的bmpn文件,另一种方式是外部部署,通过api直接部署到项目中。

1.1 如果是项目启动

资源文件下所有的bpmn和png文件

(其中“南方尽调流程V3.bpmn”是没有部署过的新的流程文件)

关联表:

  • act_ge_bytearray [流程引擎二进制数据表]

    流程引擎二进制数据表

    只要发现有新的流程文件,所有的resouces下的bmpn和png文件都会重新写入此表。

  • act_re_deployment [流程部署表]

    流程部署表

    注意此表的name_和souce_字段,如果是工程启动部署,name_是工程的名称,source_是“process application”

  • act_re_procdef [流程定义表]

    流程定义表

  • act_ru_meterlog [流程日志表]

    image.png

    每隔15分钟执行一次

1.2 如果是远程部署

image.png

关联表:

  • act_ge_bytearray [流程引擎二进制数据表]

    image.png

  • act_re_deployment [流程部署表]

    image.png

    注意此表的name_和souce_字段,如果是远程api部署,name_和source_是api参数里传过来的

  • act_re_procdef [流程定义表]

    image.png

    蓝色底的那条是新生成的,可以对比上一条(资源目录启动生成的),version_是不一致的,id也是有规律去别的

2.操作二:流程实例启动

image.png

关联表:

  • act_hi_actinst [历史的活动实例表]

    历史的活动实例表,记录流程流转过的所有节点

    image.png

    image.png

  • act_hi_detail [历史流程变量运行详情表]
    历史的流程运行变量详情记录表。流程中产生的变量信息,包括控制流程流转的变量,业务表单中填写的流程需要用到的变量等。

    image.png

    可以看出,记录是区分类型“type_”的,对于表单变量,会记录两遍,以流程变量记录一遍,再以表单变量记录一遍,下面以“项目名称”为例看看这两个记录:
    流程变量

    表单属性

  • act_hi_identitylink[历史流程运行中关联的用户]

    image.png

    image.png

  • act_hi_procinst[历史流程实例表]

    image.png

    image.png

    没有子流程时,这三个字段是一致的,此表中的id没有重新生成,而是直接借用的运行中实例的id

  • act_hi_taskinst[历史任务实例表]

    image.png

    image.png

  • act_hi_varinst[历史流程变量表]

    image.png

    以“项目名称”举例:
    image.png

此表跟act_hi_detail比较类似,具体区别后续再研究。

  • act_ru_execution[流程执行实例表]
    image.png

    image.png

    这个表是执行实例表,实例的概念也在这个表中定义,如果一个流程中存在子流程或者存在并行会签流程,那么同一个PROC_INST_ID_会对应多个EXECUTION,
    “ID_”:EXECUTION主键,这个主键有可能和PROC_INST_ID_相同,相同的情况表示这条记录为主实例记录。
    “PROC_INST_ID_”:一个流程实例不管有多少条分支实例,这个ID都是一致的。

具体参考这篇文章:https://blog.csdn.net/zhongzk69/article/details/90956710

  • act_ru_meter_log[流程度量日志]
    观察看,这个表每隔15分钟执行一次,具体作用待研究。
  • act_ru_task[流程运行任务表]
    image.png

    image.png

3.操作三:更换任务执行人

image.png

关联表:

  • act_hi_actinst [历史的活动实例表]

    image.png

    更改了此条记录。

  • act_hi_identitylink[历史流程运行中关联的用户]
    这个表比较关键,新增了两条记录(注意这两条记录的id是一样的,两条记录通过“opration_type_”字段区分),原始记录保持不变。

    image.png

    蓝色底的是新增的两条记录,第三条是原始记录。

image.png

这个是删除动作记录,注意id跟以前不一样了,“opration_type_”是“delete”,


image.png
  • act_ru_task[流程运行任务表]
    image.png

    变更了“assignee_”字段

4.操作四:执行“用户任务”流程节点

image.png

关联表:

  • act_hi_actinst [历史的活动实例表]

    image.png

    修改了第二条,增加了第一条(蓝色底的),具体如下:
    image.png

    修改了这三个字段,“act_inst_state_”从0变为4(具体代表的意义需要查一下),"end_time_" 和“duration_”分别是本节点的审批时间和等待时间。

  • act_hi_identitylink[历史流程运行中关联的用户]

    image.png

    新增一条记录,下个节点的审批人记录,具体如下:
    image.png

  • act_hi_op_log[操作历史日志]

    image.png

    具体如下:
    image.png

    "operation_type_"是操作类型,assign代表更换执行人
    "property_"是操作的那个属性字段,本次是“assignee”字段
    “org_value_”是流程定义文件的执行人,
    “new_value_”是更换过的实际的执行人

  • act_hi_taskinst[历史任务实例]

    image.png

    新加了一条记录(蓝色底的),更新了上一条记录,

    更新的记录详情如下:


    image.png

    “assignee_”不知道是本次操作更改的,还是上一步更换执行人操作更改的,需要确认?
    “priority_”,优先级,默认好像都是50,不知道数值怎么定义的,也需要确认?

    新增的记录详情如下:


    image.png
  • act_ru_execution[流程执行实例表]

    image.png

    修改执行实例
    image.png

    “rev_”,乐观锁(版本)
    “sequence_counter_”,从流程启动环节的3,变为现在的5,具体原理需要继续跟进?

  • act_ru_task [流程运行任务表]

    image.png

    更新了原来的记录,详细如下:
    image.png

    可以看出,act_ru_task 只保存各个实例在当前执行任务节点的信息,历史记录在act_hi_taskinst中。

  • act_ru_task_meter_log

    image.png

    暂时不了解此表意义?

5.操作五:执行“用户任务”流程节点【带网关条件】

image.png

关联表:

  • act_hi_actinst [历史的活动实例表]

    image.png

    修了个第三条记录,新增了两条记录,第三条记录变更如下:
    image.png

    跟上一章类似,“act_inst_state_”也是从0变为4,具体意义后续跟进?
    两条新加的记录如下:
    image.png

    image.png

  • act_hi_detail [历史流程变量运行详情表]
    新增一条变量记录:

    image.png

    image.png

  • act_hi_identitylink[历史流程运行中关联的用户]
    同上一章一样,新增一条下一审批节点的审批人:

    image.png

    image.png

  • act_hi_op_log[操作历史日志]

    image.png

    详细如下:
    image.png

    "operation_type_"是操作类型,complete代表完成这个任务
    "property_"是操作的那个属性字段,本次是“delete”字段??如果按照上一章的理解,这个怎么解释??
    “org_value_”是流程定义文件的执行人,
    “new_value_”是更换过的实际的执行人

  • act_hi_taskinst[历史任务实例]
    这个表跟“act_hi_actinst”的区别是,act_hi_taskinst只记录任务相关的历史操作,而act_hi_actinst记录的是整个审批流程的所有环节,包括“网关”等,可以对比本章的act_hi_actinst截图

    image.png

    更新上一条,新增一条(蓝色底的)
    更新如下:
    image.png

    新增如下:
    image.png

  • act_hi_varinst[历史流程变量表]

    image.png

    image.png

第二章提出疑问,act_hi_varinst和act_hi_detail什么区别,基于数据比较一下:


act_hi_varinst

act_hi_detail

可以看出,detail表比varinst表多两条数据,varinst表只有projectName和checkArea对应的变量,而detail表不只有变量,还有这两个变量对应的表单属性:


act_hi_detail
  • act_ru_execution[流程执行实例表]

    image.png

    下面的红框中,是跟第四章中此表数据变化的地方:
    image.png

    “act_id_”是bpmn对象中本任务节点的id,
    “act_inst_id_”是本实例活动任务节点的id,可以看出是有“act_id_”字段和“act_ru_task”表的本任务节点的id拼接成的。

  • act_ru_task [流程运行任务表]
    可以看出,上一执行完的任务节点已经删除,新增了一条当前被执行任务节点的记录。

    image.png

    image.png

  • act_ru_task_meter_log

    image.png

  • act_ru_variable
    (本表保存流程实例执行过程中,所有关联到的流程变量。
    如果流程实例完成,这些记录应该是被删除掉了,需要验证??)
    新增一条记录:

    image.png

    image.png

    “var_scope_”对应的是act_ru_excution表的执行实例的id

6.操作六:并行会签

本操作跟上一章的操作类似,主要是act_ru_excution表的处理有差别。下面具体看一下:

执行到“流程发起人发起会签”节点(此节点还没有动作时):


image.png

image.png

当执行完“流程发起人发起会签”节点,看一下act_ru_execution表的变化:

image.png

完整的横向对比:


image.png

image.png

image.png

image.png

可以看出,由原来的一条记录变为了4条记录(修改了一条,新增了三条)。
看一下被修改的刚才那条记录(红框中的是变化的值):


image.png

新增加了一条并行会签的主活动节点(不知道这么理解对不对?):


image.png

新增了2条以新增主活动节点为父节点的分支节点:


image.png

image.png

你可能感兴趣的:(2021-05-21 camunda基础操作及数据对应)