1.触发时机
填表公式的“保存表单前/后”事件是在客户端(云表浏览器)中触发的,单击【保存】按钮时触发。无论是通过单击表单工具栏上的【保存】按钮保存表单时,还是通过单击【关闭】/【退出】时弹出“是否保存”对话框,选择“保存”时,都会触发该事件。
“保存表单前事件”,是指表单还未保存,我们可在该事件下设置判断,当表单不满足是弹出提示框,从而中止表单的“保存”操作;
“保存表单后事件”,是指表单已保存,当表单保存后可执行表单可执行同值合并、排序等,若在该事件下添加“刷新”表单操作,可呈现出最新的表样;
2.区别
填表公式中有3种表单保存时的事件:“保存”工具栏按钮单击事件、“保存表单前事件”、“保存保存后事件”,业务公式中有“保存表单后事件”,这3个事件的运行顺序及作用有什么区别呢?
【保存】工具栏 | 保存表单前 | 保存表单后 | 保存表单后事件 | |
所在位置 | 填表公式工具栏 | 填表公式 | 填表公式 | 业务公式 |
触发时机 | 单击【保存】时 | 表单保存前 | 表单保存后 | 表单保存时 |
运行顺序 | 2 | 1 | 4 | 3 |
3.示例
3.1 保存校验表单
根据公司的规则“日报”必须在当天提交,最晚为第2天上午8点前提交,根据日报的填写规则,超过最晚填写时间时,将无法保存。
实现思路如下:在《日报》的“保存表单前事件”下添加“提示框”操作,当日报的提交时间 > 汇报日期 第2天的8点时弹出“提示框”提醒,无法保存。
①在保存表单前事件下添加提示框操作。进入《日报》模板设计界面,单击【填表公式】,打开“填表公式管理”对话框,选中“保存表单前”事件,在对话框底部单击【添加公式】,弹出“请选择操作”,选择“提示框”,确定;
②填写公式。修改公式名称为“提示框_超过时间填写日报”,设置“执行条件” ,当提交时间与回报日期间隔1天 并且 提交的时间 超过8点 时,执行“提示框”操作,设置提示框的“标题”和“提示文本”;
3.2 分组小计
有《费用支出记录》表,需要根据不同的报销类型分组小计报销金额,生成“费用支出统计”;
实现思路如下:《费用支出记录》中设计2个数据接口:根据年月查询支出明细,根据年月统计不同支出类型的合计支出金额。《费用支出统计》报表中单击【查询】时,调用刚设计的2个数据接口,将数据插入到明细中,并在该模板中设置明细按照“支出类型”排序和同值合并,当表单保存后明细会先按照排序规则排序,再将类型中相同的值合并,刷新表单后显示效果。
①设计数据接口:根据年月查询支出明细“支出明细(年,月)”
②设计数据接口:根据年月统计不同支出类型的合计支出金额“统计合计金额(年,月)”
③在《费用支出统计》模板中设置,明细按照“支出类型”同值合并和排序;
④《费用支统计》模板中,单击【查询】时,先插入“支出明细”,再插入“类型小计”,插入明细后引用系统内部操作“保存表单”;
⑤在“保存表单后事件”下引用系统内部操作“刷新”;