自定义设置

介绍

与具有基于它们的记录的自定义对象不同,自定义设置允许你在整个组织中使用自定义数据集,或者根据自定义条件区分特定用户或配置文件。这意味着,例如,管理员可以编辑层次结构自定义设置以停用单个用户或配置文件的工作流程/验证规则,而无需为整个组织关闭它们(请参阅上面的使用层次结构自定义设置以禁用工作流程/验证规则示例)。

通常需要在以下情况下暂时禁用验证规则:

  • 代码正在更新旧记录,这些记录在激活验证规则之前最后编辑,因此不符合较新规则的标准。
  • 代码插入的新记录没有验证规则标准所要求的值。

通常需要在以下情况下暂时禁用工作流程规则:

  • 它们会触发电子邮件警报或字段更新,这会覆盖或干扰你对记录所做的更改。

使用自定义设置授予管理员对代码的一些声明性控制,因此许多用例中的一个是,在使用时,它们可以使得不必部署代码以禁用触发器(请参阅上面的使用层次结构自定义设置禁用 Apex 代码示例)。

开发人员的一个主要好处是自定义设置的数据在应用程序缓存中公开,这样可以实现高效访问,而无需重复查询数据库。然后,公式字段,验证规则,流,Apex 和 SOAP API 可以使用此数据 - 请参阅 Salesforce 文档

此处记录了自定义设置的限制和注意事项。

列出自定义设置

也可以创建列表自定义设置,常见用例包括存储两个字母的州缩写,国际拨号前缀和产品的目录号。但是,Salesforce 现在正在推广使用自定义元数据类型,而不是列表自定义设置。

当你创建新的自定义设置时,将显示以下消息

提示:使用自定义元数据类型进行应用程序配置
如果你正在考虑使用列表自定义设置,请考虑使用自定义元数据类型。与列表自定义设置不同,你可以使用包或元数据 API 工具迁移自定义元数据类型的记录。

自定义元数据类型与列表自定义设置相比具有额外的好处,如本答案中所述 。根据 CMD 的首席开发人员的说法 “自定义元数据类型的计划要多于类固醇的自定义设置。”