using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorExtensions;
using MercatorUi;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Linq;
using MercatorUi.Engine.Gescom;
namespace Billing
{
public class Customizer : MercatorUi.ICustomizers.IBillingEngineCreated, MercatorUi.ICustomizers.IBillingEngineClosed
{
public void BillingEngineCreated(BillingEngine billingEngine)
{
billingEngine.EvaluatingQtyForLinkedDocLineUpdate += BillingEngine_EvaluatingQtyForLinkedDocLineUpdate;
billingEngine.HandlingLinkedDocLine += BillingEngine_HandlingLinkedDocLine;
}
public void BillingEngineClosed(BillingEngine billingEngine)
{
billingEngine.EvaluatingQtyForLinkedDocLineUpdate -= BillingEngine_EvaluatingQtyForLinkedDocLineUpdate;
billingEngine.HandlingLinkedDocLine -= BillingEngine_HandlingLinkedDocLine;
}
private void BillingEngine_EvaluatingQtyForLinkedDocLineUpdate(object sender, BillingEngine.EvaluatingQtyForLinkedDocLineUpdateEventArgs e)
{
if (e.LignesVRecord.Q_RESERVE.CompareTo(e.LignesVRecord2.Q_RESERVE, Globals.N_DEC_Q) != 0)
e.ShouldUpdateOppositeDocument = true;
}
private void BillingEngine_HandlingLinkedDocLine(object sender, BillingEngine.HandlingLinkedDocLineEventArgs e)
{
e.LignesARecordOpposite.Q = e.LignesVRecordSource.Q - e.LignesVRecordSource.Q_RESERVE;
}
}
}