在Salesforce中映射线索的自定义字段
本文关键字:自定义 字段 线索 映射 Salesforce | 更新日期: 2023-09-27 18:07:04
当使用binding.convertLead()
转换时,我想将lead的自定义字段映射为带有联系人'的自定义字段。
当Lead的自定义字段与联系人映射时,它应该复制我们从UI手动执行的行为(导航到SetUp->Customize->Leads-> fields 然后在Lead自定义字段&;关系部分Map Lead Fields按钮。)
我有c#代码转换为接触铅。但是,我需要将lead的自定义字段映射到contact的自定义字段。
例如:
1) Lead.Newsletter__c
(引线复选框类型自定义字段)
2) Contact.Newsletter__c
(触点复选框类型自定义字段)
3)现在,如果Lead.Newsletter__c
被检查,那么当我转换任何引线接触时,那么Contact.Newsletter__c
应该自动检查。
我能够通过使用partner WSDL代理类的describeSObjects
获取所有自定义字段,但仍然无法定位应该进行更改的位置
如果您想要一个简单的设计,基本上我会在静态映射器类中实现它。我们肯定需要更多的信息来帮助你,但缺少这些,这里有一些psuedocode(不是生产代码)应该是一个足够的设计模式。
public static class CustomMapper
{
public static void leadToContact(Lead lead, ID contactID)
{
var contact = new Contact(contactID);
///do mapping here
///eg
///returnval.Newsletter__c = Lead.Newsletter__c;
contact.save();
}
}
则使用:
//convert the lead to a contact prior to usage here, and get the resulting contact id
CustomMapper.leadToContact(myOldLead, myContactID);
如果您执行转换,那么在执行带有更新的自定义映射之后立即执行转换,那么无论如何,它对用户来说似乎是即时的。在没有更多信息的情况下,这是我可以推荐的最好的通用设计模式。
您没有提供很多细节,但是您可以使用Linq投影吗?
如线索。Select(x=>new Contact{Newsletter = x.Newsletter});