public class SchemaExample {
public static void getFieldLabelsFromMap(Map<SObject, List> objectFieldMap) {
for (SObject obj : objectFieldMap.keySet()) {
// SObject에서 Describe 정보를 가져옵니다.
Schema.SObjectType objType = obj.getSObjectType();
Schema.DescribeSObjectResult objDescribe = objType.getDescribe();
// 필드 정보를 가져옵니다.
Map<String, Schema.SObjectField> fieldMap = objDescribe.fields.getMap();
// 해당 객체에 대한 필드 이름 목록을 가져옵니다.
List<String> fieldNames = objectFieldMap.get(obj);
for (String fieldName : fieldNames) {
if (fieldMap.containsKey(fieldName)) {
Schema.SObjectField field = fieldMap.get(fieldName);
Schema.DescribeFieldResult fieldDescribe = field.getDescribe();
String fieldLabel = fieldDescribe.getLabel();
System.debug('Object: ' + objDescribe.getName() + ', Field Name: ' + fieldName + ', Field Label: ' + fieldLabel);
} else {
System.debug('Field not found: ' + fieldName);
}
}
}
}
}