获取Lookup字段的关联对象,以及后续一些操作
String objectName = 'ObjectName';
String fieldName = 'FieldName';
// 获得lookup field 的objectresult
Schema.DescribeFieldResult f = Schema.getGlobalDescribe()
.get(objectName)
.getDescribe()
.fields
.getMap()
.get(fieldName)
.getDescribe();
// 获得sobjecttype
for(Schema.SObjectType reference : f.getReferenceTo()) {
System.debug('Lookup reference object name: ' + reference.getDescribe().getName());
System.debug('Lookup reference object label: ' + reference.getDescribe().getLabel());
}
// 所有obejcttype
Map <String, Schema.SObjectType> schemaMap = Schema.getGlobalDescribe();
// 根据object的api name获得所有field
Map <String, Schema.SObjectField> fieldMap = schemaMap.get('ObjectAPIName').getDescribe().fields.getMap();