子表单校验

1. 简介

1.1 功能简介

表单提交校验 是指只有填写的内容满足校验条件,才能成功提交数据。由于子表单字段的特殊性,与普通字段的提交校验设置略有不同,故本文将介绍几种常用的子表单校验设置方法。

1.2 应用场景

  • 进销存场景中,使用子表单作为订单明细时,可以通过表单提交校验,来限制订单的数据、总和、总价等数值;
  • 课程预约场景中,可以通过表单提交校验,限制预约明细中报名人的选课时间、课节等信息;
  • 退休信息登记场景中,可以通过表单提交校验,限制人员明细中的性别、年龄等信息。

1.3 预期效果

以【3.3 综合校验】的案例为例,只有满足“性别为男且年龄大于 60 岁,性别为女且年龄大于 50 岁”的条件,才能成功提交表单:

2. 设置入口

1)在表单设计页面添加好字段后,点击「表单属性 >> 表单提交校验 >> 添加校验条件」:

2)进入提交校验页面,填写如下内容:

  • 不满足校验条件时提示的文字
  • 校验公式

填写好内容后点击「确定」保存即可。

3. 常见子表单校验设置方法

3.1 数值类校验

数值类校验是指,对子表单中的单个数字字段的值多个数字字段的计算结果进行校验。例如:最大值校验、总和校验、总价校验等。

3.1.1 最大值校验

要求每一条子表单数据中的数字字段必须小于 100,即所有记录中的数字的最大值必须小于 100,可设置公式为:

MAX(子表单.数字)<100

3.1.2 总价校验

要求总价必须小于 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

注:如需设置辅助字段为不可见,则一定要在表单属性中修改「不可见字段赋值」属性为「始终重新计算」。

Copyright(C)2023 HFBangFu Inc. All Rights Reserved 皖ICP备12017563号-5