CustomField
項目に関連付けられたメタデータを表します。標準オブジェクト、カスタムオブジェクト、および外部オブジェクトのカスタム項目の定義または標準オブジェクトの標準項目の定義を作成、更新、削除するには、このメタデータ型を使用します。Metadata メタデータ型を拡張し、その fullName 項目を継承します。
カスタマイズできる標準項目 (ヘルプテキストを追加したり、履歴追跡や Chatter フィード追跡を有効にできる標準項目) のみがポートされます。システム項目 (CreatedById、LastModifiedDate など)、自動採番項目を含む、その他の標準項目はサポートされません。一部の標準選択リスト項目はサポートされていません。「サポートされていないメタデータ型」を参照してください。
項目を作成または更新するときには必ず完全名を指定します。たとえば、カスタムオブジェクトのカスタム項目は次のように表されます。
1MyCustomObject__c.MyCustomField__c標準オブジェクトのカスタム項目の例を次に示します。
1Account.MyAcctCustomField__c標準オブジェクトの標準項目の例を次に示します。
1Account.Phone外部オブジェクトのカスタム項目の例を次に示します。
1MyExternalObject__x.MyCustomField__c宣言的なメタデータファイルのサフィックスおよびディレクトリの場所
カスタム項目はユーザ定義項目で、カスタムオブジェクトまたは標準オブジェクトの定義の一部です。詳細は、「CustomObject」を参照してください。標準項目は、標準オブジェクトで事前に定義されています。
カスタムオブジェクトまたは標準オブジェクトの項目の取得
カスタムオブジェクトまたは標準オブジェクトを取得するとき、カスタマイズできない標準項目を除き、そのオブジェクトに関連付けられるものすべてが返されます。package.xml で明示的にオブジェクトと項目の名前を指定することによって、オブジェクトの特定の項目のみを取得することもできます。package.xml の次の定義では、それぞれ要求された項目定義を含む、objects/MyCustomObject__c.object ファイルと objects/Account.object ファイルを作成します。
1<types>
2 <members>MyCustomObject__c.MyCustomField__c</members>
3 <members>Account.MyCustomAccountField__c</members>
4 <members>Account.Phone</members>
5 <name>CustomField</name>
6</types>バージョン
カスタム項目および標準項目は API バージョン 10.0 以降で使用できます。
項目
別途記載がない限り、すべての項目は作成可能、除外可能で、null にすることもできます。
| 項目名 | データ型 | 説明 |
|---|---|---|
| caseSensitive | boolean | この項目が大文字と小文字を区別するかどうかを示します (区別する場合は true、しない場合は false)。 外部オブジェクトの間接参照関係項目の場合、この属性は、このカスタム項目の値を referenceTargetField の値と照合する方法に影響を与えます。 |
| customDataType | string | 将来の使用のために予約されています。 |
| defaultValue | string | 指定されている場合、項目のデフォルト値を表します。 |
| deleteConstraint | DeleteConstraint (string 型の 列挙) | 参照関係の削除オプションを提供します。有効な値は、次のとおりです。 |
| deprecated | boolean | 将来の使用のために予約されています。 |
| description | string | 項目の説明。 |
| displayFormat | string | 表示形式。 |
| encrypted | boolean | この項目が暗号化されているか (true)、否か (false) を示します。この項目は、API バージョン 34.0 以降で使用できます。 |
| externalDeveloperName | string | 外部オブジェクトでのみ使用できます。Salesforce のこのカスタム項目に対応付けられる外部データソースのテーブル列の名前です。ユーザインターフェースの [外部列の名前] に対応します。この項目は、API バージョン 32.0 以降で使用できます。 |
| externalId | boolean | 項目が外部 ID 項目であるか (true)、否か (false) を示します。 |
| fieldManageability | string | 管理パッケージ内での項目のリリース後に項目を更新できるユーザを決定します。有効な値は次のとおりです。
|
| formula | string | 指定されている場合、項目の数式を表します。 |
| formulaTreatBlankAs | TreatBlanksAs (string 型の列挙) | 数式内の空白の処理方法を示します。有効な値は、BlankAsBlank および BlankAsZero です。 |
| fullName | string | Metadata から継承されるこの項目は、このメタデータ型の WSDL では定義されません。作成時、更新時、または削除時に指定する必要があります。コールにおけるこの項目の例を確認するには、「create()」を参照してください。 |
| globalPicklist | string | この項目は API バージョン 37.0 のみで使用できます。それ以降のバージョンでは削除されます。カスタム項目がグローバル選択リストに基づく選択リストの場合、globalPicklist はこの選択リストが継承する値セットを持つグローバル選択リストの名前になります。グローバル選択リストに基づくカスタム選択リストは制限されています。値を追加または削除するには、グローバル選択リストを編集する必要があります。 |
| indexed | boolean | 項目がインデックス付けされるかどうかを示します。この項目が一意である場合、または externalId が true に設定されている場合、isIndexed 値は true に設定されます。バージョン 14.0 では、この項目は廃止され、後方互換性の目的でのみ提供されています。 |
| inlineHelpText | string | 項目レベルのヘルプの内容を表します。詳細は、Salesforce ヘルプの「項目レベルのヘルプの定義」を参照してください。 |
| isFilteringDisabled | boolean | 外部オブジェクトでのみ使用できます。検索条件でカスタム項目を使用できるかどうかを示します。この項目は、API バージョン 32.0 以降で使用できます。 |
| isNameField | boolean | テキスト型の外部オブジェクト項目でのみ使用できます。外部オブジェクトごとに、名前項目として 1 つの項目を指定できます。これを true に設定する場合、externalDeveloperName 属性で識別される外部テーブル列に名前値が含まれていることを確認してください。この項目は、API バージョン 32.0 以降で使用できます。 |
| isSortingDisabled | boolean | 外部オブジェクトでのみ使用できます。カスタム項目が並び替え可能かどうかを示します。この項目は、API バージョン 32.0 以降で使用できます。 |
| reparentableMasterDetail | boolean |
カスタムオブジェクトの主従関係の子レコードの親を、他の親レコードに変更できるかどうかを示します。デフォルト値は、false です。 この項目は API バージョン 25.0 以降で使用できます。 |
| label | string | 項目の表示ラベル。取引先の Industry 項目など、標準選択リスト項目の表示ラベルを更新することはできません。 |
| length | int | 項目の長さ。 |
| lookupFilter | LookupFilter |
ルックアップ検索条件に関連付けられたメタデータを表します。ルックアップ検索条件の定義を作成、更新、または削除するには、このメタデータ型を使用します。 この項目は API バージョン 30.0 以降で使用できます。
|
| maskChar | EncryptedFieldMaskChar (string 型の列挙) |
暗号化された項目では、マスクとして使用される文字を指定します。有効な値は、EncryptedFieldMaskChar に列挙されています。 暗号化項目についての詳細は、Salesforce ヘルプの「カスタム項目の従来の暗号化」を参照してください。 |
| maskType | EncryptedFieldMaskType (string 型の列挙) | 暗号化されたテキスト項目の場合、マスクされる文字とマスクされない文字の形式を項目で指定します。有効な値は、EncryptedFieldMaskType に列挙されています。暗号化項目についての詳細は、Salesforce ヘルプの「カスタム項目の従来の暗号化」を参照してください。 |
| picklist | Picklist | 非推奨。この項目は API バージョン 37.0 以前でのみ使用してください。それ以降のバージョンでは、代わりに valueSet を使用してください。指定されている場合、項目は選択リストで、この項目は選択リスト値および表示ラベルを列挙します。 |
| populateExistingRows | boolean | 既存の行が挿入されるか (true)、否か (false) を示します。 |
| precision | int | 数値の精度。精度は、数字の桁数です。たとえば、数値 256.99 の精度は 5 です。 |
| referenceTargetField | string | 外部オブジェクトの間接参照関係項目でのみ使用できます。外部データソースから値が発生するこの間接参照関係項目と照合される、親オブジェクトのカスタム項目を指定します。指定された親オブジェクトのカスタム項目では、externalId と unique の両方が true に設定されている必要があります。この項目は、API バージョン 32.0 以降で使用できます。 |
| referenceTo | string | 指定されている場合、この項目に含まれる別のオブジェクトへの参照を示します。 |
| relationshipLabel | string | リレーションの表示ラベル。 |
| relationshipName | string | 指定されている場合、一対多のリレーションの値を示します。たとえば、YourObject へのリレーションを持っていた MyObject オブジェクトでは、そのリレーション名は YourObjects となります。 |
| relationshipOrder | int | この項目はすべての主従関係で有効ですが、連結オブジェクト場合、値はゼロ以外のみです。連結オブジェクトには、2 つの主従関係があり、多対多リレーションにある関連付けテーブルに類似しています。連結オブジェクトは 1 つの親オブジェクトを主オブジェクト (0) として、他方を第 2 オブジェクト (1) として定義する必要があります。主または第 2 の定義は、連結オブジェクトの削除動作およびデザインとレコード所有者の継承に影響します。詳細は、Salesforce ヘルプを参照してください。 |
| required | boolean | 作成時に項目への値の入力が必須であるか (true)、否か (false) を示します。 |
| scale | int | 項目のスケール。スケールは、数字の小数点の右側の桁数です。たとえば、数値 256.99 のスケールは 2 です。 |
| startingNumber | int | 指定されている場合、項目の開始番号を示します。レコードを作成すると、次に作成される自動採番項目に割り当てられる番号を保存するために [開始番号] の値が増分されます。 |
| stripMarkup | boolean | マークアップを削除するには true、維持するには false を設定します。リッチテキストエリアをロングテキストエリアに変換するときに使用されます。 |
| summarizedField | string | 集計されている詳細行の項目を表します。この項目は、summaryOperation 値が count でない限り、null にできません。 |
| summaryFilterItems | FilterItem[] | この項目が集計項目である場合、項目の検索条件のセットを表します。この項目は、検索条件が一致する場合、子で集計されます。 |
| summaryForeignKey | string | 親と子のリレーションを定義する、子の主従項目を表します。 |
| summaryOperation | SummaryOperations (string 型の列挙) | 実行される加算演算を表します。有効な値は、SummaryOperations に列挙されています。 |
| trackFeedHistory | boolean |
フィード追跡の項目が有効になっているか (true)、否か (false) を示します。この項目を true に設定するには、関連付けられた CustomObject の enableFeeds 項目も true に設定されている必要があります。詳細は、Salesforce ヘルプの「Chatter フィード追跡のカスタマイズ」を参照してください。 この項目は API バージョン 18.0 以降で使用できます。 |
| trackHistory | boolean |
項目の履歴追跡が有効になっているか (true)、否か (false) を示します。API バージョン 30.0 以降では、標準オブジェクト項目 (選択リスト項目と参照項目のみ) でも使用可能になりました。 trackHistory を true に設定するには、関連付けられた標準オブジェクトまたはカスタムオブジェクトの enableHistory 項目も true に設定されている必要があります。 詳細は、Salesforce ヘルプの「項目履歴管理」を参照してください。 項目履歴管理は、外部オブジェクトでは使用できません。 |
| trackTrending | boolean |
項目の履歴トレンドデータがキャプチャされているか (true)、否か (false) を示します。少なくとも 1 つの項目でこの属性が true であると、オブジェクトが履歴トレンド用に有効化されます。API バージョン 29.0 以降で使用できます。 詳細は、Salesforce ヘルプの「履歴変更のレポート」を参照してください。 |
| trueValueIndexed | boolean | これは、チェックボックス項目にのみ関連します。設定されている場合、true 値はインデックスに組み込まれます。この項目は API バージョン 14.0 で廃止され、後方互換性の目的でのみ提供されています。 |
| type | FieldType | 項目のデータ型を示します。有効な値は、FieldType に列挙されています。 標準オブジェクトの標準項目の場合、type 項目は省略可能です。選択リストやルックアップなどの一部の標準項目種別ではこの項目が含まれますが、その他の種別では含まれません。カスタム項目では type 項目が含まれます。 |
| unique | boolean | 項目が一意であるか (true)、否か (false) を示します。 |
| valueSet | ValueSet | カスタム項目で選択リストを構成する値のセットを表します。各値は CustomValue として定義されます。このカスタム項目がグローバル値セットを使用する選択リストの場合、valueSet はこの選択リストが継承する値を持つグローバル値セットの名前になります。グローバル値セットを使用するカスタム選択リストは制限されています。値を追加または削除するには、グローバル値セットを編集する必要があります。
この項目は、API バージョン 38.0 以降で使用できます。 |
| visibleLines | int | 項目に表示される線の数を示します。 |
| writeRequiresMasterRead | boolean |
子レコードを作成、編集、または削除するためにマスタレコードに必要な最低限の共有アクセスレベルを設定します。この項目は、主従または連結オブジェクトカスタム項目のデータ型にのみ適用されます。
連結オブジェクトの場合、2 つの親からの最も厳しい制限のあるアクセス権が適用されます。たとえば、両方の主従項目に true が設定されているが、ユーザが 1 つのマスタレコードに対して「参照」アクセス権があり、他方のマスタレコードに対して「参照・更新」アクセス権がある場合、ユーザは子レコードを作成、編集、または削除することはできません。 |
項目は、追加のデータ型を使用します。詳細は、「メタデータのデータ型」を参照してください。
EncryptedFieldMaskChar
このデータ型は、maskChar で使用されます。asterisk または X という 2 つの有効な値を持つ文字列です。暗号化項目についての詳細は、Salesforce オンラインヘルプの「カスタム項目の従来の暗号化」を参照してください。
EncryptedFieldMaskType
このデータ型は、maskType で使用されます。有効な値は、次のとおりです。
- all
- 項目内のすべての文字が非表示になります。このオプションは、Salesforce の [すべての文字をマスク] オプションと同等です。
- creditCard
- 最初の 12 桁が非表示になり、最後の 4 桁が表示されます。このオプションは、Salesforce の [クレジットカード番号] オプションと同等です。
- ssn
- 最初の 5 桁が非表示になり、最後の 4 桁が表示されます。このオプションは、Salesforce の [社会保障番号] オプションと同等です。
- lastFour
- 最後の 4 桁を除くすべての文字が非表示になります。このオプションは、Salesforce の [最後の 4 桁を表示] オプションと同等です。
- sin
- 最後の 4 桁を除くすべての文字が非表示になります。このオプションは、Salesforce の [社会保険番号] オプションと同等です。
- nino
- すべての文字が非表示になります。項目が 9 桁の場合は、各ペアの文字の後にスペースが自動的に挿入されます。このオプションは、Salesforce の [国民保険番号] オプションと同等です。
暗号化項目についての詳細は、Salesforce オンラインヘルプの「カスタム項目の従来の暗号化」を参照してください。
LookupFilter
ルックアップ検索条件に関連付けられたメタデータを表します。API バージョン 30.0 で削除された NamedFilter コンポーネントにこれが置き換わります。LookupFilter は、API バージョン 30.0 以降で使用できます。
| 項目 | データ型 | 説明 |
|---|---|---|
| active | boolean | 必須。ルックアップ検索条件が有効かどうかを示します。 |
| booleanFilter | string | 高度な検索条件を指定します。高度な検索条件の詳細は、Salesforce ヘルプの「検索条件ロジックを最大限に活用」を参照してください。 |
| description | string | この検索条件の機能の説明。 |
| errorMessage | string | ルックアップ検索条件が失敗した場合に表示されるエラーメッセージ。 |
| filterItems | FilterItem[] | 必須。検索条件のセット。1 つのルックアップ検索条件につき FilterItem を 10 個まで入れることができます。 |
| infoMessage | string | ページに表示される情報メッセージ。ある項目がルックアップ検索条件で除外されている理由など、ユーザにとってわかりにくい内容を説明するために使用します。 |
| isOptional | boolean | 必須。ルックアップ検索条件が省略可能かどうかを示します。 |
ルックアップ検索条件は、追加のデータ型を使用します。詳細は、「メタデータのデータ型」を参照してください。
FilterItem
一連の検索条件の 1 つのエントリを表します。
| 項目 | データ型 | 説明 |
|---|---|---|
| field | string | 検索条件に指定された項目を表します。 |
| operation | FilterOperation (string 型の列挙) | この検索条件項目の絞り込み操作を表します。有効な値は、FilterOperation に列挙されています。 |
| value | string | 操作される検索条件項目の値を表します。たとえば、検索条件が my_number_field__c > 1 である場合、value の値は 1 です。 |
| valueField | string | 検索条件の最終列に項目または項目値が含まれるかを指定します。 承認プロセスでは、検索条件の valueField エントリをサポートしていません。 |
- equals
- notEqual
- lessThan
- greaterThan
- lessOrEqual
- greaterOrEqual
- contains
- notContain
- startsWith
- includes
- excludes
- within (DISTANCE 条件のみ)
宣言的なメタデータの定義のサンプル
次の例は、Comments__c という名前のカスタム項目の項目定義を示します。
1<?xml version="1.0" encoding="UTF-8"?>
2<CustomObject xmlns="http://soap.sforce.com/2006/04/metadata">
3....
4<fields>
5 <fullName>Comments__c</fullName>
6 <description>Add your comments about this object here</description>
7 <inlineHelpText>This field contains help text for this object</inlineHelpText>
8 <label>Comments</label>
9 <length>32000</length>
10 <type>LongTextArea</type>
11 <visibleLines>30</visibleLines>
12</fields>
13....
14</CustomObject>次の Account 標準オブジェクトの 2 つの項目の定義を示します。1 つはカスタム項目 (MyCustomAccountField__c)、もう 1 つは履歴追跡が有効になっている標準項目 (Phone) です。
1<?xml version="1.0" encoding="UTF-8"?>
2<CustomObject xmlns="http://soap.sforce.com/2006/04/metadata">
3 <fields>
4 <fullName>MyCustomAccountField__c</fullName>
5 <description>A custom field on the Account standard object.</description>
6 <externalId>false</externalId>
7 <inlineHelpText>Some help text.</inlineHelpText>
8 <label>MyCustomAccountField</label>
9 <length>100</length>
10 <required>false</required>
11 <trackFeedHistory>false</trackFeedHistory>
12 <trackHistory>false</trackHistory>
13 <type>Text</type>
14 <unique>false</unique>
15 </fields>
16 <fields>
17 <fullName>Phone</fullName>
18 <trackFeedHistory>false</trackFeedHistory>
19 <trackHistory>true</trackHistory>
20 </fields>
21</CustomObject>