Loading
利用代码增强 Salesforce
重新计算 Apex 受管共享

重新计算 Apex 受管共享

开发人员可以为特定自定义对象编写重新计算 Apex 受管共享的 Apex 类。

所需的 Edition

适用于:Salesforce Classic
适用于:ProfessionalEnterprisePerformanceUnlimitedDeveloperDatabase.com Edition
所需用户权限
关联 Apex 受管共享重新计算类: 作者 Apex
关联 Apex 受管共享重新计算类:

作者 Apex

管理共享

重要
重要 当封装自定义对象时,应意识到封装也包含相关联的 Apex 共享重新计算,并可能阻止安装软件包。

开发人员可以为特定自定义对象编写重新计算 Apex 受管共享的 Apex 类。您可在自定义对象页面上将这些类与自定义对象相关联,当锁定问题阻止 Apex 按应用程序逻辑定义那样授予用户访问权限时执行这些类。Apex 共享重新计算对于解决因编码错误造成的可见性问题也有帮助。例如,如果开发者纠正阻止用户访问他们应当看到的记录这样的编码错误,纠正可能只影响代码更新后创建的记录。为了确保纠正也应用至已有记录,开发者可以运行 Apex 共享重新计算以验证所有记录上的共享。

您可以从自定义对象的详细页面运行 Apex 共享重新计算。您也可以使用 Database.executeBatch 方法以编程方式运行它们。此外,每次更新自定义对象的组织级别的共享默认访问级别时,Salesforce 自动运行为自定义对象定义的 Apex 重新计算类。

备注
备注

当对象的组织级别的共享默认访问级别发生变化时,Salesforce 自动为对象上的所有记录重新计算共享。重新计算包含共享规则授予的访问权限。此外,如果它们授予的访问权限是冗余的,则所有共享类型都被移除。例如,当对象的共享模式从“私人”更改为“公共只读”时,将删除向用户授予只读访问权的手动共享。

  1. 从自定义对象的管理设置,转至 Apex 共享重新计算。
  2. 选择为此对象重新计算 Apex 共享的 Apex 类。您选择的类必须实施 Database.Batchable 接口。您无法将相同的 Apex 类多次与相同的自定义对象相关联。
  3. 单击保存

有关创建 Apex 受管共享和重新计算类的信息,请参阅Apex 开发人员指南

将 Apex 受管共享重新计算类与自定义对象相关联:

若要运行 Apex 共享重新计算,从自定义对象的管理设置,转至“Apex 共享重新计算”,然后单击新建

当使用 Apex 共享重新计算时, 请注意以下事项:

  • 扩展共享重新计算的 Apex 代码可以处理最多五百万个记录。如果此 Apex 代码影响超过五百万个记录,作业立即失败。
  • 您可以监视 Apex 作业队列中 Apex 共享重新计算的状态。
  • 对于每个自定义对象,您最多可以关联五个 Apex 共享重新计算。
  • 您不能将 Apex 共享重新计算与标准对象相关联。
 
正在加载
Salesforce Help | Article