本篇参考:

https://help.salesforce.com/s/articleView?id=sf.customize_functions_begins.htm&type=5

https://help.salesforce.com/s/articleView?id=sf.flow_ref_operators_condition.htm&type=5

虽然做了salesforce开发也有一些年,但是因为salesforce的生态过于庞大,平时用的有一些局限性并且很多可能直接基于既有经验进行开发,然而既有经验有一些可能因为概念模糊或者其他原因导致错误,从而引发一些不必要的低级错误。本篇就是这样的一个场景。 在查看后续的内容以前,先问自己两个问题:

1. BEGINS / CONTAINS 函数是否区分大小写?

2. Starts With / Contains 操作符是否区分大小写?

接下来,我们以两个Flow的例子来进行展开。 这里创建两个Queue,我们看到他们一个大写,一个小写。

我们创建一个Flow,Flow中创建两个formula字段,通过BEGINS函数来判断。通过Decision组件根据Sales和Service区别来更新Description字段,内容为 Owner is Sales/Service Queue.

我们创建了两条数据,一个是Owner是 Sales Queue,一个是 service queue。

我们对Flow进行测试。我们发现Sales 的分支没有执行update, service的分支执行了update。

之所以出现这种事情,原因就是BEGINS函数区分大小写,因为Queue的Name是Sales,函数用的是 sales,所以导致这个Formula的值是false,导致了后续的逻辑没进去。

我们对这个进行一下优化,可以使用 LOWER或者UPPER函数,这样就可以避免了大小写的问题了。

重新Debug了一下,结果是正常的。

接下来我们看一下操作符。虽然BEGINS函数区分大小写,但是如果使用Flow提供的Starts With的情况下,是不区分大小写的。这里也是我之前基于经验的点。我将两者进行了混淆,认为 Starts With不区分大小写,BEGINS函数应该也不区分。我们在做一个Flow,如果Description以小写的owner开始,则将Description更新一个固定的值: Updated to fixed value.

我们将这两个Flow启用,然后看一下效果。我们看到当Lead Owner变成 Sales Queue以后,第一个Flow执行了逻辑,将Description变成了 Owner is Sales Queue,随后第二个Flow执行,因为第二个flow的Starts With函数不区分大小写,所以又将Description变成了Updated to fixed value。

总结:通过这个demo,我们可以看到BEGINS/CONTAINS函数是区分大小写的,但是如果我们使用了Salesforce内置的 Starts With/Contains 操作符,则是不区分大小写的。这两者容易混淆,写完以后一定要测试,切勿根据自己的经验盲目自信。篇中有错误的地方欢迎指出,不懂的欢迎留言。

salesforce零基础学习(一百三十九)Admin篇之Begins/Contains/Starts With 是否区分大小写的更多相关文章

  1. salesforce 零基础学习(三十九) soql函数以及常量

    在salesforce中,我们做SOQL查询时,往往需要用到计算式,比如求和,求平均值,或者过滤数据时,往往需要通过时间日期过滤,SOQL已经封装了很多的函数,可以更加方便我们的sql查询而不需要自己 ...

  2. salesforce 零基础学习(三十)工具篇:Debug Log小工具

    开发中查看log日志是必不可少的,salesforce自带的效果显示效果不佳,大概显示效果如下所示: chrome商城提供了apex debug log良好的插件,使debug log信息更好显示.假 ...

  3. salesforce零基础学习(八十九)使用 input type=file 以及RemoteAction方式上传附件

    在classic环境中,salesforce提供了<apex:inputFile>标签用来实现附件的上传以及内容获取.salesforce 零基础学习(二十四)解析csv格式内容中有类似的 ...

  4. salesforce 零基础学习(三十六)通过Process Builder以及Apex代码实现锁定记录( Lock Record)

    上一篇内容是通过Process Builder和Approval Processes实现锁定记录的功能,有的时候,往往锁定一条记录需要很多的限制条件,如果通过Approval Processes的条件 ...

  5. salesforce 零基础学习(六十九)当新增/修改一条记录以后发生了什么(适合初学者)

    salesforce开发中,我们会对object进行很多的操作,比如对object设置字段的必填性唯一性等,设置validation rule实现一下相关的字段的逻辑校验,设置workflow实现某个 ...

  6. salesforce零基础学习(七十九)简单排序浅谈 篇一

    我们在程序中经常需要对数据列表进行排序,有时候使用SOQL的order by 不一定能完全符合需求,需要对数据进行排序,排序可以有多种方式,不同的方式针对不同的场景.篇一只是简单的描述一下选择排序,插 ...

  7. salesforce 零基础学习(五十九)apex:param使用以及相关的疑惑

    做web项目难免要从一个页面传参数,解析参数中的值进行相关处理以后跳转到其他页面,VF中也不例外.使用传参的标签为apex:param. apex:param标签不可以单独使用,需要作为子标签嵌套在相 ...

  8. salesforce 零基础学习(三十八)Translate 的使用(国际化处理)

    本篇参考:http://resources.docs.salesforce.com/200/17/en-us/sfdc/pdf/salesforce_workbench_cheatsheet.pdf ...

  9. salesforce 零基础学习(三十五) 通过Process Builder和Approval Processes锁定记录(Lock Record)

    有的时候我们可能有这样的需求,当某个字段为特定的值情况下,便锁定此条记录,仅允许Profile为System Admin的用户修改或者解锁,其他的用户只能查看此条记录,不能修改此条记录,这种情况下我们 ...

  10. salesforce 零基础学习(四十九)自定义列表分页之使用Pagination实现分页效果 ※※※

    上篇内容为Pagination基类的封装,此篇接上篇内容描述如何调用Pagination基类. 首先先创建一个sObject,起名Company info,此object字段信息如下: 为了国际化考虑 ...

随机推荐

  1. 为 Hugging Face 用户带来无服务器 GPU 推理服务

    今天,我们非常兴奋地宣布 部署到 Cloudflare Workers AI 功能正式上线,这是 Hugging Face Hub 平台上的一项新服务,它使得通过 Cloudflare 边缘数据中心部 ...

  2. 直播回顾 | 点击率提升400%,Ta是怎么做到的?

    Discovery第18期直播已于3月30日圆满结束,本期直播邀请天眼查做客直播间,从天眼查与华为Push用户增长服务合作历程切入,聚焦用户增长,分享提升应用活跃度和渠道ROI的经验与见解.一起来回顾 ...

  3. centerOS网卡ens33没有inet报错failed tostart LSB: Bring up/down

    没有inet 错误 cd /etc/sysconfig/network-scripts/ vi ifcfg-ens33 添加  HWADDR=<mac_of_ens33> service ...

  4. Java面试题总结:基础及语法篇169道

    下载链接:https://gitee.com/ItBoShao/wechat_applet/blob/master/Java面试题总结:基础及语法篇169道.pdf

  5. jenkins 持续集成和交付——开篇(一)

    前言 因为以前就很想看下jenkins了,平时工作中也使用,主要是写脚本,但是jenkins 主要还是说运维部门来搞定的,因为公司安全部门认为程序员不应该去接触运维的东西,但是上次面试问了下,准备把这 ...

  6. next.js app目录 i18n国际化简单实现

    最近在用next写一个多语言的项目,找了好久没找到简单实现的教程,实践起来感觉都比较复杂,最后终于是在官方文档找到了,结合网上找到的代码demo,终于实现了,在这里简单总结一下. 此教程适用于比较简单 ...

  7. Oracle 与当前日期有关的内容

    Oracle 与当前日期有关的内容 求当前日期是周几: 大概就是下面这种方法 to_char(date,'D') Select to_char(date,'ss') from dual取当前时间秒部分 ...

  8. Java编程技巧之单元测试用例编写流程

    简介: 立足于"如何来编写单元测试用例",让大家"有章可循",快速编写出单元测试用例. 作者 | 常意来源 | 阿里技术公众号 温馨提示:本文较长,同学们可收藏 ...

  9. Dapr 在阿里云原生的实践

    简介: Faas 场景下,比较吸引用户的是成本和研发效率,成本主要通过按需分配和极致的弹性效率来达成.而应用开发者期望通过 FaaS 提供多语言的编程环境,提升研发效率,包括启动时间.发布时间.开发的 ...

  10. 拒绝双写:巧用Lindorm数据订阅

    ​简介: 本文介绍了双写场景的一致性问题,详细介绍了三种解决方案,并针对DB->Binlog->Kafka方案给出了Lindorm数据订阅的最佳实践 双写问题介绍 双写问题(Dual Wr ...