1.什么是状态改变事件
“状态改变事件”是指表单的状态发生改变,比如《入库单》由“未入库”变更为“已入库”,由“未审核”变更为“已审核”...等等,在计算机中,入库状态数据项的值=true的时候表示已入库,入库状态数据项的值=false的时候表示未审核;
“状态改变事件”是一个状态按钮事件,需要添加具体的状态数据项,该数据项的类型为是否类型,单击【状态按钮】时触发事件,通过状态按钮数据项的值表示表单所处的状态。
【状态按钮】有专属的设置,在模板设计界面,单击“状态设置”打开“表单状态设置”,有2部分组成:数据项和标题。为了用户操作方便,按钮的标题会根据状态数据项的值显示成不同的名称,它分为确定按钮标题和取消按钮标题,比如下图,单击“确定按钮标题”后状态数据项的值变更为“常量.是”,单击“取消按钮标题”后状态数据项的值为“常量.否”。
2.如何使用
在模板设计界面,单击【状态设置】,打开“表单状态设置”,单击【添加数据项】,状态数据项为“入库”,当表单未入库,状态按钮显示【确认UR库】,当表单已入库是,状态按钮显示【取消入库】
添加“状态数据项”后,在业务公式的“状态改变事件”下可看到该数据项“入库”,选中“入库”的状态改变事件后,单击【添加公式】即可添加事件触发后执行的业务公式。
3.示例
我们以“入库单”完成入库后,自动新建一张该供应商的“应付款单”为例,《入库单》和《应付款单》的模板样式如下,一张“入库单”对应一张“应付款单”,“入库单”入库时,自动创建一张应付款单,“入库单”取消入库时,删除对应的“应付款单”。
①添加“入库”状态数据项,确认按钮标题为【确认入库】,取消按钮标题为【取消入库】,“入库”状态数据项为是否类型的数据项,单击“确定入库”后值变更为“常量.是”,单击“取消入库”后值变更为“常量.否”。
②“入库单”执行状态改变事件时,将对《应付款单》操作,因此,需要在“入库”状态改变事件下,添加针对“应付款单”的公式。单击【业务公式】,找到“入库”状态改变事件
选中“入库”状态改变事件,单击【添加公式】,选择目标模板,事件触发后写入数据的模板。
进入业务公式设置界面,左侧显示目标对象,业务公式是由4部分组成:数据源,执行条件,子数据源,操作。
③设置“确认入库”的业务公式,“数据源”使用默认的“本表单”,设置执行条件,满足该条件,后续操作才执行。入库单“入库”时,自动创建一张应付款单,入库单“取消入库”时,删除对应的“应付款单”,因此有2个不同的情况。
先看“确认入库”的情况,单击【确认入库】状态按钮时,“入库”状态数据项的值=常量.是,将此设置为执行条件;
无需设置子数据源;
设置操作,确认入库时,需要新建一张应付款单,选择“新建表单”操作,给“应付款单”的数据项赋值“本表单”对应的数据项,将 本表单的“入库单号”赋值给“应付款单”;
当业务公式中有多个情况时,可对情况进行重命名,将“情况1”右键重命名为“确认入库”。
再看“取消入库”的情况,单击【取消入库】状态按钮时,“入库”状态数据项的值=常量.否,将“情况2”重命名为“取消入库”,并设置执行条件;
无需设置子数据源;
设置操作,取消入库时,删除该“入库单”对应的“应付款单”,选择“删除表单”操作;
删除哪张表单呢?填写匹配条件,当 应付款单.来源单号 = 本表单.入库单号 的哪张应付款单。
④应用效果。
在“入库单”中选中一张表单,单击【确认入库】;
“应付款单”总表中增加该“来源单号”的应付款单;
还可参考示例
用本表单更改其它表单信息
4.批量执行
可参考示例
批量审核