Le customizer proposé ici permet d'exclure les articles en sommeil (s_sommeil=0) dès l'ouverture du signalétique des articles. Cette programmation peut être adaptée facilement, sachant que l'expression du filtre peut être remplacée par toute clause SQL where valide pour la table STOCK.
Le code du customizer s'établit comme suit :
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorExtensions;
using MercatorUi;
namespace SigStock
{
public class Customizer : MercatorUi.ICustomizers.ISigCreated
{
public void SigCreated(MercatorUi.Sig.Sig sig)
{
sig.ApplyingAdditionalCriteria += sig_ApplyingAdditionalCriteria;
}
void sig_ApplyingAdditionalCriteria(object sender, MercatorUi.Sig.Sig.ApplyingAdditionalCriteriaEventArgs e)
{
if ((e.Context == MercatorUi.Sig.Sig.ApplyingAdditionalCriteriaContext.ShowSig) || (e.Context == MercatorUi.Sig.Sig.ApplyingAdditionalCriteriaContext.Navigate)
|| (e.Context == MercatorUi.Sig.Sig.ApplyingAdditionalCriteriaContext.AfterDelete)
|| (e.Context == MercatorUi.Sig.Sig.ApplyingAdditionalCriteriaContext.ShowBrowse)
)
e.ReqSql += (e.ReqSql == string.Empty ? "" : " and ") + "(s_sommeil=0)";
}
}
}