Personaliseer de herkenning van de gecodificeerde rekeningafschriften (CODA)

0000002323     -      17-11-2020

Het is mogelijk om de herkenning van gecodificeerde rekeningafschriften (CODA) aan te passen via het statisch event AfterCodaRecognition van MercatorUi.Forms.Accounting.AccountingBankCodaForm. Dit event treedt op aan het einde van de herkenning uitgevoerd door Mercator volgens de door de gebruiker geselecteerde modi. De eventArgs die aan de gedelegeerde wordt doorgegeven, bevat een eigenschap DataTable DtMoulements die toegang geeft tot de basistabel met rekeningafschriften.

Het voorbeeld hieronder toont een uitgangspunt voor de uitvoering om dit soort functie te plaatsen. De commentaar lijn staat ons toe om de structuur van de DataTable DtMouvements te zien.

Zoom
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorUi;

namespace Main
{
    public class Customizer : MercatorUi.ICustomizers.IExec
    {

        public void Main(MercatorUi.ICustomizers.ExecAction Action)
        {
            if (Action == MercatorUi.ICustomizers.ExecAction.DossierOpen)
                MercatorUi.Forms.Accounting.AccountingBankCodaForm.AfterCodaRecognition += new MercatorUi.Forms.Accounting.AccountingBankCodaForm.AfterCodaRecognitionEventHandler(AccountingBankCodaForm_AfterCodaRecognition);
            else if (Action == MercatorUi.ICustomizers.ExecAction.DossierClose)
                MercatorUi.Forms.Accounting.AccountingBankCodaForm.AfterCodaRecognition -= new MercatorUi.Forms.Accounting.AccountingBankCodaForm.AfterCodaRecognitionEventHandler(AccountingBankCodaForm_AfterCodaRecognition);
        }

        void AccountingBankCodaForm_AfterCodaRecognition(MercatorUi.Forms.Accounting.AccountingBankCodaForm.AfterCodaRecognitionEventArgs e)
        {
            //MercatorUi._Divers.ViewData(e.DtMouvements.Copy(), true);
            foreach (DataRow dr in e.DtMouvements.Rows)
            {
                if ((dr["communicall"].ToString() != "") && (dr["cpte"].ToString() == ""))
                {
                    string id_cli = "...";
                    MercatorUi.Forms.Accounting.AccountingBankCodaForm.CodaInsertAccount(MercatorUi.Sig._SigEnum.CLI, id_cli, dr);
                }
            }
        }
    }
}

 

Mercator voorziet ook een event BeforeCodaRecognition, die op dezelfde manier werkt, maar voor de herkenning van de rekeningen in de CODA bestanden.

Voorbeelden