博尼塔BPM用户界面设计形式显示的数据依赖于绑定到形式部件形式变量。
表单变量的值,可以使用不同的选项来设置:
- JSON(即常数)
- JavaScript表达式(脚本执行的返回值)
- 外部API调用(REST API)...
从PostgreSQL数据库获取数据并将它们放入表单变量的解决方案实际上是使用REST API调用。这是将表单与第三方系统绑定的唯一解决方案,无需在Bonita BPM中复制数据。
问题是(据我所知)是PostgreSQL不提供REST API来运行SQL查询。
这里的解决方案是在Bonita BPM中部署一个可充当代理的REST API扩展:它将提供一个REST API来初始化表单变量,并执行Java代码并使用JDBC在PostgreSQL数据库上运行查询。
一个REST API extension这样做是作为一个博尼塔BPM社区项目。请注意,此扩展实际上不直接处理与数据库的连接,而是使用数据源通过Java应用程序服务器连接池。
这里是一个总结的架构:
表 - >小工具 - >表格变量 - > REST API扩展 - >数据源 - >数据库
这种架构可以显得相当复杂。一个好的选择是使用Bonita BPM业务数据模型(BDM)。 BDM基本上允许您在Bonita BPM Studio中定义数据库模式,并将为您创建数据库表和Java类来处理流程中的数据。
此解决方案的优点是您拥有开箱即用的REST API以获取业务数据值,并且您可以使用流程任务上的“操作”来更新它们。
如果我把这些信息放在List类型的变量中,我能否在UI Designer中显示它?那么我在表单中做了它,信息显示正确,但我真的需要在UI Designer中完成,并且此API REST很难理解 –
业务变量(BDM)和流程变量(具有Java类型,如List)可以使用Bonita BPM标准REST API进行检索。请记住,这样做会复制BDM或Bonita BPM数据库中的数据。以下是有关REST API检索流程变量的文档链接:http://documentation.bonitasoft.com/?page=bpm-api#toc15您还可以查看此示例如何检索流程数据:http: //community.bonitasoft。com/project/process-variable-example –
在示例过程变量示例中,它显示了如何显示输入字段中过程变量的内容,您可以给我一个如何显示过程变量中数据的示例表例如? –