撸了一小段代码,用于拷贝一个opportunity的字段值到另一个opportunity上,可供以后使用。
void mergeOpportunity (Opportunity oppCopyFrom, Opportunity oppCopyTo) {
Map<String, Schema.SObjectField> fieldMap = Schema.SObjectType.Opportunity.fields.getMap();
for (String fieldKey : fieldMap.keySet()) {
Schema.SObjectField fieldObj = fieldMap.get(fieldKey);
Schema.DescribeFieldResult fieldDescribe = fieldObj.getDescribe();
if (fieldDescribe.isUpdateable()) {
String fieldAPIName = fieldDescribe.getName();
Object val = oppCopyFrom.get(fieldAPIName);
if (val != null) {
oppCopyTo.put(fieldAPIName, val);
}
}
}
}