创建 Salesforce 自定义公式字段 -(参数类型错误不正确)



我正在为佣金字段创建一个公式,该公式根据标准具有多个计算。 我目前收到一个错误,说(错误:函数"AND()"的参数类型不正确。预期的布尔值,收到的数字)。 我应该如何修改公式来解决此问题?

IF(AND(Order__r.New_Amount_Outoutstanding __c = 0,Order__r.RecordTypeId="Bespoke Item",ISPICKVAL( Payment_type__c , 'Deposit'), Date__c>= DATE(2017,04,01)),(Order__r.Amount_RollUp__c) *1.2/100,IF(AND(Order__r.RecordTypeId="Bespoke Item",ISPICKVAL( Payment_type__c , 'Deposit'), Date__c "Bespoke Item",(Order__r.New_New_Net__c *1.2/100), NULL)))

它基本上由 3 个场景组成:

IF(AND(Order__r.New_Amount_Outoutstanding __c = 0,Order__r.RecordTypeId="Bespoke Item",ISPICKVAL( Payment_type__c , 'Deposit'), Date__c>= DATE(2017,04,01)),(Order__r.Amount_RollUp__c) *1.2/100,

IF(AND(Order__r.RecordTypeId="Bespoke Item",ISPICKVAL( Payment_type__c , 'Deposit'), Date__c

IF(Order__r.RecordTypeId<>"Bespoke Item",(Order__r.New_New_Net__c *1.2/100),

)))

你放错了地方")"。当您缩进公式时,它变得很明显:

IF(
AND(
Order__r.New_Amount_Outstanding__c = 0,
Order__r.RecordTypeId="Bespoke Item",
ISPICKVAL( Payment_type__c , 'Deposit'), 
Date__c >= DATE(2017,04,01)
),
(Order__r.Amount_RollUp__c) *1.2/100,
IF(
AND(
Order__r.RecordTypeId="Bespoke Item",
ISPICKVAL( Payment_type__c , 'Deposit'), 
Date__c < DATE(2017,04,01),
(Order__r.New_New_Net__c) *1.2/100),
IF(Order__r.RecordTypeId<>"Bespoke Item",
(Order__r.New_New_Net__*1.2/100), 
NULL
)
)
)

应该是:

IF(
/*Test this Argument*/
AND(
Order__r.New_Amount_Outstanding__c = 0,
Order__r.RecordTypeId="Bespoke Item",
ISPICKVAL( Payment_type__c , 'Deposit'), 
Date__c >= DATE(2017,04,01)
),
/* If True */
(Order__r.Amount_RollUp__c) *1.2/100,
/* If False */
IF(
/* Test this Argument */
AND(
Order__r.RecordTypeId="Bespoke Item",
ISPICKVAL( Payment_type__c , 'Deposit'), 
Date__c < DATE(2017,04,01)
),
/* If True */
(Order__r.New_New_Net__c) *1.2/100),
/* If False*/
IF(
/* Test this Argument */
Order__r.RecordTypeId<>"Bespoke Item",
/* If True */
(Order__r.New_New_Net__*1.2/100), 
/* If False */
NULL
)
)
)

Order__r.RecordTypeId="Bespoke Item"的评估结果也会为TRUE吗?我认为这将是一个 ID。

最新更新