子表单校验
1. 概述
1.1 功能简介
表单提交校验 用于检查填写内容是否满足预设条件。只有满足条件的数据才能正常提交;如果启用忽略选项,填报人也可以忽略提示并继续提交。
1.2 应用场景
- 进销存场景 中,使用子表单作为订单明细时,可以通过表单提交校验,来限制订单的数据、总和、总价等数值;
- 课程预约场景中,可以通过表单提交校验,限制预约明细中报名人的选课时间、课节等信息;
- 退休信息登记场景中,可以通过表单提交校验,限制人员明细中的性别、年龄等信息。
1.3 预期效果
以退休信息登记为例:只有每条明细都满足“女性年龄大于 55岁,或男性年龄大于 60岁”时,表单才能提交。任意一条记录不符合条件时,系统显示提示并阻止提交。
2. 设置入口
2.1 进入校验数据
1)在表单设计页面添加所需字段。
2)在右侧面板单击「表单属性」。
3)进入「表单提交时>校验数据」,单击右侧的添加按钮,新建校验条件。

2.2 数据校验设置
1)进入提交校验页面,设置如下内容:
- 填写「校验条件」。
- 填写「不满足校验条件时提示的文字」。
- 按需启用「字段修改时实时校验」。
- 选择校验失败后的处理方式:
- 「阻止提交」:条件不满足时不能提交表单。
- 「允许忽略并继续提交」:显示提示,但填报人可以继续提交。
2)填写好内容后点击「确定」保存即可。

注:具体设置内容可参考本文 3.3 节。
3. 常见子表单校验设置方法
3.1 数值类校验
数值类校验是指,对子表单中的单个数字字段的值或多个数字字段的计算结果进行校验。例如:最大值校验、总和校验、总价校验等。
最大值校验
要求每一条子表单数据中的数字字段必须小于 100,即所有记录中的数字的最大值必须小于 100,可设置公式为:
MAX(子表单.数字)<100
总价校验
要求总价必须小于 100,即单价与数量的乘积之和必须小于 100,可设置校验公式为:
SUMPRODUCT(子表单.单价,子表单.数量)<100
3.2 文本类校验
文本类校验是指,对子表单中的文本类字段输入内容进行校验。
例如:选项内容校验中,要求子表单的下拉框选项都选择“是”的时候才能提交,可设置校验公式为:
TEXT(UNION(子表单.下拉框))=='是'
3.3 综合校验
综合校验是指,对子表单的多个字段进行内容和数值的多重校验;当校验条件比较复杂时,可以使用如下方法设置校验条件:
1)子表单添加数字字段作为辅助字段,设置公式为:
IF(逻辑条件,0,1)2)设置表单校验公式为:
SUM(数字字段)==0例如:要求子表单数据中,性别等于“女”且年龄大于 55 岁,性别等于“男”且年龄大于 60 岁的数据才能提交,任意一行不满足就不能提交。
1)选中「辅助字段」,选择「字段属性>默认值」选择公式编辑并单击「编辑公式」,对子表单中的辅助字段设置公式为:
IF(OR(AND(信息登记.性别=='女',信息登记.年龄>55),AND(信息登记.性别=='男',信息登记.年龄>60)),0,1)
2)设置表单校验公式为:
SUM(信息登记.辅助字段(数字))==0
注:如需设置辅助字段为不可见,则一定要在表单属性中修改「不可见字段赋值」属性为「始终重新计算」。

400-111-0890
在线咨询