智能填写表单2

在填表公式中如何实现更复杂的运算

作为云表核心功能之一的填表公式,是有非常强大的功能的。它除了能够进行简单的加减乘除的运算、有大量的触发事件可以使用之外。填表公式还支持大量的函数,在我们了解了什么是填表公式的基础上,再来进一步看一下填表公式还有哪些强大的功能吧

1.不触发值变化的使用

在上一节中,我们学习了如何使用填表公式中的值变化事件,进行计算金额,那么能否实现在已知金额和数量的前提下,进行反算单价呢?如果直接使用Excel的公式可以实现吗?
我们先来看看计算金额与计算单价的公式,他们分别是:金额=单价*数量,而单价=金额/数量,金额变化计算单价,单价变化计算金额,金额再次变化又计算单价,这样公式将进入无限循环,那么云表是如何处理这类操作的呢?
在云表的填表公式中,有一个选项是“不触发值变化”,勾上这个就能阻止这个无限循环的公式
1)在值变化时间下,添加“金额”数据项,增加一个“金额”的值变化事件。
2)在“金额”的值变化下,添加“单价”的赋值操作。给单价赋值时,勾选“不触发值变化”,中止下一步单价的值变化,退出计算循环。
设置公式
3)实现效果如下图。
反算单价

2.if函数的使用方式

通过填表公式,我们可以进行加减乘除的运算,让表单自动计算,达到智能填写表单的效果,那么还能不能进一步设计呢?在云表的填表公式中,有大量的函数可以提供给我们使用,可以通过使用这些函数,达到更加智能的效果

2.1if函数介绍

再进一步来看下反算单价的公式,反算单价的示例中,若数量为0,则除数为0,根据数学计算的原则,除数是不允许为0的,所以当除数为0时,系统将报错,如何预防这种情况的发生呢?可以使用云表自带的IF函数。
if函数的使用方式
  它有3个参数:条件判断 ,结果为真返回值,结果为假返回值,注意:<> 包含里面的内容都是需要被替换。
注意:表达式编辑器中只能有英文半角字符,所有字符都可通过页面点击填写

2.2使用if函数

在反算单价的过程中,需要判断数量是否为0,数量为0则直接给单价赋值为0,数量不为0时则按照公式正常计算单价, 则表达式可填写如下:
IF( 本表单.明细.数量 <> 0, 本表单.明细.金额 / 本表单.明细.数量, 0)
公式编辑

3.注意事项

1) 单元格使用Excel公式后,单元格会自动锁定,不能再次修改,因此需要去掉excel公式;
2)Excel公式不能触发填表公式值变化事件,因此销售单的金额和合计金额都不允许使用excel公式。
在设置填表公式前需要清除设计的Excel公式

4.填表公式的更多运用

通过填表公式可以实现哪些操作呢?:
WMS系统中,使用PDA扫码后通过填表公式将扫码内容解析成数据填写表单,在《付款单》中通过填表公式分摊付款金额,打印箱码时通过填表公式实现批量打印...这些界面上的操作都是利用填表公式实现的。
通过填表公式获取扫码枪的信息并填写至表单中
通过填表公式进行打印箱码
在入门课程中,我们只学习了填表公式最基础的用法,还有很多事件与公式没有学习到,可以通过教程:9.2 事件来进一步学习
2025-04-11
0 0