この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

CustomPermissionDependency

一方のカスタム権限でもう一方のカスタム権限の有効化が���要になる、2 つのカスタム権限間の連動関係を表します。このオブジェクトは、API バージョン 32.0 以降で使用できます。

サポートされているコール

describeLayout()describeSObjects()query()retrieve()

特別なアクセスルール

Spring ’20 以降、このオブジェクトにアクセスできるのは、「設定・定義を参照する」権限を持つユーザのみとなります。

項目

項目名 詳細
CustomPermissionId
reference
プロパティ
Filter、Group、Sort
説明
RequiredCustomPermissionId で指定された権限を必要とするカスタム権限の ID。
これはリレーション項目です。
リレーション名
CustomPermission
リレーション種別
Lookup
参照先
CustomPermission
RequiredCustomPermissionId
reference
プロパティ
Filter、Group、Sort
説明
CustomPermissionId が有効な場合に有効化されている必要があるカスタム権限の ID。
これはリレーション項目です。
リレーション名
RequiredCustomPermission
リレーション種別
Lookup
参照先
CustomPermission

使用方法

次の Apex クラスには、特定のカスタム権限 ID に必要なすべてのカスタム権限の ID を返すメソッドが含まれます。このクラスを使用するには、クラスを組織に保存します。
1public class CustomPermissionUtil {
2   public String[] getAllRequiredCustomPermissions(String customPermId) {
3      return getAllRequiredHelper(new String[]{customPermId});
4   }
5   
6   private String[] getAllRequiredHelper(String[] customPermIds) {
7      CustomPermissionDependency[] requiredPerms = [SELECT RequiredCustomPermissionId
8                                                    FROM CustomPermissionDependency
9                                                    WHERE CustomPermissionId
10                                                    IN :customPermIds];
11      String[] requiredPermIds = new String[]{};
12      for (CustomPermissionDependency cpd : requiredPerms) {
13         requiredPermIds.add(cpd.RequiredCustomPermissionId);
14      }
15      if (requiredPermIds.size() > 0) {
16         customPermIds.addall(getAllRequiredHelper(requiredPermIds));
17         return customPermIds;
18      } else {
19         return customPermIds;
20      }
21   }
22}
Apex クラスの使用法についての詳細は『Apex 開発者ガイド』を参照してください。