salesforce工作中常用的formula用法汇总

1、用返回值为Text类型的公式字段来显示选定的picklist的值;

Formula: TEXT(obj.picklist1__c) + TEXT(obj.picklist2__c) + 'bingo'

2、Long Text Area字段不能被字段标签field tags辨认,也就是在写公式字段时,查找相关字段是找不到它的,而且Long Text Area还没有Required checkbox,同时Formula和Name Field(Text/Auto-Number)也是没有Required checkbox的,但它们仍然是必选项。所以如果想将Long Text Area字段的值拼接到返回类型为 Text 的公式字段里面去,是不可能的,因为Text限制255,容器太小自然不可能盛放比他还长的值;这是关于此问题的相关博客:Formulas and Long Text Area Fields

3、使用公式获取Phone数据类型的字段value,需要使用返回值类型为Text的公式字段,如:Phone (Text) = User.Phone,不需要使用任何function; 

4、在formula中使用PI的Label值:Value($Label.PI),目的是将text转化为number类型的值;

5、将15位Id转化位18位Id:CASESAFEID(Quote.RecordTypeId);
注释:使用SOQL查询关系字段的ID为18位,直接使用公式字段取得的ID为15位,需要使用CASESAFEID转才能得到18位;

6、根据日期规则自动编号:Auto Number: {yy}{mm}{dd}{000} eg: 180122001;

7、判断picklist改变之前的值是否为某一字符串:
ISPICKVAL(PRIORVALUE(Status__c), 'Draft')
TEXT(PRIORVALUE(Status__c)) = 'Draft'
注意:PRIORVALUE(Status__c) = 'Draft'将不生效;

8、数量应该为正整数校验Quantity <= 0 || CEILING(Quantity) != Quantity

9、判断picklist值是否包含在某个Set<String>里面:
IF(CONTAINS('1;2;3;4', Text(Picklist__c)) ,'1','0')

10、将日期时间转化成20 March 2019格式:

String dt = DateTime.newInstance(2019,3,20).format('d MMMM yyyy');
system.debug(dt);

11、在Visualforce中使用CASE公式:lang为变量
{! CASE(lang,'en_US', 111, 'zh_CN', 222, 'zh_TW', 333, 444)}
含义:如果语言为英语,显示111;中文(简体) -> 222;中文(繁体)-> 333;其他 -> 444.

12、在Visualforce中使用IF公式:
{! IF(lang == 'en_US', 111, 222)}

相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页