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)
{
Globals.Main.BaseFormCreating += new MercatorUi.Main.BaseFormCreatingEventHandler(Main_BaseFormCreating);
}
else if (Action == MercatorUi.ICustomizers.ExecAction.DossierClose)
{
Globals.Main.BaseFormCreating -= new MercatorUi.Main.BaseFormCreatingEventHandler(Main_BaseFormCreating);
}
}
void Main_BaseFormCreating(object sender, MercatorUi.Main.BaseFormCreatingEventArgs e)
{
if (e.Form is MercatorUi.Forms.Accounting.AccountingDialogs.AccountingAskPostIntoAccouting)
{
MercatorUi.Forms.Accounting.AccountingDialogs.AccountingAskPostIntoAccouting accountingAskPostIntoAccouting = (MercatorUi.Forms.Accounting.AccountingDialogs.AccountingAskPostIntoAccouting)e.Form;
accountingAskPostIntoAccouting.FullInitialized += accountingAskPostIntoAccouting_FullInitialized;
}
}
private void accountingAskPostIntoAccouting_FullInitialized(object sender, EventArgs e)
{
MercatorUi.Forms.Accounting.AccountingDialogs.AccountingAskPostIntoAccouting accountingAskPostIntoAccouting = (MercatorUi.Forms.Accounting.AccountingDialogs.AccountingAskPostIntoAccouting)sender;
accountingAskPostIntoAccouting.FullInitialized -= accountingAskPostIntoAccouting_FullInitialized;
// rendre inaccessible et décocher la case à cocher d'un journal (ici VEN)
DataRow[] foundRows = accountingAskPostIntoAccouting.DtSequenc.Select("journal='VEN'");
if (foundRows.Length > 0)
{
MercatorUi._BaseClasses.DataRowNode node = (MercatorUi._BaseClasses.DataRowNode)foundRows[0]["node"];
node.Enabled = false;
node.Checked = false;
}
// décocher le noeud achats
accountingAskPostIntoAccouting.Tree.Nodes[1].Checked = false; // 1 car il s'agit du second noeud
}
}
}