更新日期
1. 简介
1.1 功能概述
子表单整体数据联动 是指将数据源表单中的整个子表单数据批量同步到当前表单的子表单中。当主表字段满足指定过滤条件时,系统会自动读取对应记录中的所有子表单明细,并按配置关系填充至当前表单。
该功能适用于需要同步多行明细数据的业务场景,可减少重复录入,提高数据录入效率。关于数据联动的通用说明(如支持字段、设置入口等),请参考文档:数据联动。
1.2 应用场景
- 设备管理 :在“设备巡检单”中选择设备编号后,自动联动“设备档案表”中该设备对应的全部巡检项明细。
- 销售管理 :在“发货单”中选择销售合同后,自动同步“合同档案表”中该合同中的商品明细。
- 教育管理 :在“成绩录入表”中选择班级后,自动填充该班级全部学生名单。
2. 设置步骤
2.1 准备基础表单
2.1.1 创建数据源表单
新建「销售合同」表单,并添加以下字段:
- 合同编号(单行文本)
- 商品明细(子表单),子表单内包含以下子字段:
- 商品名称(单行文本)
- 规格型号(单行文本)
- 订购数量(数字输入框)
- 单价/元(数字输入框)
完成后录入基础数据。


2.1.2 创建当前表单
新建「发货单」表单,并添加以下字段:
- 合同编号(下拉框)
- 发货明细(子表单),子表单内包含以下子字段:
- 商品名称(单行文本)
- 规格型号(单行文本)
- 发货数量(数字输入框)
- 单价/元(数字输入框)

2.2 设置子表单整体联动
以下示例实现:选择合同编号后,自动同步对应合同中的全部商品明细。
2.2.1 设置触发字段
选中「合同编号」字段,在「字段属性 >> 选项」处选择「关联其他表单数据」,并关联至“销售合同”中的「合同编号」字段。完成后,「合同编号」字段将自动读取数据源中的合同编号作为可选项。

2.2.2 配置子表单整体联动
1)选中「发货明细」子表单(点击子表单外框),在「字段属性 >> 默认值」处选择「数据联动」,点击「数据联动设置」。

2)在弹窗中完成以下配置:
- 联动表单选择 :销售合同。
- 设置过滤条件 :销售合同中的「合同编号」 等于 当前表单中的「合同编号」。
- 触发以下联动 :当前表单中的「发货明细」整体联动显示为联动表单中的「商品明细」。
- 添加子字段 :点击「添加子字段」,建立子字段映射关系(映射时需确保左右两侧字段的类型一致):
- 商品名称 → 商品名称
- 规格型号 → 规格型号
- 发货数量 → 订购数量
- 单价/元 → 单价/元
设置完成后点击 「确定」。

3. 效果演示
完成配置后,当用户选择某个合同编号时,系统会自动读取该合同下的全部商品明细,并批量填充至当前表单的「发货明细」子表单中。若源表单存在多条明细记录,系统会自动新增对应行数,并同步显示全部数据。

4. 注意事项
- 字段结构要求 :当前表单与联动表单均需包含子表单字段,才能使用子表单整体数据联动。
- 数据覆盖逻辑 :当触发联动时,当前子表单中已有的数据将被联动结果覆盖,请谨慎操作。
- 字段类型一致 :子字段建立映射关系时,其字段类型需与源表单对应的子字段保持一致,否则无法建立关联关系。
5. 常见问题
Q1:为什么无法选择整个子表单进行联动?
请确认当前表单和联动表单中均存在子表单字段,并且是在选中子表单外框后进入「字段属性 → 默认值 → 数据联动设置」进行配置。
Q2:触发联动后,原来填写的数据会保留吗?
不会。触发联动后,当前子表单中的已有数据会被联动结果覆盖,建议在确认联动条件后再进行手动修改。
Q3:子字段无法建立对应关系怎么办?
请检查当前子表单与联动表单中的字段类型是否一致,并确认两个子表单中已存在需要映射的字段。
Q4:修改源表单中的数据后,目标表单中的数据会自动同步更新吗?
不会自动同步。修改源表单数据后,需要重新触发联动(如重新选择合同编号),系统才会读取最新数据并重新填充子表单内容。