公式运算符和函数
构建公式时,可以使用下列运算符和函数。单击运算符或公式的名称,以查看更多信息。除非另行指定,否则所有的函数都可用在任何能够包含公式(例如,公式字段、验证规则、批准过程和工作流规则)的位置。
备注:
1.在电子邮件模板中,只有当合并字段属于与电子邮件相关的记录时,才能在公式函数和操作中使用合并字段,否则这些字段将无法解析。
2.忽略以下示例中的多余空格。
数学运算符:
运算符 | |
+(加) | 计算两个值的和。 |
-(减) | 计算两个值的差。 |
*(乘) | 乘以其值。 |
/(除) | 除以其值。 |
^(幂) | 使一个数字变成指定数字的幂。 |
()(左括号和右括号) | 指定先计算左括号和右括号内的表达式。所有其他表达式均使用标准运算符优先权进行评估 |
逻辑运算符:
运算符 | 描述 |
= 与 ==(等于) | 计算两个值是否相等。= 和 == 运算符可以互换。 |
<> 与 !=(不等于) | 评估两个值是否不相等。 |
<(小于) | 计算一个值是否小于此符号后面的值。 |
>(大于) | 计算一个值是否大于此符号后面的值。 |
<=(小于或等于) | 计算一个值是否小于或等于此符号后面的值。 |
>=(大于或等于) | 计算一个值是否大于或等于此符号后面的值。 |
&&(与) | 评估两个值或表达式是否都为真。使用此运算符作为逻辑函数 AND 的备选。 |
||(或) | 评估多个值或表达式中是否至少有一个为真。使用此运算符作为逻辑函数 OR 的备选。 |
文本运算符:
运算符 | 描述 |
&(串联) | 连接两个或两个以上字符串。 |
日期和时间函数:
函数 | 描述 |
ADDMONTHS | 返回的日期是,指定日期之前或之后的指定月数。如果指定日期是当月的最后一天,则结果日期是当月的最后一天。否则,结果包含与指定日期相同的日期组件。 |
DATE | 从您输入的年、月和日值返回一个日期值。如果公式字段中的 DATE 函数值是无效日期,如非闰年的 2 月 29 日,Salesforce 会在详细信息页上显示错误。 |
DATEVALUE | 为日期/时间或文本表达式返回日期值。 |
DATETIMEVALUE | 返回年份、月份、日和 GMT 时间值。 |
DAY | 以 1 与 31 之间的一个数字形式返回一个月中的某一天。 |
HOUR | 以 1-24 的数字格式返回当地时间小时值(无日期)。 |
MILLISECOND | 以 0 与 999 之间的数字形式,返回毫秒值。 |
MINUTE | 以 0 与 60 之间的数字形式,返回分钟值。 |
MONTH | 以给定日期的数字格式返回月份,即 1(一月)与 12(十二月)之间的一个数字。 |
NOW | 返回表示当前时刻的日期/时间。 |
SECOND | 以 0 与 60 之间的数字形式,返回秒值。 |
TIMENOW | 返回表示当前时刻的时间值 (GMT)。如果您仅想要跟踪时间,而非日期,使用此函数,而不是 NOW 函数。 |
TIMEVALUE | 返回没有日期的当地时间值,例如工作时间。 |
TODAY | 将当前日期返回为日期数据类型。 |
WEEKDAY | 返回指定日期是周几,用 1 表示周日,2 表示周一,以此类推,7 表示周六。 |
YEAR | 以给定日期的数字格式返回四位数字表示的年份。 |
逻辑函数:
函数 | 描述 |
AND | 果所有的值均为真,则返回 TRUE(真)响应;如果一个或多个值为假,则返回 FALSE(假)响应。 |
BLANKVALUE | 确定表达式是否有值,如果没有值,则返回替代表达式。如果表达式有值,则返回表达式的值。 |
CASE | 根据一系列值检查一个给定表达式。如果表达式等于其中一个值,则返回相应结果。如果它不等于任何值,则返回else_result。 |
IF | 确定表达式为真或为假。如果为真则返回一个给定值,如果为假则返回另一个值。 |
ISBLANK | 判断表达式是否具有值,如果没有值则返回 TRUE(真)。如果它包含一个值,则该函数返回 FALSE(假)。 |
ISCLONE | 查看记录是否为另一个记录的副本,且如果是副本则返回 TRUE。反之,返回 FALSE(假)。 |
ISNEW | 在创建新记录的过程中检查公式是否正在运行,如果是,则返回 TRUE(真)。如果正在更新现有的记录,则该函数返回 FALSE(假)。 |
ISNULL | 确定表达式是否为空(空白),如果是则返回 TRUE(真)。如果它包含一个值,则该函数返回 FALSE(假)。 重要:在新公式中使用 ISBLANK 替代 ISNULL。ISBLANK 与 ISNULL 功能相同,但还支持文本字段。Salesforce 将继续支持 ISNULL,您不需要更改任何现有公式。 |
ISNUMBER | 确定文本值是否为数字,如果是则返回 TRUE(真)。反之,返回 FALSE(假)。 |
NOT | 对于 TRUE(真)返回 FALSE(假),对于 FALSE(假)返回 TRUE(真)。 |
NULLVALUE | 确定一个表达式是否为空(空白),如果为空则返回一个置换表达式。如果表达式不为空,则返回表达式的值。 重要:在新公式中使用 BLANKVALUE 替代 NULLVALUE。BLANKVALUE 与 NULLVALUE 功能相同,但还支持文本字段。Salesforce 继续支持 NULLVALUE,您不需要更改现有公式。 |
OR | 确定表达式为真或为假。如果任何表达式为真,则返回 TRUE(真)。如果所有表达式均为假,则返回 FALSE(假)。 |
PRIORVALUE | 返回字段的上一个值。 |
数字函数:
函数 | 描述 |
ABS(绝对值) | 计算一个数字的绝对值。数字的绝对值是不含正、负号的数字。 |
CEILING | 将数字向上四舍五入为最接近的整数;如果是负数,避免四舍五入为零。 |
EXP | 返回一个值,该值等于所指定数字的 e 幂。 |
FLOOR | 返回向上舍入为最接近整数的数字;如果是负数,舍入为零。 |
LN | 返回一个指定数值的自然对数。自然对数以常数 e(值为 2.71828182845904)为底。 |
LOG | 返回数字以 10 为底的对数。 |
MAX | 返回一系列数字中的最大数字。 |
MCEILING | 将数字向上四舍五入为最接近的整数;如果是负数,四舍五入为零。 |
MFLOOR | 将数字向下四舍五入为最接近的整数;如果是负数,避免四舍五入为零。 |
MIN | 返回一系列数字中的最小数字。 |
MOD | 返回一个数字除以指定除数后的余数。 |
ROUND | 返回与所指定的数字最接近的一个数字,并通过指定的位数来约束新数字。 |
SQRT | 返回给定数字的正平方根。 |
文本函数:
函数 | 描述 |
BEGINS | 确定文本是否以特定字符开头,如果是则返回 TRUE(真)。如果不是,则返回 FALSE。 |
BR | 在文本字符串中插入一个换行符。 |
CASESAFEID | 将 15 个字符的 ID 转换成区分大小写的 18 个字符 ID。 |
CONTAINS | 比较两个文本参数,如果第一个参数包含第二个参数,则返回 TRUE(真)。如果不包含,则返回 FALSE(假)。 |
FIND | 返回某个字符串在文本字符串内的位置(以数字形式表示)。 |
GETSESSIONID | 返回用户的会话 ID。 |
HTMLENCODE | 通过将 HTML 中保留的字符(如大于号 (>))更换为同等的 HTML 实体(如 >)编码文本和合并字段值以在 HTML 中使用。 |
HYPERLINK | 从指定文本创建一个到可链接的指定 URL 的链接。 |
IMAGE | 插入具有备用文本和高度与宽度规格的图像。 |
INCLUDES | 决定多选选项列表字段中选择的任何值是否等于您所指定的文本文字。 |
ISPICKVAL | 确定选项列表字段的值是否等于所指定的文本文字。 |
JSENCODE | 通过在不安全 JavaScript 字符(如单引号 ('))前插入转义符(如反斜线 (\))编码文本和合并字段值以在 JavaScript 中使用。 |
JSINHTMLENCODE | 通过在不安全 JavaScript 字符前插入转义符并把 HTML 中保留的字符更换为同等的 HTML 实体,编码文本和合并字段值以在 HTML 标记内的 JavaScript 中使用。JSINHTMLENCODE(someValue) 是一个相当于 JSENCODE(HTMLENCODE((someValue)) 的常规函数。即 JSINHTMLENCODE 会对 someValue 进行编码(使用 HTMLENCODE)并使用 JSENCODE 对结果进行编码。 |
LEFT | 返回从文本字符串开头算起的指定数量的字符。 |
LEN | 返回指定的文本字符串中所含的字符数。 |
LOWER | 将指定文本字符串中的所有字母转换为小写。不是字母的任何字符不受此函数的影响。如果提供区域则应用区域规则。 |
LPAD | 将指定的字符插入文本字符串的左侧。 |
MID | 从文本字符串中间返回从给定的起始位置算起的指定数量的字符。 |
RIGHT | 返回从文本字符串右边算起的指定数量的字符。 |
RPAD | 将指定的字符插入文本字符串的右侧。 |
SUBSTITUTE | 用新文本替换文本字符串中的旧文本。 |
TEXT | 在使用公式的任何地方将百分比、数字、日期、日期/时间或货币类型字段转换为文本。另外,还将选项列表值转换为批准规则、批准步骤规则、工作流规则、升级规则、分配规则、自动响应规则、验证规则、公式字段、字段更新和自定义按钮及链接中的文本。 |
TRIM | 删除文本字符串开头和末尾处的空格和制表符。 |
UPPER | 将指定文本字符串中的所有字母转换为大写。不是字母的任何字符不受此函数的影响。如果提供区域则应用区域规则。 |
URLENCODE | 通过将 URL 中的非法字符(如空格)更换为代表这些字符的代码(在 RFC 3986,统一资源标识符 (URI) 中定义)编码文本和合并字段值以在 URL 中使用:一般语法。例如,以 %20 替换空格,以 %21 替换惊叹号。 |
VALUE | 将文本字符串转换为数字。 |
汇总函数:
函数 | 描述 |
PARENTGROUPVAL | 该函数返回指定父分组的值。“父”分组是在含有公式的级别以上的任何级别。您只能在报表的自定义汇总公式和分组级别使用此功能,而不能在汇总级别使用。 |
该函数返回指定先前分组的值。“先前”分组是指在报表中之前出现的分组。选择分组级别和增量。增量是在当前汇总之前的列数或行数。默认设置为 1;最大为 12。您只能在报表的自定义汇总公式和分组级别使用此功能,而不能在汇总级别使用。 |
高级函数:
函数 | 描述 |
CURRENCYRATE | 对于指定币种 ISO 代码,返回企业币种的汇率。如果币种无效,返回 1.0。 |
GETRECORDIDS | 以记录 ID 形式返回列表(如列表视图或相关列表)中选定记录的字符串数组。 |
IMAGEPROXYURL | 安全检索外部图像,并阻止未经授权地请求用户凭据。 |
INCLUDE | 返回 S-Control 代码片断中的内容。使用此函数可以在许多 S-Control 中重复使用常用代码。 |
ISCHANGED | 将字段的值与上一个值相比较,如果二者不相等,则该函数返回 TRUE(真)。如果二者相等,则该函数返回 FALSE(假)。 |
JUNCTIONIDLIST | 根据提供的 ID,返回 JunctionIDList。 |
LINKTO | 以链接(href 和链接标志)形式返回 Custom S-Control 或 Salesforce 页面的相对 URL。 |
预测 | 根据指定的记录 ID 或字段及其值的列表,为记录返回 Einstein Discovery 预测。 |
REGEX | 将文本字段与正则表达式进行比较,如果匹配则返回 TRUE(真)。反之,返回 FALSE(假)。正则表达式是一个字符串,它根据一定语法规则描述字符串的格式。 |
REQUIRESCRIPT | 返回一个脚本标记,其中包含所指定 URL 的源代码。在引用 Lightning 平台 AJAX Toolkit 或其他 JavaScript 工具包时,可以使用此函数。 |
URLFOR | 返回操作、S-Control、Visualforce 页或 Visualforce 页中静态资源归档中文件的相对 URL。 |
VLOOKUP | 在自定义对象上查找相关值并返回,与 VLOOKUP() Excel 函数类似。 |