自定义按钮批量传递数据至关联子表
1. 简介
1.1 功能简介
1.2 应用场景
该功能适用于采购申请发起、对账单生成、发票开具等批量数据处理场景。例如:
- 采购管理:可在「采购需求池」中选择需求数据后,通过按钮一键生成采购订单;
- 对账单生成:可在筛选出某一阶段、某一供应商的账单后,通过按钮一键生成对账单。
1.3 预期效果
以生成采购订单为例,在「采购需求池」中选择多条需求后,可通过工具栏中的「发起采购」按钮,将所选需求数据新增到「采购订单」中的关联子表字段「采购需求明细」中。效果如下所示:
注:选择数据时,最多可勾选 100 条数据。
2. 设置步骤
2.1 添加按钮
进入需要设置按钮的表单,点击「扩展功能 >> 自定义按钮 >> 新建自定义按钮」,进入自定义按钮设置页面:
2.2 基础设置
对按钮进行以下设置:
- 按钮样式:按需设置按钮的名称、风格、颜色及图标;
- 显示位置:选择操作类型为「选择多条数据后操作」;
- 可用条件:按需设置按钮的可用条件,仅满足条件的数据可以被传递。
注:显示位置类型为「选择多条数据后操作」时,不支持设置「不满足可用条件时」的按钮显示规则。
2.3 执行动作设置
执行动作仅可设置为「新增数据」,选择需要新增数据的目标表单。
2.4 设置字段默认值
当目标表单中含有关联子表字段时,按钮在新增数据时,便可:
- 把所选数据 1 对 1 地传递到目标数据的关联子表(也就是背后的关联表)中。
- 同时,也可把多条数据中的某一字段值传给主表字段(前提是多条数据的该字段值均相同,否则传递失败,主表字段为空值)。
以生成「采购订单」为例,如下图所示,可将每条采购需求 1 对1 地传递到关联子表「采购明细」中。同时,又可把需求中的「期望供应商」信息传递到主表字段「供应商」中。
因此,可以按需设置新增数据中,主表和关联表字段的传值规则。具体如下:
1)主表字段
在「主表字段」内,添加字段并设置其默认值。当设置为某一「字段值」时,若所选数据的该字段值均相同,如供应商均为 A,则可成功赋值;若存在不相同的数据,如供应商 B,则赋值失败,主表字段为空值。
注:默认值支持设置为字段值、自定义及空值,详情可参见本文第四节。
2)关联表字段
在「关联表字段」内,需进行如下设置:
- 数据传递规则:选择需要接收数据的关联子表字段 a(对应关联表为 A):
- 默认值设置:虽然新增数据时,看起来是数据传递到字段 a 中,但本质上是数据新增到了关联表 A 中,因此此处设置的为关联表 A 中字段的默认值,支持设置为字段值、自定义及空值,详情参见本文第四节。
全部设置完成后,点击「保存」。
2.5 保存按钮
保存按钮后,将自动进入使用范围设置,即设置在哪些权限组中可以使用该按钮。勾选需要使用按钮的权限组,点击「完成」即可。
3. 示例
本节示例:「采购订单表」中已通过关联子表绑定了「采购明细表」且支持一同填报;同时「采购明细表」中通过关联数据字段关联了「采购需求池」。此时,希望能够在采购需求池中,对同一供应商的需求,生成采购订单。
注:在学习之前建议安装 关联子表 应用模板,本文将按照模板中的示例数据进行讲解。
3.1 添加按钮
进入「订单表」,点击「扩展功能 >> 自定义按钮 >> 新建自定义按钮」,进入自定义按钮设置页面:
3.2 基础设置
新建后,需进一步对按钮进行如下基础设置:
- 设置按钮名称为「订单出库」,并根据偏好设置按钮样式;
- 显示位置:选择操作类型为「选择多条数据后操作」。
- 添加可用条件为:「采购状态」不为「完成」。
3.3 执行动作设置
执行动作选择「新增数据」后,需进行如下设置:
- 选择目标表单为「采购订单表」;
- 主表字段默认值:「供应商」设置为「当前表单字段值--供应商」,「采购负责人」为「自定义--Lucy」;
- 关联表字段默认值:
- 数据传递规则:「采购明细」的数据来源于「按钮触发的数据」;
- 添加「关联采购需求」、「产品名称」、「产品规格」、「供应商」、「采购数量」、「单价」、「金额小计」字段并分别设置其默认值;
全部设置完成后,点击「保存」。
3.4 保存按钮
保存按钮后,勾选需要使用按钮的权限组,点击「完成」即可。
3.5 效果演示
效果参见【1.3 预期效果】。
4. 注意事项
4.1 主表字段默认值设置规则
1)支持设置默认值的字段类型包括:单行文本、多行文本、数字、日期时间、单选按钮组、下拉框、成员单选、部门单选、地址、关联数据(主表不可为当前表单)。
2)目标表单中的主表字段默认值可设置为:
- 字段值:将当前表单中某个字段的值,传递给主表字段;
- 自定义值:手动输入一个固定值;
- 空值:不设置默认值,成员在新增时手动填写。
注:关联数据字段仅支持设置为「字段值」,且仅可选到与之主表相同的关联数据字段。例如,目标表中字段 a 的主表为 A,则设置默认值时,仅可选到当前表单中主表同为 A 的关联数据。
4.2 关联表字段默认值设置规则
1)关联表字段默认值支持设置为:
- 字段值:将当前表单中某个字段的值,传递给关联表字段;
- 自定义值:手动输入一个固定值;
- 空值:不设置默认值,成员在新增时手动填写。
2)对于不同类型的关联表字段,可以设置的默认值类型具体如下表所示:
目标表单字段 | 字段值 | 自定义 | 空值 |
单行文本、下拉框、单选按钮组 | 单行文本、单选按钮组、下拉框和流水号 | ✓ | ✓ |
多行文本 | 多行文本 | ✓ | ✓ |
数字 | 数字 | ✓ | ✓ |
日期时间 | 日期时间、提交时间、更新时间 | ✓ | ✓ |
地址 | 地址 | ✓ | ✓ |
定位 | 定位 | x | ✓ |
图片 | 图片 | x | ✓ |
附件 | 附件 | x | ✓ |
成员单选 | 成员单选、提交人 | ✓ | ✓ |
成员多选 | 成员多选 | ✓ | ✓ |
部门单选 | 部门单选 | ✓ | ✓ |
部门多选 | 部门多选 | ✓ | ✓ |
关联数据 | 当前数据 | x | x |
注:仅支持设置主表为当前表单的关联数据字段。