Actie Klantenfactuur per mail

0000002694     -      13-06-2017

Om deze actie te installeren:

Het bestand met de actie bevat volgende parameters: het versturen van een factuur naar de klant per mail indien het emailadres van de klant gedefinieerd is. Zoniet wordt de factuur afgedrukt.

 

In desbetreffende sequentie, op het tabblad “Evenementen” moet men:

  • Email selecteren in de zone “Afdruk”
  • In het gebied “Actie mail” de actie “Email Klantenfactuur” selecteren
  • Onzichtbaar aankruisen, zodat de email verstuurt wordt zonder dat het actie-scherm verschijnt (aanbevolen)

 

Indien de factuur afgedrukt moet worden omdat er geen emailadres gedefinieerd is, moet de customizer van de sequentie aangevuld worden met volgende code:

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

namespace Billing
{

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

        public void BillingEngineCreated(MercatorUi.Engine.Gescom.BillingEngine billingEngine)
        {
            billingEngine.SendingMail += BillingEngine_SendingMail;
        }

        public void BillingEngineClosed(MercatorUi.Engine.Gescom.BillingEngine billingEngine)
        {
            billingEngine.SendingMail -= BillingEngine_SendingMail;
        }

        void BillingEngine_SendingMail(object sender, MercatorUi.Engine.Gescom.BillingEngine.SendingMailEventArgs e)
        {
            MercatorUi.Engine.Gescom.BillingEngine billingEngine = (MercatorUi.Engine.Gescom.BillingEngine)sender;
            switch (billingEngine.Type)
            {
                case 1:
                    e.Recipients.Clear();
                    if (billingEngine.CLI["c_email"].ToString().Trim() != "")
                        e.Recipients.Rows.Add(new object[2] { billingEngine.CLI["c_email"], billingEngine.CLI["c_email"] });
                    else
                        e.Recipients.Rows.Add(new object[2] { "no-mail@mail.eu", "no-mail@mail.eu" });

                    break;
            }
        }
    }
}

 

Voor een volledig automatische afdruk moet u de printer selecteren in het rapport. Zo zal Mercator niet vragen welke printer u wilt gebruiken.

In de meegeleverde customizer houdt de actie rekening met de aanwezigheid van de module TACT. Als deze niet aanwezig is, wordt dit gewijzigd.



Te laden : 0000002694.zip (20 Kb - 18-12-2023)