Vous consultez une page technique concernant le logiciel de gestion Mercator. Celle-ci contient des informations spécifiques destinées aux professionnels de Mercator. Souhaitez-vous être redirigés vers des informations plus générales ?


   Ne plus poser cette question

Modifier le sujet et ajouter des pièces jointes dans un mail envoyé depuis un document de la gestion commerciale

0000002355     -      24/08/2016

L'objet de ce customizer est de modifier le sujet et d'ajouter des pièces jointes dans un mail envoyé depuis un document de la gestion commerciale. Il exploite l'évènement BeforeSendMail du BillingEngine. Cet évènement passe un BeforeSendMailEventArgs qui permet d'agir sur :

  • string Subject : le sujet du courriel
  • string Name : le nom du destinataire
  • string MailTo : l'adresse mail du destinataire
  • string Content : le contenu du message (source HTML si le contenu doit être formaté en HTML)
  • List<string> Attachments : liste des fichiers à attacher au mail

Si on veut bloquer l'envoi du mail, il suffit de mettre la propriété Cancel à true.

Cet évènement est levé que le mail soit envoyé via Outook ou via le CRM de Mercator.

Le code de ce customizer est le suivant :

Zoom
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Windows.Forms;
using MercatorApi;


namespace Billing
{
    public class Customizer : MercatorUi.ICustomizers.IBillingEngineCreated, MercatorUi.ICustomizers.IBillingEngineClosed
    {

        public void BillingEngineCreated(MercatorUi.Engine.Gescom.BillingEngine BillingEngine)
        {
            BillingEngine.BeforeSendMail += new MercatorUi.Engine.Gescom.BillingEngine.BeforeSendMailEventHandler(BillingEngine_BeforeSendMail);
        }

        public void BillingEngineClosed(MercatorUi.Engine.Gescom.BillingEngine BillingEngine)
        {
            BillingEngine.BeforeSendMail -= new MercatorUi.Engine.Gescom.BillingEngine.BeforeSendMailEventHandler(BillingEngine_BeforeSendMail);
        }

        void BillingEngine_BeforeSendMail(object sender, MercatorUi.Engine.Gescom.BillingEngine.BeforeSendMailEventArgs e)
        {
            e.Subject = "Nouveau sujet";
            e.Attachments.Add(@"C:\Test\test.html");
        }

        
    }
}