Beheer een vervangartikel via code

0000003113     -      24-10-2022

DE code hieronder toont hoe je een artikel kan vervangen door een ander artikel bij het oproepen van het artikel in een document van het commercieel beheer. Bij het ingeven van het artikel AAA, zal er een melding worden gegeven dat dit artikel vervangen wordt door artikel BBB.

Zoom
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Windows.Forms;
using MercatorApi;
using MercatorExtensions;
using MercatorUi;
using System.Linq;

// <CompileWithRoslyn />

namespace Billing
{
    public class Customizer : MercatorUi.ICustomizers.IBillingEngineCreated, MercatorUi.ICustomizers.IBillingEngineClosed
    {
        public void BillingEngineCreated(MercatorUi.Engine.Gescom.BillingEngine billingEngine)
        {
            billingEngine.BeforeInsertItem += billingEngine_BeforeInsertItem;
        }

        public void BillingEngineClosed(MercatorUi.Engine.Gescom.BillingEngine billingEngine)
        {
            billingEngine.BeforeInsertItem -= billingEngine_BeforeInsertItem;
        }

        void billingEngine_BeforeInsertItem(object sender, MercatorUi.Engine.Gescom.BillingEngine.BeforeInsertItemEventArgs e)
        {
            if (e.StockRecord.S_ID.TrimEnd() == "AAA")
            {
                Dialogs.Stop("Het artikel AAA zal vervangen worden door artikel BBB!");
                e.ReplacementItem = "BBB";
            }
        }
    }
}