学习目标
- 描述什么是文本类型。
- 将文本值转换为其他数据类型或从其他数据类
- 描述使用文本类型的公式的用例。
- 使用文本类型创建一个公式。
公式中的文本介绍
有时,让您的组织中的信息一目了然,最简单的方法就是将其显示为文本。使用文本返回类型的公式可以连接文本值,将数字和日期转换为文本,或者有条件地显示文本。
你可以做的最简单的事情是将两个文本字符串与运算符&连接起来。例如,您可以通过组合名字和姓氏来显示联系人的全名。
FirstName & " " & LastName
常见的文本函数和操作符
Salesforce带有许多功能和操作员,可以使用公式中的文本进行工作。使用公式,可以将其他数据类型转换为文本并将文本值连接在一起,或在文本字段中搜索特定的字符串。
转换为文本值和从文本值转换
TEXT()将百分比,数字,日期,日期/时间,选取列表或货币字段转换为文本。 TEXT()返回没有任何格式,逗号或货币符号的输出。例如,TEXT(percent_value),如果percent_value设置为30%,则返回0.3。
当TEXT()收到日期或日期/时间值时,它返回一个带有标准日期或日期/时间格式的字符串。例如,如果date_value对应于2015年3月17日,则TEXT(date_value)返回2015-03-17。对于datetime_value 2015年3月17日下午5点,TEXT(datetime_value)返回2015-03-17 17:00:00Z。 Z表示GMT-TEXT()返回的时间总是返回格林尼治标准时间的日期/时间值,而不是当前用户或组织的时区。
您也可以使用VALUE()以另一种方式转换值,该值使用Text值并返回一个Number。如果VALUE()接收到的值不是一个数字,包括小数点或减号(负号)以外的任何特殊字符,则会显示#Error!例如,如果text_value是$ 500,则VALUE(text_value)将返回一个错误。如果text_value为空,则VALUE()也会返回错误。
其他文字功能
如果文本以compare_text开头,则BEGINS(text,compare_text)返回true。如果compare_text是文本中的任何位置,则CONTAINS(text,compare_text)将返回true。这些功能对于根据文本字段有条件地显示信息很有用。
函数SUBSTITUTE(text,old_text,new_text)用new_text替换old_text的任何实例,就像文本编辑器中的find和replace函数一样。
Salesforce包含其他用于处理公式中文本和格式化的函数。有关更多信息,请参阅Salesforce联机帮助中的公式运算符和函数。
在公式中使用文本类型
分配客户评级
通常,使用文本返回类型的公式显示很难量化的信息。例如,您可以使用文本公式来确定铅是热,暖还是冷。我们将编写一个既使用条件逻辑又使用ISPICKVAL()函数来返回主角评分的公式。
在这个例子中,我们根据其收入,国家和来源对潜在客户进行评估。
- Hot—AnnualRevenue大于100万美元,Country是美国,LeadSource是合作伙伴推荐。
- Warm—AnnualRevenue 大于100万美元,Country是美国,LeadSource是购买清单或Web。
- Cold—帐户不符合任何这些条件。
此公式使用一系列IF(),AND()和OR()语句来检查这些条件,并使用ISPICKVAL()评估Lead Source字段。该公式还使用CASE()语句来检查国家/地区。如果该国是美国,美国,美国或美国,则CASE()声明将返回美国。否则,它返回NA(不适用)。
选择树帮助我们更容易地遵循公式的逻辑流程。
- 在安装程序中,使用快速查找框来查找 Object Manager.
- 点击 然后单 New.
- 选择Formula 并单击 Next.
- 在 Field Label, 输入 Rating. 字段名称自动填充。
- 选择 Text 并单击 Next.
- 输入以下公式:
IF( AnnualRevenue > 1000000 && CONTAINS(CASE(Country, "United States", "US", "America", "US", "USA", "US", "US", "US", "NA"), "US"), IF( ISPICKVAL(LeadSource, "Partner Referral"), "Hot", IF( ISPICKVAL(LeadSource, "PurchasedList") || ISPICKVAL(LeadSource, "Web"), "Warm", "Cold" ) ), "Cold" )
根据潜在客户的特征,新配方字段评分显示“热”,“热”或“冷”。
用CASE()显示图像
带有文本返回类型的公式对于不仅仅是文本而言是有用的 – 您也可以使用它们来显示图像。图像使信息一目了然,抓住用户的眼睛不仅仅是文本。让我们编写一个公式,使用您刚刚创建的评级字段以图形方式显示潜在客户评分为零星,一星,三星或五颗恒星。
IMAGE()函数最多需要四个参数。 IMAGE(image_url,alternate_text,height,width)以可选的height和width参数指定的尺寸显示由image_url指定的图像。如果图像无法显示,则该功能显示alternate_text。
如果主角评级是
- Hot, 公式显示五颗星
- Warm,公式显示三颗星
- Cold, 公式显示一颗星
如果主角等级为空白,则公式不会显示星号。
使用文本返回类型和名称星级创建公式字段。在高级公式编辑器中,输入:
IMAGE(
CASE(Rating__C,
"Hot", "/img/samples/stars_500.gif",
"Warm", "/img/samples/stars_300.gif",
"Cold", "/img/samples/stars_100.gif",
"/img/samples/stars_000.gif"),
"Unknown")
文本示例
- 此公式使用美国帐户的帐单州/省字段将其分类为北,南,东,西或中央。
IF(ISBLANK(BillingState), "None", IF(CONTAINS("AK:AZ:CA:HA:NV:NM:OR:UT:WA", BillingState), "West", IF(CONTAINS("CO:ID:MT:KS:OK:TX:WY", BillingState), "Central", IF(CONTAINS("CT:ME:MA:NH:NY:PA:RI:VT", BillingState), "East", IF(CONTAINS("AL:AR:DC:DE:FL:GA:KY:LA:MD:MS:NC:NJ:SC:TN:VA:WV", BillingState), "South", IF(CONTAINS("IL:IN:IA:MI:MN:MO:NE:ND:OH:SD:WI", BillingState), "North", "Other"))))))
- 该公式嵌入HYPERLINK()函数的链接。一般来说,HYPERLINK(url,display_text,target)显示一个到display_text的链接。可选的目标参数决定了单击链接时网页的显示方式。如果您将目标保留为空白,则默认情况下链接会在新的浏览器窗口中打开。
HYPERLINK("https://www.salesforce.com", "Salesforce")
- 此公式接受Email字段并使用它来创建一个URL。该公式使用FIND()和SUBSTITUTE()在电子邮件地址中查找@符号,并用www替换它的左侧所有内容。
SUBSTITUTE(Email, LEFT(Email, FIND("@", Email)), "www.")
将值转换为文本。请确保在公式中使用它之前检查一个字段的类型。例如,以前的Salesforce管理员可能已经创建了一个将日期保存为文本值的自定义字段。如果是这种情况,可以使用TEXT()或DATEVALUE()来同时处理文本和日期值。
公式字段帮手
使用助手公式字段是使公式简洁易懂的好方法。辅助字段只做更大计算的一部分,并由结束公式字段引用。您可以使用任何公式类型的帮手公式字段,但现在我们来看一个示例。
假设您要编写名为Case_Category__c的文本公式,该公式根据案件已打开的时间长短显示案件的类别(绿色,黄色或红色)。通常情况下,你可能会写这样的东西。
IF(((NOT(IsClosed)) && (TODAY() - DATEVALUE(CreatedDate) > 20)), "RED",
IF((NOT(IsClosed)) && (TODAY() - DATEVALUE(CreatedDate) > 10), "YELLOW",
"GREEN"))
TODAY() - DATEVALUE(CreatedDate)
IF(((NOT(IsClosed)) && (Case_Age_In_Days__c > 20)), "RED",
IF((NOT(IsClosed)) && (Case_Age_In_Days__c > 10), "YELLOW",
"GREEN"))