Salesforce中如何用Picklist值配置公式字段?报错求解
Salesforce公式报错解决:Picklist字段在默认值公式中的使用问题
问题背景
我有两个自定义字段:
CompanyClassify__c(★):自定义Picklist字段,选项包含Government offices、Group companies、Listed company、Listed subsidiary、OtherCalcLevelNum__c(★★):自定义数字字段,需要根据★的选中值计算数值,规则如下:- 选中
Government offices或Group companies:取值为 20 +LevelNum__c - 选中
Listed company:取值为 36 +LevelNum__c - 选中
Listed subsidiary:取值为 48 +LevelNum__c - 选中
Other:取值为 60 +LevelNum__c
- 选中
报错情况
在CalcLevelNum__c的默认值配置区域使用以下公式时,触发报错:
Error: Field CompanyClassify__c may not be used in this type of formula
原公式:
CASE (CompanyClassify__c, "Government offices",20 + LevelNum__c, "Group companies",20 + LevelNum__c, "Listed company",36 + LevelNum__c, "Listed subsidiary",48 + LevelNum__c, "Other",60 + LevelNum__c)
错误原因
Salesforce的默认值公式中,Picklist类型字段不能直接引用,必须先通过TEXT()函数将其转换为文本类型后才能参与逻辑判断。原公式直接调用CompanyClassify__c这个Picklist字段,不符合规则,因此报错。
修复方案
更新后的公式通过TEXT()函数转换Picklist字段,同时优化了逻辑(将重复的+ LevelNum__c提取到CASE语句外部),解决了报错问题:
CASE(TEXT(CompanyClassify__c), "Government offices",20, "Group companies",20, "Listed company",36, "Listed subsidiary",48, 60 ) + LevelNum__c
内容的提问来源于stack exchange,提问作者Natu
相关产品推荐
相关产品推荐

