Il est possible de personnaliser la reconnaissance des extraits de compte codifiés (CODA) via l'évènement statique AfterCodaRecognition de MercatorUi.Forms.Accounting.AccountingBankCodaForm. Cet évènement est levé à la fin de la reconnaissance effectuée par Mercator selon les modes sélectionnés par l'utilisateur. L'eventArgs passé au délégué contient une propriété DataTable DtMouvements qui donne accès à la table de base des extraits de compte.
L'exemple ci-dessous reprend un point de départ pour mettre en place ce type de fonctionnalité. La ligne en commentaire permet de voir la structure de la dataTable DtMouvements.
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 met aussi à disposition un event BeforeCodaRecognition, qui fonctionne de façon semblable, mais avant la reconnaissance des comptes dans les fichiers CODA.
Exemples