0

我有 3 个字段 - 所有十进制字段:

custbody_myvalue1
custbody_myvalue2
custbody_myvalue3

我需要通过工作流获得 custbody_myvalue3 = custbody_myvalue1 和 custbody_myvalue2 的总和。

在我的工作流程中,我有一个公式可以在编辑其他两个字段中的任何一个时设置 custbody_myvalue3 的值:

{custbody_myvalue1}+{custbody_myvalue2}

但这是结合这两个值 - 没有给我总和。如果我更改公式以将 2 个字段相乘,则数学有效。

在工作流程中执行此操作的正确方法是什么?

4

1 回答 1

0

找到了答案。显然,您需要解析这些值才能对它们求和。

见 SA93584。

工作流公式中的 Javascript 将“+”操作视为相加而不是求和,并将“+”后面的值视为字符串,这会导致在另一个数字后面添加一个数字、NaN(非数字)错误或任何其他错误。

因此,需要命令 Javascript 将值视为数字。为此,只能使用公式生成器中的可用函数或 SuiteScript 函数,例如 nlapiGetFieldValue。

例如,对于前面提到的算术运算,必须使用以下语法才能使公式正常工作:

parseFloat(nlapiGetFieldValue('field1') || 0) + parseFloat(nlapiGetFieldValue('field2') || 0) - parseFloat(nlapiGetFieldValue('field3') || 0)

于 2021-01-04T16:38:39.637 回答