using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorUi;
using System.Windows.Forms;
using MercatorExtensions;
namespace SigDest
{
public class Customizer : MercatorUi.ICustomizers.ISigCreated
{
public void SigCreated(MercatorUi.Sig.Sig sig)
{
sig.BeforeRecordDelete += Sig_BeforeRecordDelete;
}
void Sig_BeforeRecordDelete(object sender, MercatorUi.Sig.Sig.BeforeRecordDeleteEventArgs e)
{
string reqSql = "declare @ret bit \r\n"
+ "if exists(select * from ACTIONS (NOLOCK) where (module='DEST') and (id_sig=@id)) \r\n"
+ " set @ret=1 \r\n"
+ "else \r\n"
+ " set @ret=0 \r\n"
+ "select @ret as ret";
DataSet ds = Api.Zselect(Globals.RepData, reqSql, new MercatorSqlParam("@id", e.Record["d_id"], SqlDbType.Char));
if (ds == null) // on a rencontré une erreur SQL
{
e.Cancel = true;
}
else if (ds.Tables[0].Rows[0].Value<bool>("ret"))
{
Dialogs.Stop("Vous ne pouvez pas supprimer cette fiche car des actions y sont liées !");
e.Cancel = true;
}
}
}
}