这里需要我们首先明确一下背景逻辑:此处的参数"出入库"是从哪里来的呢?为什么需要等于5?答案是在[出入库-销售单流转出库]页面的保存按钮中,我们调用了服务端命令[新建出入库单],在此服务端命令中,参数“出入库”被赋值为5。而这个参数“出入库”又会在上图的服务端命令中与5在 IF 函数中对比判断,如果相同则为库存减少,否则为库存增多:
那么如此看来,好像没什么毛病啊?为什么会出错呢?
这里就牵扯到程序设计一个重要的概念——数据类型。我们在平时设计数据表,或是写代码的时候,都了解文本和整数类型的区别吧?例如数据无法正确计算时,往往是因为数字没有正确设置为整数/小数类型。此处也是一样,实际上参数“出入库”的数据类型为文本,而 IF 函数中的数字5为整数类型,因此二者永远无法匹配,IF 函数也恒进入 false 分支,自然也就总是判断为出库了。
接下来是重点:那么为什么参数“出入库”就被赋值为文本类型呢?
我们来聚焦一下服务端命令[新建出入库单]的赋值框: