日期提交校验案例汇总
1. 简介
1.1 案例简介
本文将介绍,如何通过 表单提交校验 功能,实现日期相关的提交校验,并应用于常用的业务场景中。
1.2 应用场景
日期校验主要可用于以下场景:
- 校验某日期之前提交数据,可应用于比赛、活动、内容收集等场景;
- 校验每日某时间之前提交数据,可应用于订餐、日报等填报场景;
- 校验不能在周 X 提交数据,可应用于售后服务工单、周末加班申请等场景;
- 校验每月某日期之前提交数据,可应用于补签申请、缴费申请等场景;
- 校验提交时间大于/小于表单的日期时间字段,可应用于会议室预约、借用归还登记等场景。
在学习之前建议安装 日期校验案例 应用模板,本文将按照模板中的示例数据进行讲解。
2. 某日期之前提交数据
应用场景:
以比赛报名的场景为例,主办方可设置报名截止时间,当超过报名时间后,则不能提交报名表。
设置方法:
进入「比赛报名表」,在「表单属性 >> 表单提交校验」处「添加校验条件」,设置不满足校验条件时提示文字为:已超过报名时间,当前时间不支持报名!设置公式为:VALUE(TEXT(SYSTIME(),'yyyyMMdd'))<=20221210,表示当前服务器时间需小于等于 2022 年 12 月 10 日才能提交,否则提交失败,设置好后点击「确定」保存即可。
效果展示:
当超过报名时间再提交表单时,将无法成功提交,并提示对应文字,效果如下:
3. 每日某时间之前提交数据
应用场景:
以午餐订餐的场景为例,餐厅可设置每日订餐截止时间,当超过订餐时间后,则不能提交订餐表。
设置方法:
进入「午餐订餐表」,在「表单属性 >> 表单提交校验」处「添加校验条件」,设置不满足校验条件时提示文字为:已超过今日订餐时间,明天再来预定吧!设置公式为:VALUE(TEXT(SYSTIME(),'HHmm'))<=1100,表示当前服务器时间需小于等于 11 点才能提交,否则提交失败,设置好后点击「确定」保存即可。
效果展示:
当超过每日订餐时间再提交表单时,将无法成功提交,并提示对应文字,效果如下:
4. 不能在周X提交数据
应用场景:
以售后服务工单的场景为例,企业可设置只在工作日接收服务工单,周末则不能提交工单。
设置方法:
进入「售后服务工单」,在「表单属性 >> 表单提交校验」处「添加校验条件」,设置不满足校验条件时提示文字为:请在工作日提交工单!设置公式为:AND(TEXT(SYSTIME(),'E')!=6,TEXT(SYSTIME(),'E')!=0),表示当前服务器时间不能为周六或周日,否则提交失败,设置好后点击「确定」保存即可。
效果展示:
当在周末时间提交表单时,将无法成功提交,并提示对应文字,效果如下:
5. 每月某日期之前提交数据
应用场景:
以补签的场景为例,企业每月 25 号之后需要整理考勤数据,不可新增补签,即每月 25 号之后不能提交补签申请。
设置方法:
进入「补签申请」,在「表单属性 >> 表单提交校验」处「添加校验条件」,设置不满足校验条件时提示文字为:25号之后不可申请补签,请在规定时间内提交!设置公式为:DAY(SYSTIME())<=25,表示当前服务器时间需小于等于 25 号,否则提交失败,设置好后点击「确定」保存即可。
效果展示:
当在 25 号之后提交表单时,将无法成功提交,并提示对应文字,效果如下:
6. 提交时间大于/小于表单的日期时间字段
应用场景:
以会议室预约的场景为例,会议室的使用时间需晚于当前时间,当使用时间小于当前时间时,则不能提交预约。
设置方法:
进入「会议室预约」,在「表单属性 >> 表单提交校验」处「添加校验条件」,设置不满足校验条件时提示文字为:会议开始时间需大于当前时间!设置公式为:VALUE(TEXT(SYSTIME(),'yyyyMMddHHmm'))<=VALUE(TEXT(DATE(会议开始时间),'yyyyMMddHHmm')),表示当前服务器时间需小于表单中的「会议开始时间」,否则提交失败,设置好后点击「确定」保存即可。
效果展示:
当在 25 号之后提交表单时,将无法成功提交,并提示对应文字,效果如下:
7. 注意事项
本文案例中均使用普通表单作为示例,故需要在 表单提交校验 处设置校验内容。如表单为流程表单,表单属性中的校验条件设置将不再生效,需要在「流程设定 >> 节点属性 >> 更多属性 >> 节点校验条件」中设置该节点的校验条件。详情可参见:节点校验条件。