DescribeSObjectResult
describeSObjects() コールは、DescribeSObjectResult オブジェクトの配列を返します。各オブジェクトには次のプロパティがあります。
| 名前 | 型 | 説明 |
|---|---|---|
| activateable | boolean | 将来の使用のために予約されています。 |
| actionOverrides | ActionOverride[] | override アクションの配列。override アクションによって、urlDetail、urlEdit、および urlNew 項目に指定された URL が置き換えられます。この項目は、API バージョン 32.0 以降で使用できます。 |
| childRelationships | ChildRelationship[] | 子リレーションの配列で、記述されている sObject への外部キーを持つ sObject の名前です。 |
| compactLayoutable | boolean | オブジェクトが describeCompactLayouts() で使用できることを示します。 |
| createable | boolean | オブジェクトが create() コールで作成可能か (true)、否か (false) を示します。 |
| custom | boolean | カスタムオブジェクトであるかどうかを示します (カスタムオブジェクトの場合は true、そうでない場合は false)。 |
| customSetting | boolean | カスタム設定項目であるか (true)、否か (false) を示します。 |
| dataTranslationEnabled | boolean | オブジェクトでデータ翻訳が有効になっているか (true)、否か (false) を示します。API バージョン 49.0 以降で利用できます。 |
| deepCloneable | boolean | 将来の使用のために予約されています。 |
| defaultImplementation | string | 将来の使用のために予約されています。 |
| deletable | boolean | オブジェクトが delete() コールで削除できるか (true)、否か (false) を示します。 |
| deprecatedAndHidden | boolean | 将来の使用のために予約されています。 |
| extendedBy | string | 将来の使用のために予約されています。 |
| extendsInterfaces | string | 将来の使用のために予約されています。 |
| feedEnabled | boolean | オブジェクトで Chatter 項目が有効か (true)、否か (false) を示します。このプロパティは、API バージョン 19.0 以降で使用できます。 |
| fields | Field[] | オブジェクトに関連付けられた項目の配列。このリストから情報を取得するメカニズムは、開発ツールにより異なります。 |
| implementedBy | string | 将来の使用のために予約されています。 |
| implementsInterfaces | string | 将来の使用のために予約されています。 |
| isInterface | boolean | 将来の使用のために予約されています。 |
| keyPrefix | string |
オブジェクト ID の 3 文字のプレフィックスコード。オブジェクト ID はオブジェクト型を示す 3 文字のコードが先頭に付けられます。たとえば、Account オブジェクトのプレフィックスは 001、Opportunity オブジェクトのプレフィックスは 006 です。主要なプレフィックスを複数のオブジェクトで共有する場合があるため、必ずしもオブジェクトを一意に識別するわけではありません。 子に 1 つ以上の親オブジェクトが存在する場合 (多態的な場合)、親のオブジェクト種別を確認するためにこの項目の値を使用します。たとえば、Task または Event の親の keyPrefix 値を取得しなければならない場合にこの値を使用します。 |
| label | string | 適用される場合は、ユーザインターフェースで名前が変更されたタブまたは項目のラベルテキスト。変更されていない場合はオブジェクト名。たとえば、医療分野の組織では「取引先」を Patient に変更する場合があります。タブや項目は Salesforce ユーザインターフェースで名前を変更できます。詳細は、Salesforce オンラインヘルプを参照してください。 |
| labelPlural | string | オブジェクト名の複数形を表すラベルテキストです。 |
| layoutable | boolean | オブジェクトが describeLayout() コールをサポートしているか (true)、否か (false) を示します。 |
| mergeable | boolean | オブジェクトが同じ型の他のオブジェクトとマージ可能か (true)、否か (false) を示します。リード、取引先責任者、および取引先の場合は true です。 |
| mruEnabled | boolean | 最後に使用 (MRU) リスト機能がオブジェクトで有効か (true)、否か (false) を示します。 |
| name | string | オブジェクトの名前。sObjectType パラメータとして渡された文字列と同じです。 |
| namedLayoutInfos | NamedLayoutInfo[] | デフォルトレイアウト以外の、オブジェクトで使用可能な特定の名前付きレイアウト。 |
| networkScopeFieldName | string | エンティティをコミュニティに絞り込む networkScopeField の API 参照名。ほとんどのエンティティでは、このプロパティの値は null です。 |
| queryable | boolean | オブジェクトが query() コールでクエリ可能か (true)、否か (false) を示します。 |
| recordTypeInfos | RecordTypeInfo[] | このオブジェクトがサポートするレコードタイプの配列。ユーザはここに表示されるものすべてを参照するのに、返されたすべてのレコードタイプへのアクセス権を所有している必要はありません。 |
| replicateable | boolean | オブジェクトを getUpdated() および getDeleted() コールで複製可能か (true)、否か (false) を示します。 |
| retrieveable | boolean | オブジェクトが retrieve() コールで取得可能か (true)、否か (false) を示します。 |
| searchable | boolean | オブジェクトが search() コールで検索可能か (true)、否か (false) を示します。 |
| searchLayoutable | boolean | 検索レイアウト情報を describeSearchLayouts() コールで取得できるか (true)、否か (false) を示します。 |
| supportedScopes | ScopeInfo | オブジェクトのサポートされる範囲のリスト。たとえば、取引先では [すべての取引先]、[私の取引先] および [私のチームの取引先] の範囲がサポートされる可能性があります。 |
| triggerable | boolean | オブジェクトが Apex トリガをサポートしているかどうかを示します。 |
| undeletable | boolean | オブジェクトが undelete() コールで復元可能か (true)、否か (false) を示します。 |
| updateable | boolean | オブジェクトが update() コールで更新可能か (true)、否か (false) を示します。 |
| urlDetail | string | オブジェクトの参照のみの詳細ページへの URL。参照・更新可能である urlEdit と比較してください。クライアントアプリケーションはこの URL を使用し標準オブジェクトまたはカスタムオブジェクトの Salesforce ユーザインターフェースへリダイレクトまたはアクセスできます。柔軟性を持たせ、将来の拡張に備えるために、返される urlDetail 値は動的です。クライアントアプリケーションの上位互換性を保証するため、できる限りこの機能を使用することをお勧めします。固定の URL が利用できないオブジェクトについては、この項目は空の値を返します。 |
| urlEdit | string | オブジェクトの編集ページへの URL。たとえば、取引先オブジェクトの urlEdit 項目は https://yourInstance.salesforce.com/{ID}/e を返します。{ID} 項目を現在のオブジェクト ID で置き換えると、Salesforce ユーザインターフェースの指定された取引先の編集ページを返します。参照のみである urlDetail と比較してください。クライアントアプリケーションはこの URL を使用し標準オブジェクトまたはカスタムオブジェクトの Salesforce ユーザインターフェースへリダイレクトまたはアクセスできます。柔軟性を持たせ、将来の拡張に備えるために、返される urlDetail 値は動的です。クライアントアプリケーションの上位互換性を保証するため、できる限りこの機能を使用することをお勧めします。固定の URL が利用できないオブジェクトについては、この項目は空の値を返します。 |
| urlNew | string | オブジェクトの新規/作成ページへの URL。クライアントアプリケーションはこの URL を使用し標準オブジェクトまたはカスタムオブジ���クトの Salesforce ユーザインターフェースへリダイレクトまたはアクセスできます。柔軟性を持たせ、将来の拡張に備えるために、返される urlNew 値は動的です。クライアントアプリケーションの上位互換性を保証するため、できる限りこの機能を使用することをお勧めします。固定の URL が利用できないオブジェクトについては、この項目は空の値を返します。 |
ActionOverride
ActionOverride は、オブジェクトのデフォルトアクションページを置き換えるアクションに関する詳細を提供します。たとえば、オブジェクトの新規/作成ページをカスタムページで置き換えるように設定されている場合があります。この種別は、API バージョン 32.0 以降で使用できます。
| 名前 | 型 | 説明 |
|---|---|---|
| formFactor | string | アクションの上書きが適用される環境を表します。たとえば、この項目の Large 値は Lightning Experience デスクトップ環境を表し、Lightning ページおよび Lightning コンポーネントで有効です。Small 値は、携帯電話またはタブレットの Salesforce モバイルアプリケーションを表します。 この項目は、API バージョン 37.0 以降で使用できます。 |
| isAvailableInTouch | boolean | Salesforce モバイルアプリケーションで override アクションが有効になっているか (true)、否か (false) を示します。 |
| name | string | デフォルトのアクションを上書きするアクションの名前。たとえば、新規/作成ページがカスタムアクションで上書きされている場合、アクション名は「New」などである場合があります。 |
| pageId | reference | override アクションのページの ID。 |
| url | string | Visualforce ページなど、アクション上書きに使用する項目の URL。Lightning ページの上書きでは null として返されます。 |
ChildRelationship
説明されている sObject への外部キーを持つ sObject の名前です。
| 名前 | 型 | 説明 |
|---|---|---|
| cascadeDelete | boolean | 親オブジェクトが削除されるときに子オブジェクトも削除されるか (true)、否か (false) を示します。 |
| childSObject | string | 親の sObject への外部キーを持つオブジェクトの名前。 |
| deprecatedAndHidden | boolean | 将来の使用のために予約されています。 |
| field | string | 親の sObject への外部キーを持つ項目の名前。 |
| relationshipName | string | リレーションの名前。通常は childSObject の値の複数形。 |
Field
DescribeSObjectResult において、Field プロパティには fields オブジェクトの配列が含まれます。各項目は API オブジェクトの項目を表します。配列は、ユーザの項目レベルのセキュリティ設定の定義に基づき、ユーザが参照できる項目のみを含みます。
| 名前 | 型 | 説明 |
|---|---|---|
| autonumber | boolean | この項目が自動採番項目であるか (true)、否か (false) を示します。SQL の IDENTITY 型に似て、自動採番項目は参照のみ可能で、作成できない項目であり、最長 30 文字です。自動採番項目は参照のみの項目であり、内部オブジェクト ID に依存しない一意な ID を提供します (購入注文番号や請求書番号など)。自動採番項目は、全体的に Salesforce ユーザインターフェースで構成されています。API はこの属性へのアクセスを提供しているため、クライアントアプリケーションは指定された項目が自動採番項目かどうかを確認できます。 |
| byteLength | int | 可変長項目 (バイナリ項目も含む) の最大サイズをバイトで指定。 |
| calculated | boolean | 項目がカスタム数式項目であるか (true)、否か (false) を示します。カスタム数式項目は常に参照のみです。 |
| caseSensitive | boolean | この項目が大文字と小文字を区別するかどうかを示します (区別する場合は true、しない場合は false)。 |
| controllerName | string | この選択リストの値を制御する項目の名前。type が picklist または multipicklist であり、dependentPicklist が true の場合のみ適用されます。「連動選択リストについて」を参照してください。制御項目から連動項目への対応付けは、この選択リストの各 PicklistEntry の validFor 属性に格納されます。「validFor」 を参照してください。 |
| createable | boolean | 項目を作成できるか (true)、否か (false) を示します。true の場合、この項目値を create() コールで設定できます。 |
| custom | boolean | 項目がカスタム項目であるか (true)、否か (false) を示します。 |
| dataTranslationEnabled | boolean | 項目でデータ翻訳が有効になっているか (true)、否か (false) を示します。API バージョン 49.0 以降で利用できます。 |
| defaultedOnCreate | boolean | 作成時にこの項目がデフォルト設定されているか (true)、否か (false) を示します。true の場合、この項目の値が create() コールで渡されなくても、Salesforce は、オブジェクト作成時にこの項目の値を暗黙的に割り当てます。たとえば、Opportunity オブジェクトで、値が Stage 項目から取得されている、Probability 項目にはこの属性が指定されています。同様に、ほとんどのオブジェクトの Owner にはこの属性が設定されています。Owner 項目が特に指定されない限り、値は現在のユーザから取得されます。 |
| defaultValueFormula | string | 数式が使用されていない場合に、この値に指定されるデフォルト値。値が指定されていない場合、この項目は返されません。 |
| dependentPicklist | boolean | 選択リストが連動選択リストであるかどうかを示します (利用可能な値が制御項目で選択された値に従う場合は true、そうでない場合は false)。「連動選択リストについて」を参照してください。 |
| deprecatedAndHidden | boolean | 将来の使用のために予約されています。 |
| digits | int | 整数型の項目で使用。最大桁数。整数値がこの桁数を超えた場合、API はエラーを返します。 |
| encrypted | boolean | この項目が暗号化されているかどうかを示します。この値は、describeSObjects() コールの結果が true の場合にのみ結果に表示され、それ以外の場合は結果から除外されます。この項目は、API バージョン 31.0 以降で使用できます。 |
| extraTypeInfo | string | 項目が textarea データ型の場合、テキストエリアがプレーンテキストか (plaintextarea)、リッチテキストか (richtextarea) を示します。 項目が url データ型の場合、この値が imageurl ならば、URL は画像ファイルを参照します。標準オブジェクトの標準項目でのみ使用できます (Account.photoUrl、Contact.photoUrl など)。 項目が reference データ型の場合、外部オブジェクトリレーションの種別を示します。外部オブジェクトでのみ使用できます。
|
| filterable | boolean | 項目を除外できるか (true)、否か (false) を示します。true の場合、この項目を query() コールのクエリ文字列の WHERE 句で指定できます。 |
| filteredLookupInfo | FilteredLookupInfo |
項目がルックアップ検索条件を持つ reference データ型の場合、filteredLookupInfo にはその項目のルックアップ検索条件情報が含まれます。ルックアップ検索条件がない場合、または検索条件が無効な場合、この項目は null になります。 この項目は、API バージョン 31.0 以降で使用できます。 |
| formula | string | この項目に指定された数式。数式が指定されていない場合、この項目は返されません。 |
| groupable | boolean | 項目を SOQL クエリの GROUP BY 句に含めることができるかどうかを示します (できる場合は true、できない場合は false)。『Salesforce SOQL および SOSL リファレンス』の「GROUP BY」を参照してください。API バージョン 18.0 以降で利用できます。 |
| highScaleNumber | boolean | 項目詳細の指定内容に関係なく、項目に小数点以下 8 桁までの数値が保存されるか (true)、否か (false) を示します。価格が数分の 1 セントの大量の製品の通貨を処理するために使用されます。組織で、高スケールの単価設定が有効ではない場合、この項目は返されません。API バージョン 33.0 以降で使用できます。 |
| htmlFormatted | boolean | ハイパーリンクのカスタム数式項目などの項目が HTML のために形式化されており、HTML として表示するためのエンコーディングが必要かどうかを示します (必要な場合は true、必要でない場合は false)。カスタム数式項目の項目に IMAGE テキスト関数があるかどうかも示します。 |
| idLookup | boolean | upsert() コールのレコードの指定に項目を使用できるかどうかを指定します (指定できる場合は true、できない場合は false)。 |
| inlineHelpText | string | この項目の項目レベルのヘルプでフロート表示テキストとして表示されるテキストです。 |
| label | string | Salesforce ユーザインターフェースの項目の隣に表示されるテキストラベル。このラベルはローカライズが可能です。 |
| length | int | Unicode 文字での最大サイズ (バイトではないことに注意) と 255 のうちいずれか少ない方を返します。getLength() プロパティによって返される最大値は 255 です。API バージョン 49.0 以降で利用できます。 |
| mask | string | 将来の使用のために予約されています。 |
| maskType | string | 将来の使用のために予約されています。 |
| name | string | create()、delete()、query() など、API コールで使用される項目名。 |
| nameField | boolean |
項目が名前項目であるか (true)、否か (false) を示します。標準オブジェクトの名前項目 (Account オブジェクトの AccountName など) やカスタムオブジェクトの名前項目を識別するために使用します。Contact オブジェクトなど、FirstName および LastName 項目が使用されている場合を除き、1 オブジェクトにつき 1 つに制限されます。 個人取引先の Name 項目などのように複合名が存在する場合、そのレコードの nameField は true に設定されます。複合名が存在しない場合、FirstName および LastName ではこの項目が true に設定されます。 |
| namePointing | boolean | 項目の値が、このオブジェクトの親の Name であるか (true)、否か (false) を示します。親のオブジェクト種別が 2 つ以上ある可能性のあるオブジェクトで使用します。たとえば、ToDo は取引先と取引先責任者が親であることが考えられます。 |
| nillable | boolean | 項目を空白にできるか (true)、否か (false) を示します。null 値が許可される項目は、中身を空にすることができます。null 値が許可されないオブジェクトでは、オブジェクトを作成して保存するには必ず値を設定する必要があります。 |
| permissionable | boolean | 項目に FieldPermissions を指定可能か (true)、否か (false) を示します。 |
| picklistValues | PicklistEntry[] | 選択リストの有効な値のリストを提供します。restrictedPicklist が true の場合のみ指定します。 |
| polymorphicForeignKey | boolean | 外部キーに複数のエンティティ種別が含まれるか (true)、否か (false) を示します。 |
| precision | int | 倍精度浮動小数点数型の項目で使用します。小数点の右側と左側の両方をあわせた (ただし小数点自体は含まない)、格納可能な最大桁数を示します。 |
| relationshipName | string | 主従関係の項目の場合、リレーションの名前。 |
| relationshipOrder | int | 主従関係の項目の場合、リレーションの種類。有効な値は、次のとおりです。
|
| referenceTargetField | string | 外部オブジェクトの間接参照関係にのみ適用されます。値が子外部オブジェクトの間接参照関係項目の値と照合される、親標準またはカスタムオブジェクトのカスタム項目の名前。この照合は、相互に関連するレコードを判別するために行われます。この項目は、API バージョン 32.0 以降で使用できます。 |
| referenceTo | string[] | 他のオブジェクトを参照する項目において、この配列は参照��れるオブジェクトのオブジェクト種別を示します。 |
| restrictedPicklist | boolean | 項目が制限付き選択リストであるか (true)、否か (false) を示します。 |
| scale | int | 倍精度浮動小数点数型の項目で使用します。小数点の右側の最大桁数です。API は小数点の右側の余分な桁は通知することなく切り捨てます。ただし、小数点の左側の桁数が多すぎる場合は、エラーのレスポンスを返します。 |
| searchPrefilterable | boolean | 外部キーが SOSL WHERE 句で使用されたときに外部キーを事前絞り込みに組み込むか (true) 組み込まないか (false) を示します。事前絞り込みでは、完全な検索クエリを実行する前に特定の項目値で絞り込みを行います。API バージョン 40.0 以降で使用できます。 |
| soapType | SOAPType | 設定可能な値のリストは、「SOAPType」を参照してください。 |
| sortable | boolean | クエリでこの項目に基づいて並び替えができるか (true)、できないか (false)) を示します。 |
| type | FieldType | 設定可能な値のリストは、「FieldType」を参照してください。 |
| unique | boolean | この項目が一意である必要があるかどうかを示します (一意である必要がある場合は true、そうでない場合は false)。 |
| updateable | boolean | 次のいずれかを示します。
|
| writeRequiresMasterRead | boolean | この項目は主従関係にのみ適用されます。ユーザが、子レコードの挿入、更新および削除を行う場合に親レコードに対して必要なのは、参照の共有アクセス権限であるのか (true)、編集の共有アクセス権限であるのか (false) を示します。いずれの場合も、ユーザは子オブジェクトに対しても、作成、編集および削除のオブジェクト権限が必要です。 |
FieldType
DescribeSObjectResult で関連付けられた Field オブジェクトにおいて、type 項目には次の文字列の 1 つを格納できます。項目のデータ型の詳細は、「データ型」を参照してください。
| type 項目値 | Field オブジェクトに含まれる内容 |
|---|---|
| string | 文字列の値。 |
| boolean | boolean の (true/false) の値。 |
| int | 整数値。 |
| double | double 値。 |
| date | 日付の値。 |
| datetime | 日付/時間の値。 |
| base64 | Base64 でエンコーディングされた任意のバイナリデータ (型は base64Binary)。Attachment、Document および Scontrol オブジェクトで使用します。 |
| ID | オブジェクトの主キ��項目。ID についての詳細は、「ID データ型」を参照してください。 |
| reference | 別のオブジェクトへの相互参照。SQL の外部キー項目に似ています。 |
| currency | 通貨の値。 |
| textarea | 複数行のテキスト項目として表示される文字列。 |
| percent | パーセント値。 |
| phone | 電話番号。値には英字を含めることもできます。電話番号の書式は、クライアントアプリケーションが指定します。 |
| url | URL の値。通常クライアントアプリケーションではハイパーリンクとして表示されます。 Field.extraTypeInfo が imageurl の場合、URL は画像を参照し、代わりに画像として表示できます。 |
| メールアドレス。 | |
| combobox | 列挙値のセットを提供するコンボボックスで、ユーザはリストにない値も指定できます。 |
| picklist | 単一の値を選択可能な列挙値のセットを含む、1 つの値のみを選択できる選択リスト。 |
| multipicklist | 複数の値を選択可能な列挙値のセットを提供する複数選択リスト。 |
| anyType | 次のいずれかの型の値を指定できます。string、picklist、boolean、int、double、percent、ID、date、dateTime、url または email。 |
FilteredLookupInfo
DescribeSObjectResult に関連付けられた Field オブジェクトの filteredLookupInfo 項目には、この項目に関連付けられたルックアップ検索条件に関する情報が含まれます。
このサブタイプは、API バージョン 31.0 以降で使用できます。
SOAPType
DescribeSObjectResult は、記述されるオブジェクトについての情報を提供する値の項目の配列を含む fields プロパティを返します。その項目の 1 つである soapType は、次の文字列値の 1 つを含みます。xsd: から始まるすべての値は、XML スキーマのプリミティブデータ型です。XML スキーマのプリミティブデータ型の詳細は、http://www.w3.org/TR/xmlschema-2/ の World Wide Web Consortium の公開資料『XML Schema Part 2: Data Types』を参照してください。
| 値 | 説明 |
|---|---|
| tns:ID | sObject に関連付けられた一意な ID。ID についての詳細は、「ID データ型」を参照してください。 |
| xsd:anyType | ID、boolean、double、integer、string、date または dateTime のいずれかを指定できます。 |
| xsd:base64Binary | Base 64 で符号化されたバイナリデータ |
| xsd:boolean | boolean の (true/false) の値。 |
| xsd:date | 日付の値。 |
| xsd:dateTime | 日付/時間の値。 |
| xsd:double | double 値。 |
| xsd:int | 整数値。 |
| xsd:string | 文字列。 |
PicklistEntry
DescribeSObjectResult で関連付けられた Field オブジェクトにおいて、picklistValues 項目は PicklistEntry プロパティの配列を含みます。各 PicklistEntry は次の文字列値の 1 つを含むことができます。詳細は、「picklist データ型」を参照してください。
| 名前 | 型 | 説明 |
|---|---|---|
| active | boolean | ユーザインターフェースの選択リスト項目のドロップダウンリストに項目を表示する必要があるか (true)、否か (false) を示します。 |
| validFor | byte[] | ビットセットで、各ビットはこの PicklistEntry が有効かどうかを表す制御値を示します。「連動選択リストについて」を参照してください。 |
| defaultValue | boolean | この項目が選択リストのデフォルト項目であるか (true)、否か (false) を示します。選択リスト内の 1 つのアイテムのみをデフォルトに設定できます。 |
| label | string | 選択リスト内のこのアイテムの名前を表示します。 |
| value | string | 選択リスト内のこのアイテムの値。 |
連動選択リストについて
連動選択リストは、制御項目と共に動作し、その値に検索条件を適用します。制御項目で選択した値は、連動選択リストの値にも適用されます。
連動選択リストには、対応する制御項目で選択された値に基づいて、使用可能な値が表示される、カスタムの選択リストまたは複数選択の選択リストの項目を使用できます。制御項目には、対応する 1 つ以上の連動項目で使用可能な値を制御する、標準またはカスタムの選択リスト (1 つ以上、200 以下の値を含む) やチェックボックスの項目を使用できます。
次の例では、制御選択リスト Beverage には 2 つの値があり、その値は連動選択リスト [飲み物の種類] に関連付けられています。
| 飲み物 | 飲み物の種類 |
|---|---|
| コーヒー | カフェインなし |
| レギュラー | |
| 紅茶 | カモミール |
| アールグレイ | |
| イングリッシュブレックファスト |
連動選択リストの値を表す各 PicklistEntry では、validFor にビットセットが含まれています。各ビットは、PicklistEntry が有効かどうかを表す制御値を示します。ビットは左から右へと読みます。
連動選択リストについての詳細は、Salesforce オンラインヘルプの「連動選択リスト」を参照してください。
連動選択リストのサンプル Java コード
1public void dependentPicklistSample() {
2 // inner class to decode a "validFor" bitset
3 class Bitset {
4 byte[] data;
5
6 public Bitset(byte[] data) {
7 this.data = data == null ? new byte[0] : data;
8 }
9
10 public boolean testBit(int n) {
11 return (data[n >> 3] & (0x80 >> n % 8)) != 0;
12 }
13
14 public int size() {
15 return data.length * 8;
16 }
17 }
18
19 try {
20 DescribeSObjectResult describeSObjectResult = connection.describeSObject("Case");
21 Field[] fields = describeSObjectResult.getFields();
22 // create a map of all fields for later lookup
23 Map fieldMap = new HashMap();
24 for (int i = 0; i < fields.length; i++) {
25 fieldMap.put(fields[i].getName(), fields[i]);
26 }
27 for (int i = 0; i < fields.length; i++) {
28 // check whether this is a dependent picklist
29 if (fields[i].getDependentPicklist()) {
30 // get the controller by name
31 Field controller = (Field)fieldMap.get(fields[i].getControllerName());
32 System.out.println("Field '" + fields[i].getLabel() + "' depends on '" +
33 controller.getLabel() + "'");
34 PicklistEntry[] picklistValues = fields[i].getPicklistValues();
35 for (int j = 0; j < picklistValues.length; j++) {
36 // for each PicklistEntry: list all controlling values for which it is valid
37 System.out.println("Item: '" + picklistValues[j].getLabel() +
38 "' is valid for: ");
39 Bitset validFor = new Bitset(picklistValues[j].getValidFor());
40 if (FieldType.picklist == controller.getType()) {
41 // if the controller is a picklist, list all
42 // controlling values for which this entry is valid
43 for (int k = 0; k < validFor.size(); k++) {
44 if (validFor.testBit(k)) {
45 // if bit k is set, this entry is valid for the
46 // for the controlling entry at index k
47 System.out.println(controller.getPicklistValues()[k].getLabel());
48 }
49 }
50 } else if (FieldType._boolean == controller.getType()) {
51 // the controller is a checkbox
52 // if bit 1 is set this entry is valid if the controller is checked
53 if (validFor.testBit(1)) {
54 System.out.println(" checked");
55 }
56 // if bit 0 is set this entry is valid if the controller is not checked
57 if (validFor.testBit(0)) {
58 System.out.println(" unchecked");
59 }
60 }
61 }
62 }
63 }
64 } catch (ConnectionException ce) {
65 ce.printStackTrace();
66 }
67}RecordTypeInfo
古いオブジェクト RecordTypeMapping のベースクラスです。このオブジェクトには、layoutId と picklistForRecordType 以外の RecordtypeMapping のすべての既存項目が含まれています。
NamedLayoutInfo
オブジェクトの名前付きレイアウトの名前。標準オブジェクトには定義された名前付きレイアウトを使用できます。名前付きレイアウトは、プロファイルとレコードタイプの両方で主レイアウトとは分離されています。レイアウト名についての詳細は、「describeLayout()」を参照してください。
| 名前 | 型 | 説明 |
|---|---|---|
| name | string | このレイアウトの名前。 |