重新计算 Apex 受管共享
开发人员可以为特定自定义对象编写重新计算 Apex 受管共享的 Apex 类。
所需的 Edition
| 适用于:Salesforce Classic |
| 适用于:Professional、Enterprise、Performance、Unlimited、Developer 和 Database.com Edition |
| 所需用户权限 | |
|---|---|
| 关联 Apex 受管共享重新计算类: | 作者 Apex |
| 关联 Apex 受管共享重新计算类: | 作者 Apex 或 管理共享 |
重要 当封装自定义对象时,应意识到封装也包含相关联的 Apex 共享重新计算,并可能阻止安装软件包。
开发人员可以为特定自定义对象编写重新计算 Apex 受管共享的 Apex 类。您可在自定义对象页面上将这些类与自定义对象相关联,当锁定问题阻止 Apex 按应用程序逻辑定义那样授予用户访问权限时执行这些类。Apex 共享重新计算对于解决因编码错误造成的可见性问题也有帮助。例如,如果开发者纠正阻止用户访问他们应当看到的记录这样的编码错误,纠正可能只影响代码更新后创建的记录。为了确保纠正也应用至已有记录,开发者可以运行 Apex 共享重新计算以验证所有记录上的共享。
您可以从自定义对象的详细页面运行 Apex 共享重新计算。您也可以使用 Database.executeBatch 方法以编程方式运行它们。此外,每次更新自定义对象的组织级别的共享默认访问级别时,Salesforce 自动运行为自定义对象定义的 Apex 重新计算类。
备注
当对象的组织级别的共享默认访问级别发生变化时,Salesforce 自动为对象上的所有记录重新计算共享。重新计算包含共享规则授予的访问权限。此外,如果它们授予的访问权限是冗余的,则所有共享类型都被移除。例如,当对象的共享模式从“私人”更改为“公共只读”时,将删除向用户授予只读访问权的手动共享。
- 从自定义对象的管理设置,转至 Apex 共享重新计算。
-
选择为此对象重新计算 Apex 共享的 Apex 类。您选择的类必须实施
Database.Batchable接口。您无法将相同的 Apex 类多次与相同的自定义对象相关联。 - 单击保存。
有关创建 Apex 受管共享和重新计算类的信息,请参阅Apex 开发人员指南。
若要运行 Apex 共享重新计算,从自定义对象的管理设置,转至“Apex 共享重新计算”,然后单击新建。
当使用 Apex 共享重新计算时, 请注意以下事项:
- 扩展共享重新计算的 Apex 代码可以处理最多五百万个记录。如果此 Apex 代码影响超过五百万个记录,作业立即失败。
- 您可以监视 Apex 作业队列中 Apex 共享重新计算的状态。
- 对于每个自定义对象,您最多可以关联五个 Apex 共享重新计算。
- 您不能将 Apex 共享重新计算与标准对象相关联。
另请参阅:
本文章是否解决您的问题?
请与我们共享您的想法,以便我们进行改进!
