在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获取所有自定义字段,但仍然无法定位应该进行更改的位置

在Salesforce中映射线索的自定义字段

如果您想要一个简单的设计,基本上我会在静态映射器类中实现它。我们肯定需要更多的信息来帮助你,但缺少这些,这里有一些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});