Newer Version Available
Schema クラス
名前空間
Schema メソッド
Schema のメソッドは次のとおりです。すべてのメソッドが静的です。
getGlobalDescribe()
署名
public static Map<String, Schema.SObjectType> getGlobalDescribe()
戻り値
型: Map<String, Schema.SObjectType>
使用方法
詳細は、「すべての sObject へのアクセス」を参照してください。
例
1Map<String, Schema.SObjectType> gd =
2Schema.getGlobalDescribe();describeDataCategoryGroups(sObjectNames)
署名
public static List<Schema.DescribeDataCategoryGroupResult> describeDataCategoryGroups(String sObjectNames)
使用方法
次の sObject 名のいずれかを指定できます。
- KnowledgeArticleVersion: 記事タイプに関連するカテゴリグループを取得します。
- Question: 質問に関連するカテゴリグループを取得します。
describeDataCategoryGroups の使用についての詳細およびコード例は、「sObject に関連付けられたすべてのデータカテゴリへのアクセス」を参照してください。
記事および質問についての詳細は、Salesforce オンラインヘルプの「記事と翻訳の管理」および「アンサーの概要」を参照してください。
describeSObjects(sObjectTypes)
署名
public static List<Schema.DescribeSObjectResult> describeSObjects(List<String> sObjectTypes)
戻り値
使用方法
このメソッドは、Schema.sObjectType トークンの getDescribe メソッドと類似しています。getDescribe メソッドと異なり、このメソッドでは sObject 型を動的に指定して、複数の sObject を一度に記述できます。
最初に getGlobalDescribe をコールして組織のすべてのオブジェクトのリストを取得します。その後リスト内を反復処理し、describeSObjects を使用して個々のオブジェクトのメタデータを取得します。
例
1Schema.DescribeSObjectResult[] descResult = Schema.describeSObjects(
2 new String[]{'Account','Contact'});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 は、デバッグ出力に書き出されます。
1swfobject.registerObject("clippy.codeblock-3", "9");
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17// Get tab set describes for each app
18List<Schema.DescribeTabSetResult> tabSetDesc = Schema.describeTabs();
19
20// Iterate through each tab set describe for each app and display the info
21for(DescribeTabSetResult tsr : tabSetDesc) {
22 String appLabel = tsr.getLabel();
23 System.debug('Label: ' + appLabel);
24 System.debug('Logo URL: ' + tsr.getLogoUrl());
25 System.debug('isSelected: ' + tsr.isSelected());
26 String ns = tsr.getNamespace();
27 if (ns == '') {
28 System.debug('The ' + appLabel + ' app has no namespace defined.');
29 }
30 else {
31 System.debug('Namespace: ' + ns);
32 }
33
34 // Display tab info for the Sales app
35 if (appLabel == 'Sales') {
36 List<Schema.DescribeTabResult> tabDesc = tsr.getTabs();
37 System.debug('-- Tab information for the Sales app --');
38 for(Schema.DescribeTabResult tr : tabDesc) {
39 System.debug('getLabel: ' + tr.getLabel());
40 System.debug('getColors: ' + tr.getColors());
41 System.debug('getIconUrl: ' + tr.getIconUrl());
42 System.debug('getIcons: ' + tr.getIcons());
43 System.debug('getMiniIconUrl: ' + tr.getMiniIconUrl());
44 System.debug('getSobjectName: ' + tr.getSobjectName());
45 System.debug('getUrl: ' + tr.getUrl());
46 System.debug('isCustom: ' + tr.isCustom());
47 }
48 }
49}
50// Example debug statement output
51// DEBUG|Label: Sales
52// DEBUG|Logo URL: https://na1.salesforce.com/img/seasonLogos/2014_winter_aloha.png
53// DEBUG|isSelected: true
54// DEBUG|The Sales app has no namespace defined.// DEBUG|-- Tab information for the Sales app --
55// (This is an example debug output for the Accounts tab.)
56// DEBUG|getLabel: Accounts
57// DEBUG|getColors: (Schema.DescribeColorResult[getColor=236FBD;getContext=primary;getTheme=theme4;],
58// Schema.DescribeColorResult[getColor=236FBD;getContext=primary;getTheme=theme3;],
59// Schema.DescribeColorResult[getColor=236FBD;getContext=primary;getTheme=theme2;])
60// DEBUG|getIconUrl: https://na1.salesforce.com/img/icon/accounts32.png
61// DEBUG|getIcons: (Schema.DescribeIconResult[getContentType=image/png;getHeight=32;getTheme=theme3;
62// getUrl=https://na1.salesforce.com/img/icon/accounts32.png;getWidth=32;],
63// Schema.DescribeIconResult[getContentType=image/png;getHeight=16;getTheme=theme3;
64// getUrl=https://na1.salesforce.com/img/icon/accounts16.png;getWidth=16;])
65// DEBUG|getMiniIconUrl: https://na1.salesforce.com/img/icon/accounts16.png
66// DEBUG|getSobjectName: Account
67// DEBUG|getUrl: https://na1.salesforce.com/001/o
68// DEBUG|isCustom: falseGroupStructures(pairs)
署名
public static List<Schema.DescribeDataCategoryGroupStructureResult> describeDataCategory GroupStructures(List<Schema.DataCategoryGroupSobjectTypePair> pairs)
パラメータ
- pairs
- 型: List<Schema.DataCategoryGroupSobjectTypePair>
- pairs 引数は、Schema.DataCategoryGroupSobjectTypePairs をクエリする 1 つ以上のカテゴリグループおよびオブジェクトです。指定されたオブジェクトの表示可能なデータカテゴリが取得されます。データカテゴリグループ表示設定についての詳細は、Salesforce オンラインヘルプの「カテゴリグループ表示設定について」を参照してください。