根据字段名获取字段类型
public static String getFieldType(String objName, String fieldName){
Map<String, Schema.SObjectField> M = Schema.getGlobalDescribe().get(objName).getDescribe().fields.getmap();
Schema.SObjectField field = M.get(fieldName);
System.debug(LoggingLevel.DEBUG, '*** field: ' + field);
Schema.DisplayType fieldType = field.getDescribe().getType();
System.debug(LoggingLevel.DEBUG, '*** fieldType: ' + fieldType);
return String.valueOf(fieldType);
}
获取lookup对象上字段类型:
Schema.DescribeFieldResult dfr = contact.Account__r.CreatedDate.getDescribe();
System.debug(LoggingLevel.DEBUG, '*** dfr.getReferenceTo(): ' + dfr.getType());