using MercatorApi;
using MercatorUi;
using System.Drawing;
using System.Windows.Forms;
namespace SigStock
{
public class Customizer : MercatorUi.ICustomizers.ISigCreated
{
public void SigCreated(MercatorUi.Sig.Sig Sig)
{
Sig.BeforeSearch += new MercatorUi.Sig.SigClasses.BeforeSearchEventHandler(Sig_BeforeSearch);
}
void Sig_BeforeSearch(object sender, MercatorUi.Sig.SigClasses.BeforeSearchEventArgs e)
{
if ((e.FormContext == null) || !(e.FormContext is MercatorUi.Forms.Billing.BillingForm) || (((MercatorUi.Forms.Billing.BillingForm)e.FormContext).BillingEngine.TypeVA != MercatorUi.Engine.Gescom.Billing.TypeVAEnum.V)) // on n'est pas dans un document de vente
return;
if (e.OriginalKey.Length != 13) // deze sleutel is zeker geen EAN13
return;
if (!e.OriginalKey.StartsWith("1234567")) // de zoeksleutel begint niet met 1234567
return;
double cents;
if (!double.TryParse(e.OriginalKey.Substring(7, 5), out cents)) // de verwachte prijs vanaf teken nr 8 is niet in numeriek formaat
return;
e.DesiredWhereClause = "(s_id='MY_S_ID')";
e.ForcedPricingInfosV = new MercatorUi.Engine.Gescom.BillingEngine.PricingInfosV();
e.ForcedPricingInfosV.Prix = cents / 100;
}
}
}