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

Newer Version Available

This content describes an older version of this product. View Latest

Schema クラス

スキーマの Describe Information を取得するメソッドが含まれます。

名前空間

System

Schema のメソッド

Schema のメソッドは次のとおりです。すべてのメソッドが静的です。

getGlobalDescribe()

すべての sObject �� (キー) の対応付けを、組織で定義された標準オブジェクトおよびカスタムオブジェクトの sObject トークン (値) に返します。

署名

public static Map<String, Schema.SObjectType> getGlobalDescribe()

戻り値

型: Map<String, Schema.SObjectType>

使用方法

sObject へのアクセスについての詳細は、「すべての sObject へのアクセス」を参照してください。

1Map<String, Schema.SObjectType> gd = 
2Schema.getGlobalDescribe();

describeDataCategoryGroups(sObjectNames)

指定したオブジェクトに関連するカテゴリグループのリストを返します。

署名

public static List<Schema.DescribeDataCategoryGroupResult> describeDataCategoryGroups(List<String> sObjectNames)

パラメータ

sObjectNames
型: List<String>

戻り値

型: List<Schema.DescribeDataCategoryGroupResult>

使用方法

次の sObject 名のいずれかを指定できます。

  • KnowledgeArticleVersion — 記事タイプに関連するカテゴリグループを取得します。
  • Question — 質問に関連するカテゴリグループを取得します。

describeDataCategoryGroups の使用についての詳細およびコード例は、「sObject に関連付けられたすべてのデータカテゴリへのアクセス」を参照してください。

記事および質問についての詳細は、Salesforce オンラインヘルプの「記事および翻訳の操作」を参照してください。

describeSObjects(sObjectTypes)

指定された sObject または sObject の配列のメタデータ (項目リストとオブジェクトプロパティ) を表します。

署名

public static List<Schema.DescribeSObjectResult> describeSObjects(List<String> sObjectTypes)

パラメータ

sObjectTypes
型: List<String>
sObjectTypes 引数は、記述する sObject 型名のリストです。

使用方法

このメソッドは、Schema.sObjectType トークンの getDescribe メソッドと類似しています。getDescribe メソッドと異なり、このメソッドでは sObject 型を動的に指定して、複数の sObject を一度に記述できます。

最初に getGlobalDescribe をコールして組織のすべてのオブジェクトのリストを取得します。その後リスト内を反復処理し、describeSObjects を使用して個々のオブジェクトのメタデータを取得します。

1Schema.DescribeSObjectResult[] descResult = Schema.describeSObjects(
2                                                                   new String[]{'Account','Contact'});

describeSObjects(SObjectTypes, SObjectDescribeOptions)

指定された sObject の項目リストやオブジェクトプロパティなどのメタデータを表します。このメソッドのデフォルトの describe オプションは SObjectDescribeOptions.DEFERRED で、これは最初に使用するときに記述属性の遅延初期化を行うことを示します。

署名

public static List<Schema.DescribeSObjectResult> describeSObjects(List<String> SObjectTypes, Object SObjectDescribeOptions)

パラメータ

SObjectTypes
型: List<String>
記述する sObject 型のリスト。
SObjectDescribeOptions
型: Object
sObject で使用される有効な describe オプション。

戻り値

型: List<Schema.DescribeSObjectResult>

describeTabs()

実行ユーザが利用可能な標準アプリケーションとカスタムアプリケーションの情報を返します。

署名

public static List<Schema.DescribeTabSetResult> describeTabs()

使用方法

アプリケーションとは、タブのグループのことです。たとえば、標準 Salesforce アプリケーションとして「セールス」と「サービス」があります。

describeTabs メソッドは、アプリケーションを別のユーザインターフェースで表示するのに必要な最小限のメタデータを返します。通常このコールは、Salesforce データを別のユーザインターフェース (モバイルアプリケーションや接続アプリケーションなど) で表示するためにパートナーアプリケーションからコールされます。

Salesforce ユーザインターフェースでは、ページ上部の Salesforce アプリケーションメニューに示されているとおり、ユーザには標準的なアプリケーションへのアクセス権があります (カスタムアプリケーションへのアクセス権があることもあります)。メニューでアプリケーション名を選択すると、表示されるアプリケーションをいつでも切り替えることができます。

[すべてのタブ] タブは、前述のタブのリストには含まれません。

メモ

この例では、describeTabs メソッドをコールする方法を示します。

1Schema.DescribeTabSetResult[] tabSetDesc = Schema.describeTabs();

次の長めの例は、Sales アプリケーションの Describe メタデータ情報を取得する方法を示しています。この例では、各タブのアイコンの URL、タブがカスタムであるかどうか、および色などについての Describe Information を取得します。Describe Information は、デバッグ出力に書き出されます。

1// Get tab set describes for each app
2List<Schema.DescribeTabSetResult> tabSetDesc = Schema.describeTabs();
3
4// Iterate through each tab set describe for each app and display the info
5for(DescribeTabSetResult tsr : tabSetDesc) {
6    String appLabel = tsr.getLabel();
7    System.debug('Label: ' + appLabel);
8    System.debug('Logo URL: ' + tsr.getLogoUrl());
9    System.debug('isSelected: ' + tsr.isSelected());
10    String ns = tsr.getNamespace();
11    if (ns == '') {
12        System.debug('The ' + appLabel + ' app has no namespace defined.');
13    }
14    else {
15        System.debug('Namespace: ' + ns);
16    }
17    
18    // Display tab info for the Sales app
19    if (appLabel == 'Sales') {
20        List<Schema.DescribeTabResult> tabDesc = tsr.getTabs();
21        System.debug('-- Tab information for the Sales app --');
22        for(Schema.DescribeTabResult tr : tabDesc) {
23            System.debug('getLabel: ' + tr.getLabel());
24            System.debug('getColors: ' + tr.getColors());
25            System.debug('getIconUrl: ' + tr.getIconUrl());
26            System.debug('getIcons: ' + tr.getIcons());
27            System.debug('getMiniIconUrl: ' + tr.getMiniIconUrl());
28            System.debug('getSobjectName: ' + tr.getSobjectName());
29            System.debug('getUrl: ' + tr.getUrl());
30            System.debug('isCustom: ' + tr.isCustom());
31        }
32    }
33}
34
35// Example debug statement output
36// DEBUG|Label: Sales
37// DEBUG|Logo URL: https://MyDomainName.my.salesforce.com/img/seasonLogos/2014_winter_aloha.png
38// DEBUG|isSelected: true
39// DEBUG|The Sales app has no namespace defined.// DEBUG|-- Tab information for the Sales app --
40// (This is an example debug output for the Accounts tab.)
41// DEBUG|getLabel: Accounts
42// DEBUG|getColors: (Schema.DescribeColorResult[getColor=236FBD;getContext=primary;getTheme=theme4;], 
43//       Schema.DescribeColorResult[getColor=236FBD;getContext=primary;getTheme=theme3;], 
44//       Schema.DescribeColorResult[getColor=236FBD;getContext=primary;getTheme=theme2;])
45// DEBUG|getIconUrl: https://MyDomainName.my.salesforce.com/img/icon/accounts32.png
46// DEBUG|getIcons: (Schema.DescribeIconResult[getContentType=image/png;getHeight=32;getTheme=theme3;
47//       getUrl=https://MyDomainName.my.salesforce.com/img/icon/accounts32.png;getWidth=32;], 
48//       Schema.DescribeIconResult[getContentType=image/png;getHeight=16;getTheme=theme3;
49//       getUrl=https://MyDomainName.my.salesforce.com/img/icon/accounts16.png;getWidth=16;])
50// DEBUG|getMiniIconUrl: https://MyDomainName.my.salesforce.com/img/icon/accounts16.png
51// DEBUG|getSobjectName: Account
52// DEBUG|getUrl: https://MyDomainName.my.salesforce.com/001/o
53// DEBUG|isCustom: false

describeDataCategoryGroupStructures(pairs,topCategoriesOnly)

要求で指定されたオブジェクトのデータカテゴリ構造と共に使用可能なカテゴリグループを返します。

署名

public static List<Schema.DescribeDataCategoryGroupStructureResult> describeDataCategory GroupStructures(List<Schema.DataCategoryGroupSobjectTypePair> pairs,Boolean topCategoriesOnly)

パラメータ

pairs
型: List<Schema.DataCategoryGroupSobjectTypePair>
pairs 引数は、Schema.DataCategoryGroupSobjectTypePairs を照会する 1 つ以上のカテゴリグループおよびオブジェクトです。指定されたオブジェクトの表示可能なデータカテゴリが取得されます。データカテゴリグループ表示設定についての詳細は、Salesforce ヘルプの「データカテゴリの表示設定」を参照してください。
topCategoriesOnly

型: Boolean

true を使用すると表示可能な最上位のカテゴリのみが返され、false を使用すると表示可能なすべてのカテゴリが返されます。表示可能なカテゴリは、ユーザのデータカテゴリグループ表示設定に応じて決まります。データカテゴリグループ表示設定についての詳細は、Salesforce ヘルプの「データカテゴリの表示設定」を参照してください。