Salesforce Apex学习 : 利用Schema命名空间中的DescribeSObjectResult类型来获取sObject对象的基本信息

Posted qiaosx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Salesforce Apex学习 : 利用Schema命名空间中的DescribeSObjectResult类型来获取sObject对象的基本信息相关的知识,希望对你有一定的参考价值。

DescribeSObjectResult 对象的取得:

 //使用getDescribe方法和sObject token 
 Schema.DescribeSObjectResult mySObjDescribe = MySObject__c.sObjectType.getDescribe();
 //使用Schema的sObjectType静态变量 
 Schema.DescribeSObjectResult mySObjDescribe = Schema.SObjectType.MySObject__c; 

  

Schema.DescribeSObjectResult类包含了sObject 和其中 field 的所有描述用的基本属性.DescribeSObjectResult是非序列化的,并且在运行时是受验证的.

DescribeSObjectResult包含许多实例方法,参见:Apex Developer Guide 中的DescribeSObjectResult Class.

这里只对其中部分方法进行说明(RecordType相关):

getRecordTypeInfos()
返回一个List,包含当前Object所支持的所有的RecordTypes.当前用户不需要有对每个RecordType都有访问权限也可查看此List.

public List<Schema.RecordTypeInfo> getRecordTypeInfos()

getRecordTypeInfosByDeveloperName() (推荐使用,因为DeveloperName不可重复)

返回一个Map,匹配着DeveloperName(也就是Record Type Name)和其关联的RecordType.当前用户不需要有对每个RecordType都有访问权限也可查看此Map.

public Map<String,Schema.RecordTypeInfo> getRecordTypeInfosByDeveloperName()

getRecordTypeInfosById()

返回一个Map,匹配着RecordType ID和其关联的RecordType.当前用户不需要有对每个RecordType都有访问权限也可查看此Map.

public Map<ID, Schema.RecordTypeInfo> getRecordTypeInfosById()

getRecordTypeInfosByName()

返回一个Map,匹配着RecordType Label和其关联的RecordType.当前用户不需要有对每个RecordType都有访问权限也可查看此Map.

public Map<String, Schema.RecordTypeInfo> getRecordTypeInfosByName()

    

 

以上是关于Salesforce Apex学习 : 利用Schema命名空间中的DescribeSObjectResult类型来获取sObject对象的基本信息的主要内容,如果未能解决你的问题,请参考以下文章

salesforce零基础学习(七十四)apex:actionRegion以及apex:actionSupport浅谈

Salesforce学习之路-developer篇利用Visualforce Page实现页面的动态刷新案例学习

salesforce 零基础学习(六十一)apex:component简单使用以及图片轮转播放的实现

salesforce零基础学习(八十七)Apex 中Picklist类型通过Control 字段值获取Dependent List 值

salesforce 零基础学习(三十六)通过Process Builder以及Apex代码实现锁定记录( Lock Record)

salesforce 零基础学习(三十三)通过REST方式访问外部数据以及JAVA通过rest方式访问salesforce