1. 概述编辑
1.1 预期效果
简道云表单中包含两个子表单,其中一个子表单中包含成员单选、部门单选控件。如下图所示:
已有数据如下图所示,现希望将该表单的数据落库。
1.2 实现思路
使用「简道云输入」算子读取表单数据,将「主表单」数据、「零部件明细」子表单、「负责人」子表单分别落库。
2. 操作步骤编辑
2.1 简道云表单字段处理
在简道云表单接入前,建议提前设置字段别名,否则接入到 FineDataLink 中时会使用字段原始名,不便于在 FineDataLink 中进行业务处理。
进入简道云应用,进入表单的编辑界面,点击「扩展功能>数据推送>设置字段别名」。如下图所示:
点击展开更多 |
2.2 新建简道云数据连接
需要 新建简道云数据连接,以便「简道云输入」算子读取简道云数据。
2.3 主表单数据落库
2.3.1 读取简道云表单数据
1)新建定时任务,拖入「数据转换」节点,进入「数据转换」节点。
2)拖入「简道云输入」算子,选择要读取的简道云表单。
其中,数据连接处显示有权限的,且已配置的简道云数据连接,此处选择前面配置好的数据连接「简道云」;设置要读取的简道云表单及它所在的应用。如下图所示:
点击「数据预览」,可看到子表单数据为 JSON 格式,若想将子表单数据落库,落库前需要解析。如下图所示:
2.3.2 剔除不必要字段
由于我们要将主表单数据落库,一些不需要的字段需要在落库前剔除。
1)拖入「字段设置」算子,只保留number、date、equipment_name、total_price字段,其余字段都删除。
2)点击「数据预览」,如下图所示:
2.3.3 主表单数据输出
1)拖入「DB表输出」算子,将主表单数据输出。如下图所示:
2)「写入方式」Tab 下,写入方式选择「追加写入数据」,将主表单数据全量写入目标表中。
3)点击右上角「保存」按钮。
2.3.4 效果查看
1)右键点击节点,选择「运行节点」。如下图所示:
2)运行成功后,可看到主表单数据已落库。如下图所示:
2.4 子表单-零部件明细数据落库
2.4.1 读取简道云表单数据
再拖入一个「数据转换」节点,进入「数据转换」节点,拖入「简道云输入」算子,选择要读取的简道云表单。
步骤与本文 2.3.1 节相同。
2.4.2 解析子表单数据
由于子表单字段(part_detail_information)为 JSON 格式数据,所以落库前需要进行解析。
拖入「JSON解析」算子,解析 part_detail_information 字段。如下图所示:
2.4.3 剔除不必要字段
拖入「字段设置」算子,保留主表单主键字段(本文示例中为 number),便于之后可与主表单数据合并;保留解析后的子表单字段。
即保留:number、component_name、component_types、component_model、unit_price_of_components、number_of_components、prices 字段,删除其余字段。
2.4.4 子表单数据输出
参考本文 2.3.3 节内容,将子表单数据输出。
2.4.5 效果查看
参考本文 2.3.4 节步骤,运行该数据转换节点,可看到子表单数据已落库。如下图所示:
2.5 子表单-负责人数据落库
2.5.1 读取简道云表单数据
再拖入一个「数据转换」节点,进入「数据转换」节点,拖入「简道云输入」算子,选择要读取的简道云表单。
步骤与本文 2.3.1 节相同。
2.5.2 解析子表单数据
由于子表单字段(head)为 JSON 格式数据,所以落库前需要进行解析,需要解析出 level 字段,部门名称、成员名称字段。
简道云表单中若包含部门单选字段、成员单选字段,使用「简道云输入」算子读取后,解析说明请参见:解析字段
但产品暂不支持一次 JSON 解析直接提取不同层级的字段并扩展,所以我们进行两次解析。
1)
拖入「JSON解析」算子,解析 head 字段,并将解析后的两个 name 字段重命名。如下图所示:
2.5.3 剔除不必要字段
拖入「字段设置」算子,保留主表单主键字段(本文示例中为 number),便于之后可与主表单数据合并;保留解析后的子表单字段。
即保留:number、部门名称、成员名称字段,删除其余字段。
2.4.4 子表单数据输出
参考本文 2.3.3 节内容,将子表单数据输出。
2.4.5 效果查看
参考本文 2.3.4 节步骤,运行该数据转换节点,可看到子表单数据已落库。如下图所示: