SharingRules
Metadata メタデータ型を拡張し、その fullName 項目を継承します。詳細は、Salesforce ヘルプの「共有ルール」を参照してください。
API バージョン 33.0 以���では、組織内のすべての共有ルールの取得、削除、またはリリースが可能です。ワイルドカードもサポートされます。手動共有ルールの取得、削除、リリース、および種別 (所有者、条件、テリトリー、ゲストユーザ) ごとの共有ルールの取得、削除、リリースはできません。
宣言的なメタデータファイルのサフィックスおよびディレクトリの場所
API バージョン 33.0 以降、コンポーネントは sharingRules フォルダに保存され、それらのファイル名は、オブジェクト名にサフィックス .sharingRules を加えた名前と同じになります。条件に基づく共有ルール、所有者に基づく共有ルール、テリトリーに基づく共有ルール、およびゲストユーザの共有ルールは、すべて object.sharingRule ファイルに含まれます。
API バージョン 33.0 より前では、SharingRules コンポーネントは、対応するオブジェクトディレクトリに保存され、ファイル名はオブジェクト名と同じになります。たとえば、accountSharingRules ディレクトリには取引先共有ルールの Account.sharingRules ファイルが含まれます。カスタムオブジェクトの SharingRules は、customObjectSharingRules ディレクトリに保存されます。このディレクトリには、ObjA__c.sharingRules など、拡張子が .sharingRules のファイルが含まれます。ObjA はカスタムオブジェクト種別の開発者名を指します。
バージョン
SharingRules コンポーネントは API バージョン 24.0 以降で使用できますが、API バージョン 33.0 以降、AccountSharingRules、CampaignSharingRules、CaseSharingRules、ContactSharingRules、LeadSharingRules、OpportunitySharingRules、AccountTerritorySharingRules、CustomObjectSharingRules、および UserSharingRules コンポーネントを使用できなくなります。
API バージョン 33.0 以降は、SharingCriteriaRule、SharingOwnerRule、および SharingTerritoryRule を使用してください。
特別なアクセスルール
Spring ’20 以降、このオブジェクトにアクセスできるのは、「設定・定義を参照する」権限を持つユーザのみとなります。また、このオブジェクトを編集できるのは、「共有の管理」権限を持つユーザのみとなります。
項目
次の情報は、標準オブジェクトとカスタムオブジェクトの共有ルールの実装を理解していることを前提としています。これらの項目についての詳細は、Salesforce ヘルプの「共有設定」を参照してください。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| sharingCriteriaRules | SharingCriteriaRule[] | 条件に基づく共有ルールの配列。API バージョン 33.0 以降で利用できます。 |
| sharingGuestRules | SharingGuestRule[] | ゲストユーザの共有ルールの配列。API バージョン 47.0 以降で利用できます。 |
| sharingOwnerRules | SharingOwnerRule[] | 所有権に基づく共有ルールの配列。API バージョン 33.0 以降で利用できます。 |
| sharingTerritoryRules | SharingTerritoryRule[] | テリトリーに基づく共有ルールの配列。API バージョン 33.0 以降で利用できます。 |
SharingCriteriaRule
条件に基づく共有ルールを定義します。SharingBaseRule を拡張し、そのすべての項目を継承します。API バージョン 33.0 以降で利用できます。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| booleanFilter | string | 共有ルールに指定されている高度な絞り込み条件。 |
| criteriaItems | FilterItem[] | この共有ルールの Boolean 条件の配列。 |
SharingGuestRule
ゲストユーザの共有ルールを定義します。SharingBaseRule を拡張し、accountSettings 以外のすべての項目を継承します。API バージョン 47.0 以降で利用できます。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| booleanFilter | string | 共有ルールに指定されている高度な絞り込み条件。API バージョン 48.0 以降で利用できます。 |
| criteriaItems | FilterItem[] | この共有ルールの Boolean 条件の配列。API バージョン 48.0 以降で利用できます。 |
| includeHVUOwnedRecords | boolean | 必須。大規模コミュニティまたはサイトユーザが所有するレコードが共有レコード含まれるか (true)、否か (false) を示します。��フォルトでは、認証済みユーザ、ゲストユーザ、およびキューが所有するレコードのみが共有ルールに含まれます。この項目のデフォルト値は false です。API バージョン 52.0 以降で利用できます。 |
SharingOwnerRule
所有権に基づく共有ルールを定義します。SharingBaseRule を拡張し、そのすべての項目を継承します。API バージョン 33.0 以降で利用できます。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| sharedFrom | SharedTo | 必須。レコードの所有者を指定します。 |
SharingTerritoryRule
テリトリーに基づく共有ルールを定義します。SharingOwnerRule を拡張し、そのすべての項目を継承します。API バージョン 33.0 以降で利用できます。
AccountSharingRules
取引先の共有ルールを表します。SharingRules メタデータ型を拡張し、その fullName 項目を継承します。API バージョン 32.0 以前でのみ利用できます。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| criteriaBasedRules | AccountCriteriaBasedSharingRule[] | ユーザの条件に基づくルールを定義するリスト。 |
| ownerRules | AccountOwnerSharingRule[] | ユーザのメンバーシップに基づくルールを定義するリスト。 |
CampaignSharingRules
キャンペーンの共有ルールを表します。SharingRules メタデータ型を拡張し、その fullName 項目を継承します。API バージョン 32.0 以前でのみ利用できます。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| criteriaBasedRules | CampaignCriteriaBasedSharingRule[] | ユーザの条件に基づくルールを定義するリスト。 |
| ownerRules | CampaignOwnerSharingRule[] | ユーザのメンバーシップに基づくルールを定義するリスト。 |
CaseSharingRules
ケースの共有ルールを表します。SharingRules メタデータ型を拡張し、その fullName 項目を継承します。API バージョン 32.0 以前でのみ利用できます。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| criteriaBasedRules | CaseCriteriaBasedSharingRule[] | ユーザの条件に基づくルールを定義するリスト。 |
| ownerRules | CaseOwnerSharingRule[] | ユーザのメンバーシップに基づくルールを定義するリスト。 |
ContactSharingRules
取引先責任者の共有ルールを表します。SharingRules メタデータ型を拡張し、その fullName 項目を継承します。API バージョン 32.0 以前でのみ利用できます。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| criteriaBasedRules | ContactCriteriaBasedSharingRule[] | ユーザの条件に基づくルールを定義するリスト。 |
| ownerRules | ContactOwnerSharingRule[] | ユーザのメンバーシップに基づくルールを定義するリスト。 |
LeadSharingRules
リードの共有ルールを表します。SharingRules メタデータ型を拡張し、その fullName 項目を継承します。API バージョン 32.0 以前でのみ利用できます。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| criteriaBasedRules | LeadCriteriaBasedSharingRule[] | ユーザの条件に基づくルールを定義するリスト。 |
| ownerRules | LeadOwnerSharingRule[] | ユーザのメンバーシップに基づくルールを定義するリスト。 |
OpportunitySharingRules
商談の共有ルールを表します。SharingRules メタデータ型を拡張し、その fullName 項目を継承します。API バージョン 32.0 以前でのみ利用できます。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| criteriaBasedRules | OpportunityCriteriaBasedSharingRule[] | ユーザの条件に基づくルールを定義するリスト。 |
| ownerRules | OpportunityOwnerSharingRule[] | ユーザのメンバーシップに基づくルールを定義するリスト。 |
AccountTerritorySharingRules
元のテリトリー管理機能の取引先テリトリーの共有ルールを表します。SharingRules メタデータ型を拡張し、その fullName 項目を継承します。API バージョン 32.0 以前でのみ利用できます。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| rules | AccountTerritorySharingRule[] | ユーザのメンバーシップに基づくルールを定義するリスト。sharedFrom 項目の許容値のリストは次のとおりです。
|
CustomObjectSharingRules
カスタムオブジェクトの共有ルールを表します。SharingRules メタデータ型を拡張し、その fullName 項目を継承します。API バージョン 32.0 以前でのみ利用できます。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| criteriaBasedRules | CustomObjectCriteriaBasedSharingRule[] | ユーザの条件に基づくルールを定義するリスト。 |
| ownerRules | CustomObjectOwnerSharingRule[] | ユーザのメンバーシップに基づくルールを定義するリスト。 |
UserSharingRules
ユーザの共有ルールを表します。ユーザの共有ルールでは、グループのメンバーを別のグループのメンバーと共有できます。SharingRules メタデータ型を拡張し、その fullName 項目を継承します。API バージョン 32.0 以前でのみ利用できます。
| 項目 | 項目の型 | 説明 |
|---|---|---|
| criteriaBasedRules | UserCriteriaBasedSharingRule[] | ユーザの条件に基づくルールを定義するリスト。 |
| membershipRules | UserMembershipSharingRule[] | ユーザのメンバーシップに基づくルールを定義するリスト。 |
宣言的なメタデータの定義のサンプル
共有ルールの取得については、「共有ルール」の package.xml サンプルを参照してください。
次の XML 定義サンプルは、API バージョン 33.0 の条件に基づく共有ルールを表します。
1<?xml version="1.0" encoding="UTF-8"?>
2<SharingRules xmlns="http://soap.sforce.com/2006/04/metadata">
3 <sharingCriteriaRules>
4 <fullName>AccountCriteriaShareWithCEO</fullName>
5 <accessLevel>Edit</accessLevel>
6 <accountSettings>
7 <caseAccessLevel>Read</caseAccessLevel>
8 <contactAccessLevel>Edit</contactAccessLevel>
9 <opportunityAccessLevel>Edit</opportunityAccessLevel>
10 </accountSettings>
11 <criteriaItems>
12 <field>Name</field>
13 <operation>startsWith</operation>
14 <value>Test</value>
15 </criteriaItems>
16 <description>my account criteria rule description</description>
17 <label>AccountCriteriaShareWithCEO</label>
18 <sharedTo>
19 <role>CEO</role>
20 </sharedTo>
21 </sharingCriteriaRules>
22</SharingRules>次の XML 定義サンプルは、API バージョン 33.0 の所有権に基づく共有ルールを表します。
1<?xml version="1.0" encoding="UTF-8"?>
2<SharingRules xmlns="http://soap.sforce.com/2006/04/metadata">
3 <sharingOwnerRules>
4 <fullName>MyCase</fullName>
5 <accessLevel>Edit</accessLevel>
6 <description>my case test owner sharing rule desc</description>
7 <label>MyCase</label>
8 <sharedFrom>
9 <role>COO</role>
10 </sharedFrom>
11 <sharedTo>
12 <role>CEO</role>
13 </sharedTo>
14 </sharingOwnerRules>
15</SharingRules>次の XML 定義サンプルは、API バージョン 33.0 のテリトリーに基づく共有ルールを表します。
1<?xml version="1.0" encoding="UTF-8"?>
2<SharingRules xmlns="http://soap.sforce.com/2006/04/metadata">
3 <sharingTerritoryRules>
4 <fullName>MyAccountTerritoryRule</fullName>
5 <accessLevel>Read</accessLevel>
6 <accountSettings>
7 <caseAccessLevel>None</caseAccessLevel>
8 <contactAccessLevel>Read</contactAccessLevel>
9 <opportunityAccessLevel>None</opportunityAccessLevel>
10 </accountSettings>
11 <description>MyAccountTerritoryRule desc</description>
12 <label>MyAccountTerritoryRule</label>
13 <sharedFrom>
14 <territory>My_territory</territory>
15 </sharedFrom>
16 <sharedTo>
17 <role>CEO</role>
18 </sharedTo>
19 </sharingTerritoryRules>
20</SharingRules>API バージョン 32.0 以前の 2 つの取引先所有者に基づく共有ルールの定義を次に示します。ファイル名は、accountSharingRules ディレクトリ下の Account.sharingRules に対応します。この定義では、ownerRules が AccountOwnerSharingRule に対応します。
1<?xml version="1.0" encoding="UTF-8"?>
2<AccountSharingRules xmlns="http://soap.sforce.com/2006/04/metadata">
3 <ownerRules>
4 <fullName>G1Dev_G2New</fullName>
5 <sharedFrom>
6 <group>G1Dev</group>
7 </sharedFrom>
8 <sharedTo>
9 <group>G2New</group>
10 </sharedTo>
11 <accountAccessLevel>Read</caseAccessLevel>
12 <caseAccessLevel>None</caseAccessLevel>
13 <contactAccessLevel>Read</contactAccessLevel>
14 <name>G1Dev_G2New</name>
15 <opportunityAccessLevel>Edit</opportunityAccessLevel>
16 </ownerRules>
17 <ownerRules>
18 <fullName>G2New_R1New</fullName>
19 <sharedFrom>
20 <group>G2New</group>
21 </sharedFrom>
22 <sharedTo>
23 <roleAndSubordinates>R1New</roleAndSubordinates>
24 </sharedTo>
25 <accountAccessLevel>Edit</accountAccessLevel>
26 <caseAccessLevel>Read</caseAccessLevel>
27 <contactAccessLevel>Edit</contactAccessLevel>
28 <name>G2New_R1New</name>
29 <opportunityAccessLevel>None</opportunityAccessLevel>
30 </ownerRules>
31</AccountSharingRules>API バージョン 32.0 以前の、ユーザの条件に基づく共有ルールとユーザのメンバーシップに基づく共有ルールの定義を次に示します。ファイル名は、userSharingRules ディレクトリ下の User.sharingRules に対応します。
1<?xml version="1.0" encoding="UTF-8"?>
2<UserSharingRules xmlns="http://soap.sforce.com/2006/04/metadata">
3 <criteriaBasedRules>
4 <fullName>shareUsers2</fullName>
5 <sharedTo>
6 <group>Asia_Division</group>
7 </sharedTo>
8 <criteriaItems>
9 <field>FirstName</field>
10 <operation>equals</operation>
11 <value>John</value>
12 </criteriaItems>
13 <name>shareUsers2</name>
14 <userAccessLevel>Read</userAccessLevel>
15 </criteriaBasedRules>
16 <membershipRules>
17 <fullName>shareUsers1</fullName>
18 <sharedTo>
19 <group>South_America_Division</group>
20 </sharedTo>
21 <sharedFrom>
22 <group>Asia_Division</group>
23 </sharedFrom>
24 <name>shareUsers1</name>
25 <userAccessLevel>Read</userAccessLevel>
26 </membershipRules>
27</UserSharingRules>package.xml ファイルのサンプルを次に示します。
1<?xml version="1.0" encoding="UTF-8"?>
2<Package xmlns="http://soap.sforce.com/2006/04/metadata">
3 <types>
4 <members>ObjA__c.*</members>
5 <name>SharingCriteriaRule</name>
6 </types>
7 <types>
8 <members>ObjA__c.*</members>
9 <name>SharingOwnerRule</name>
10 </types>
11 <version>52.0</version>
12</Package>マニフェストファイル内のワイルドカードのサポート
このメタデータ型では、package.xml マニフェストファイル内のワイルドカード文字 * (アスタリスク) がサポートされます。マニフェストファイルの使用についての詳細は、「zip ファイルを使用したメタデータのリリースと取得」を参照してください。