欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

入门Camunda实战指南2:探索工作流程表单篇

最编程 2024-07-20 20:43:17
...

这篇主要记录form表单的知识,camunda表单有3种配置实现方式

1、camunda forms

用官网下载的modeler创建编辑表单,用表单key跟使用的节点关联,关联的节点一般是开始或用户任务。创建的表单是.form格式文件,实质上是json格式,所以理论上手动创建components:[ ]里面放标签也能实现修改form。


这种表单配置方式在我最初学习的时候没有找到对应的repositoryService api,一度只能通过读取xml、bpmn文件并遍历标签找到formKey,非常不方便。后来调研的几个开源前端画图项目都用的这种formKey的方式,即表单和流程图分开编辑再绑定,其他流程引擎如flowable也默认使用这种方式。查找资料后发现一篇文章能预取下个节点。
https://blog.****.net/skayliu/article/details/122914671

其中这部分代码可以通过流程图的definitionId用repositoryService获取流程图上大部分信息(其实从理论上来说非常合理,毕竟流程图信息是写死的),包括各节点的流转方向和formKey。这样就能提前知道各个节点应填表单交给前端页面,做到节点灵活配置。

2、external task form

手动写html和js部署在流程图的属性里,我没有实际尝试过这种配置方法,和需求不符。从网上了解,这种方法的表单属性似乎不会自动赋值到流程实例里。

3、流程图文件内置form标签

这种方式在modeler软件里非常容易配置,之前提到的新手入门教程也是这种form配置方法,导致我一度在这种方法上花费大量时间研究,例如xml文件的导入导出、读取标签和对应内容。实际上这种方式也能通过repository的api读取到,但既然前端项目使用另一种方式,这种就被我舍弃了。