Bij het dupliceren van een artikelfiche, moeten de daaraan gekoppelde gegevens van de leverancier niet worden gekopieerd

0000002142     -      15-01-2025

Dit voorbeeld toont hoe u kan voorkomen dat de gegevens van het tabblad 'Leveranciers' van de artikelfiche worden gekopieerd bij het kopiëren van de fiche.
Het volstaat om de interface van MercatorUi.ICustomizers.IFormLoadCustomizer te implementeren om het event AfterRecordDuplicate te gebruiken.

Broncode:

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

namespace SigStock
{
    public class Customizer : MercatorUi.ICustomizers.IFormLoadCustomizer, MercatorUi.ICustomizers.IFormClosedCustomizer
    {
        public void FormLoadCustomize(Form form)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
            sigForm.Sig.AfterRecordDuplicate += SigStock_AfterRecordDuplicate;
        }

        public void FormClosedCustomize(Form form)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
            sigForm.Sig.AfterRecordDuplicate -= SigStock_AfterRecordDuplicate;
        }

        void SigStock_AfterRecordDuplicate(object sender, MercatorUi.Sig.Sig.AfterRecordDuplicateEventArgs e)
        {
            MercatorUi.Forms.Sig.SigGrids.ArtFou artFou = e.SigForm.MovableControls.Values.OfType<MercatorUi.Forms.Sig.SigGrids.ArtFou>().FirstOrDefault();
            if (artFou != null)
            {
                artFou.Grid.CurrentCell = null;
                DataTable dt = (DataTable)artFou.Grid.DataSource;
                dt.Rows.Clear();
            }
        }
    }
}


Functionele cookies: Cookies die nodig zijn voor het gebruik van de website en voorkeurscookies. Ze bevatten geen persoonsgegevens. (Meer informatie)

Analytische cookies: Verzamelen van statistieken met betrekking tot het gedrag van internetgebruikers. (Meer informatie)

Marketingcookies: Om bezoekers op verschillende websites te volgen voor advertentiedoeleinden. (Meer informatie)