1. 概述
1.1 应用场景
用户想要将数据库系统数据输出到简道云多个子表单中,实现子表单数据的新增、更新和删除。
注:若数据量不大或者简道云表单数据插入没有记录时间的固定字段,推荐使用增删改数据同步至简道云表单(清空目标表,再写入数据)。
1.2 实现思路
4.1.14.1 之前的版本,详情参见:多个简道云子表单增删改输出
4.1.14.1 及之后的版本,构建数据库中需要写入的子表单 JSON 数据,并构建简道云表单中已有的子表单 JSON 数据,通过数据比对进行增删改区分,并将数据写入简道云表单中。
2. 操作步骤
2.1 构造数据库子表单JSON字段
新建数据转换,新增简道云输入算子,取出需要输出至简道云表单中的子表单数据,如下图所示:
注:需要确保数据库需要输出到子表单的数据表中包含主表单字段。
使用 JSON 生成构造子表单1的 JSON 格式数据,如下图所示:
设置「按分组字段合并JSON字段」,将主表单字段添加到分组字段,确保输出的子表单 JSON 字段数据是按照主表单字段为分组,然后按照字段生成 JSON。
点击数据预览即可看到构造出的子表单数据以及主表单字段,如下图所示:
同理,如果有多个子表单,也构造子表单2,如下图所示:
设置子表单关联,将多个子表单数据合并,关联字段为主表单主键字段,如下图所示:
并进行字段设置,取消合并后的冗余字段。
2.2 构造简道云主表单中已有的子表单
新增简道云输入算子,获取表单信息,如下图所示:
由于简道云表单中子表单包含_id字段,这样的子表单JSON 字段无法与 2.1 节数据库中构造的 JSON 字段进行数据比对,因此需要先使用 JSON 解析,将子表单数据解析为二维表字段,然后再使用 JSON生成构造子表单 JSON。
先解析子表单1的字段,如下图所示:
解析除_id外的其他字段,如下图所示:
然后使用 JSON 生成,将解析后的子表单字段按组构建 JSON,构建步骤与 2.1 节相同,如下图所示:
同理,如果有多个子表单,也构造子表单2,如下图所示:
将简道云中两个子表单已有数据进行关联,关联方式为左关联,关联字段为主表单主键字段,如下图所示:
点击数据预览,即可看到合并完成后简道云中两个子表单中已经存在的数据,如下图所示:
使用字段设置,删除一些关联后的冗余字段,如下图所示:
2.3 比对数据库和简道云表单中数据增删改差异
将 2.1 节构建的数据库中需要同步的子表单 JSON 数据和 2.2 节构建的简道云中已有数据的 JSON 进行对比,主键映射为主表单主键,比对字段为构建的两个子表单 JSON 数据,并配置标识关系,然后设置比对结果表字段为主键_id,如下图所示:
查看比对结果,即数据库新增了一条数据,如下图所示:
然后设置简道云输出,输出至指定表单,然后可选择子表单作为输出目标表字段,如下图所示:
设置写入方式,如下图所示:
3. 效果查看
执行任务,即可看到表单的增删改,新增一条数据,如下图所示: