none
DistributeCampaignActivityResponse no ejecuta un plugin registrado en el pre-send o create del Email RRS feed

  • Pregunta

  • Hola a Todos,

    Llevo días intentando encontrar una solución a este problema. Antes de todo explicaré un poco que hace el plugin.

    El cliente en que estoy quiere que una Campaña envíe los mensajes al correo email2. Hice un plugin registrado en el pre-send del email para que canviara el correo en el momento de enviar el mensaje. El plugin que he creado está funcionando porque cuando envío un mensaje manualmente des del CRM se ejecuta (Con el botón Enviar Email).

    El problema está cuando quiero enviar una campaña mediante un programa hecho a medida. Utilizo el DistributeCampaignActivityResponse (Esto envía la campaña y que a su vez envía los correos). Aquí es cuando el plugin registrado en el pre-send del email no se ejecuta. No entiendo muy bien el porque está pasando esto y he llegado a la conclusión que puede ser un bug del CRM.

    Muchas Gracias

    jueves, 18 de octubre de 2012 11:58

Todas las respuestas

  • Hola Kildu, intenta ver este ejemplo que hace lo que quieres: http://complexitykills.blogspot.com.es/2012/04/crm-4-or-crm-2011-change-recipient.html

    un saludo,


    Demian Adolfo Raschkovan Blog: http://crmtoall.blogspot.com

    jueves, 18 de octubre de 2012 14:02
    Moderador
  • Hola Demina, gracias por tu respuesta.

    Esta solución es la que me dieron en este foro y es la que he utilizado para crear el plugin. El plugin funciona correctamente porque si envío el email (Des de la entidad email, con el boton enviar) se cambia la dirección de correo.

    El PROBLEMA está cuando quiero que este plugin se ejecute en un programa que lanza una campaña que esta a su vez envía los correos. El plugin registrado en el pre-send del email no se lanza cuando ditribuyo una campaña 

    La distribución de campañas la hago mediante este código:

                                DistributeCampaignActivityRequest distributeCampaignRequest = new DistributeCampaignActivityRequest();
                                distributeCampaignRequest.CampaignActivityId = difusionId;
                                distributeCampaignRequest.Propagate = true;
                                distributeCampaignRequest.SendEmail = false;
                                distributeCampaignRequest.Owner = new Moniker();
                                distributeCampaignRequest.Owner.Id = tipoDifusion.ownerid.Value;
                                distributeCampaignRequest.Owner.Name = EntityName.systemuser.ToString();
        email sampleEmail = new email();//crear el email
          distributeCampaignRequest.Activity = sampleEmail;//añadir el email a la difusión
     

    DistributeCampaignActivityResponse distributeCampaignResponse = (DistributeCampaignActivityResponse)crm.Execute(distributeCampaignRequest); 

    jueves, 18 de octubre de 2012 19:11
  • Los emails se envían? porque en el código que pones hay una línea: distributeCampaignRequest.SendEmail = false; que debería ser true no?

    un saludo


    Demian Adolfo Raschkovan Blog: http://crmtoall.blogspot.com

    viernes, 19 de octubre de 2012 14:52
    Moderador