2

我必须计算我的新记录的协议值。假设协议值是ending_days - begining_days。我已将此公式放入我的对象中。

IF(开始_ c <> 结束_c,结束_ c-开始_c,0)。

我有两个与此相关的问题

1:协议值是多少?,我假设我假设的内容是正确的还是有其他特定的含义?

2:我只需要为新记录创建协议值。那么,我是否应该在我的 IF 条件中处理这个事实例如:我的 IF 代码是否应该看起来像这样

IF (AND(//以某种方式检查记录是否是新的,Beginning_ c <> Ending _c),Ending_ c-Beginning _c,0)

4

2 回答 2

2

首先,如果Beginning__c == Ending__cthenEnding__c-Beginning__c已经是 0,那么您的公式根本不需要 IF。

其次,公式每次在 SOQL 中引用时都会被评估,如果您想要一次性计算,您应该使用before insert触发器或工作流并将结果存储在常规字段中。

于 2012-05-31T07:57:19.670 回答
1

回答您问题的第 2 部分。在您的公式中使用函数 ISNEW()。所以你的完整公式是:

IF (AND(ISNEW(),Beginning_c <> Ending_c),Ending_c-Beginning_c,0)
于 2012-06-05T04:25:59.503 回答