Pregunta Mapa Campos personalizados de clientes potenciales en Salesforce


Quería asignar los campos personalizados de plomo al mapa con el campo de contacto personalizado 'cuando se convierte utilizando binding.convertLead().

Debe replicar el comportamiento que estamos haciendo manualmente desde la UI cuando los campos personalizados de Lead se asignan con el contacto (Navegar a SetUp-> Customize-> Leads-> Fields luego en Lead Custom Fields & Relationships sección Map Lead Fields botón.)

Tengo el código C # para convertir un cable en contacto. Sin embargo, necesito asignar los campos personalizados de lead a los campos de contacto personalizados.

Me gusta por ejemplo:

1) Lead.Newsletter__c (Campo personalizado de la casilla de verificación escriba en el lead)

2) Contact.Newsletter__c (Campo personalizado de casilla de verificación escriba en contacto)

3) Ahora, si Lead.Newsletter__c se verifica luego cuando convierto cualquier cable en contacto, luego Contact.Newsletter__c debe verificarse automáticamente

Puedo buscar todos los campos personalizados usando describeSObjects de la clase de proxy WSDL de Partener, pero aún no se puede ubicar donde se deben realizar los cambios


32
2018-06-05 10:08


origen


Respuestas:


Si quieres un diseño simple, esencialmente lo haría en una clase de asignador estático. Definitivamente necesitamos más información para ayudarlo, pero a falta de eso, aquí hay algunos psuedocode (no código de producción) que debería ser un patrón de diseño suficiente.

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();
    }
}

luego para el uso:

//convert the lead to a contact prior to usage here, and get the resulting contact id
CustomMapper.leadToContact(myOldLead, myContactID);

Si realiza la conversión, inmediatamente después de realizar la asignación personalizada con una actualización, parecerá instantánea a los usuarios de todos modos. Sin más información, este es el mejor patrón de diseño genérico que podría recomendar.


1
2017-09-28 14:43



No ha proporcionado muchos detalles con los que trabajar, pero ¿puede utilizar una proyección de Linq?

por ejemplo, Leads.Select (x => new Contact {Newsletter = x.Newsletter});


0
2017-09-14 12:15