salesforce零基础学习(一百三十二)Flow新功能: Custom Error

salesforce,基础,学习,一百,三十二,flow,功能,custom,error · 浏览次数 : 12

小编点评

## Custom Error 功能介绍 Custom Error 是 Salesforce 中用于自定义异常处理的功能。它可以用于校验数据是否满足特定条件,并显示错误消息。 **Custom Error 的优势:** * 支持 Record-Based Trigger,其他类型的 Flow 不支持。 * 可以显示在多个字段上,只需点击 Add Error Message 按钮即可。 * 与 Validation Rule 功能相似,但可自定义错误信息。 * 不支持 compound 字段。 **使用 Custom Error 的场景:** * 当需要校验数据是否满足特定条件时。 * 当需要在多个字段上显示错误信息时。 * 当需要自定义错误信息时。 **与 Validation Rule 的比较:** | 特征 | Custom Error | Validation Rule | |---|---|---| | 支持类型 | Record-Based Trigger | Other types of Triggers | | 错误信息显示方式 | 多字段 | 单个字段 | | 支持字段数量 | 无限制 | 只能显示一个 | | 支持 compound 字段 | 不支持 | 支持 |

正文

本篇参考:

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

https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_triggers_order_of_execution.htm

我们针对这些次salesforce的release note可以看出来,salesforce针对Flow不断地发力,支持了越来越多的功能并且替代了Process Builder以及Workflow,本次release同样有很大的惊喜,支持了类似Validation Rule的功能,即Custom Error。

一. Custom Error简单介绍

我们通过下方的gif可以进行更好的理解: 下方的gif在flow中创建了两个custom error,分别校验House表的State / Zip需要一个必填以及 当Price满足指定金额以后要求上传图片。我们可以看一下下方运行的效果。

 这里对Custom Error功能进行一些考虑。

1. Custom Error只支持 Record-Based Trigger,其他类型的Flow不支持。

2. 和传统的Validation Rule不同的是,一个Custom Error可以显示在多个字段上,只需要在Custom Error功能中点击 Add Error Message按钮即可,这种设计很方便,因为如果使用Validation Rule实现情况下需要创建多个VR才可以搞定。

3. 和Validation Rule相同的是,同一个字段当前只能显示一个错误信息,当然,每个字段都可以有一个error信息。

4. 不支持compound 字段。

5. 功能相当于apex中的addError。

二. 使用Validation Rule还是使用Flow Custom Error?

既然Custom Error功能和Validation Rule如此相似,我们是否就可以理解成Flow Custom Error可以替换掉Validation Rule或者说什么场景下用哪个呢?以下是我的个人见解,不一定完全正确,可以相互讨论。

我的答案是Flow Custom Error是不会取代Validation Rule的,因为实际项目中需要考虑以下几点。

1. 当前表的业务复杂度以及后续的可扩展性。我们知道Flow在salesforce中执行的顺序是早于before trigger的,参考参考链接中的 order of execution,如果当前表的功能和业务逻辑较为复杂,一个字段在trigger中做了一些初期话处理,我们可以在validation rule对此字段进行逻辑校验会更准确,如果提前到before trigger,可能会引发一些不必要的问题。

2. Flow可以设置执行顺序,如果当前表的Flow特别多,有一些用于字段初期化设置,有一些用于校验, 设置的order顺序也可能影响结果。

当然并不是说Flow的Custom Error不好,以下功能可以考虑 Flow Custom Error。

1. 当前的表业务功能较少,后续功能也很少会用到apex trigger做一下逻辑操作(这个是前提,因为我们需要了解)

2. 校验针对多个字段同样的校验逻辑和错误信息,使用flow会省事一些。

3. 你是一个管理员,你不会写apex代码,但是当前的校验逻辑较为复杂,validation rule无法实现,你可以考虑使用Flow Custom Error来实现。

总结:本篇简单介绍了一下Custom Error的使用,感兴趣的小伙伴可以查看上方参考链接中的官方文档描述。demo中有一个比较怪的地方,就是我用了一个flow来实现了两个错误场景的判断,设置Decision以后Path只能同一个场景执行一个,所以尽管数据两个validation都触发了,但是每次只能显示一个报错,实际场景中可能需要拆分成两个Flow。另外此功能目前sandbox 可以使用,需要10月正式release以后,production以及dev edition才可以使用。篇中有错误地方欢迎指出,有不懂欢迎留言。

与salesforce零基础学习(一百三十二)Flow新功能: Custom Error相似的内容:

salesforce零基础学习(一百三十二)Flow新功能: Custom Error

本篇参考: https://help.salesforce.com/s/articleView?id=sf.flow_ref_elements_custom_error.htm&type=5 https://developer.salesforce.com/docs/atlas.en-us.apex

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

本篇参考: https://help.salesforce.com/s/articleView?id=sf.customize_functions_begins.htm&type=5 https://help.salesforce.com/s/articleView?id=sf.flow_ref_o

salesforce零基础学习(一百三十一)Validation 一次的bypass设计

本篇参考: https://admin.salesforce.com/blog/2022/how-i-solved-it-bypass-validation-rules-in-flows 背景:作为系统的全局考虑,我们在设计validation rule / flow / trigger时,往往会使

salesforce零基础学习(一百二十二)通过 excel / csv创建 object

本篇参考: https://help.salesforce.com/s/articleView?id=sf.dev_objectcreate_task_lex_from_spreadsheet.htm&type=5 背景:当客户给我们N个表的数据,告诉我们需要创建一些新表,然后导入这些数据的时候,我

salesforce零基础学习(一百二十七)Custom Metadata Type 篇二

本篇参考: salesforce零基础学习(一百一十一)custom metadata type数据获取方式更新 https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_cu

salesforce零基础学习(一百三十八)零碎知识点小总结(十)

本篇参考: https://help.salesforce.com/s/articleView?id=release-notes.rn_apex_5level_SOQLqueries.htm&release=250&type=5 https://developer.salesforce.com/to

salesforce零基础学习(一百三十七)零碎知识点小总结(九)

本篇参考: https://help.salesforce.com/s/articleView?id=release-notes.rn_lab_conditional_visibiliy_tab.htm&release=250&type=5 https://help.salesforce.com/s

salesforce零基础学习(一百三十三)ListView的button思考

本篇参考: salesforce零基础学习(九十五)lightning out salesforce零基础学习(一百一十)list button实现的一些有趣事情 https://help.salesforce.com/s/articleView?language=en_US&id=sf.mass_

salesforce零基础学习(一百三十)Report 学习进阶篇

本篇参考: https://help.salesforce.com/s/articleView?id=sf.reports_summary_functions_about.htm&type=5 https://www.youtube.com/watch?v=bjgZTgYe_84 在Salesfor

salesforce零基础学习(一百二十)快去迁移你的代码中的 Alert / Confirm 以及 Prompt吧

本篇参考: https://developer.salesforce.com/blogs/2022/01/preparing-your-components-for-the-removal-of-alert-confirm-prompt https://help.salesforce.com/s/a