using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using MercatorUi;
using MercatorApi;
using System.Data;
using System.Linq;
namespace SigCli
{
public class Customizer : MercatorUi.ICustomizers.IFormLoadCustomizer, MercatorUi.ICustomizers.IFormClosedCustomizer,
MercatorUi.ICustomizers.IStringUpdater
{
string MercatorUi.ICustomizers.IStringUpdater.StringUpdate(string stringToModify)
{
string id = Api.StrExtract(stringToModify, "/*<ID>", "</ID>*/");
if (id == "TARCLI")
{
stringToModify = stringToModify.Replace(" as s_modele", " as s_modele, stock.s_cle1")
.Replace("tarcli (NOLOCK) where", "tarcli (NOLOCK) left join stock on tarcli.ar_ref = stock.s_id where");
}
return stringToModify;
}
public void FormLoadCustomize(Form form)
{
MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
MercatorUi.Forms.Sig.SigGrids.TarCli tarCli = sigForm.MovableControls.Values.OfType<MercatorUi.Forms.Sig.SigGrids.TarCli>().FirstOrDefault();
if (tarCli != null)
tarCli.AfterColumnsCreated += TarCli_AfterColumnsCreated;
}
public void FormClosedCustomize(Form form)
{
MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
MercatorUi.Forms.Sig.SigGrids.TarCli tarCli = sigForm.MovableControls.Values.OfType<MercatorUi.Forms.Sig.SigGrids.TarCli>().FirstOrDefault();
if (tarCli != null)
tarCli.AfterColumnsCreated -= TarCli_AfterColumnsCreated;
}
void TarCli_AfterColumnsCreated(object sender, EventArgs e)
{
MercatorUi.Forms.Sig.SigGrids.TarCli tarCli = (MercatorUi.Forms.Sig.SigGrids.TarCli)sender;
tarCli.Grid.Columns["S_CLE1"].HeaderText = "Code";
tarCli.Grid.Columns["S_CLE1"].ReadOnly = true;
tarCli.Grid.Columns["S_CLE1"].DisplayIndex = 2;
DataTable dt = (DataTable)tarCli.Grid.DataSource;
dt.Columns["S_CLE1"].ReadOnly = true;
}
}
}