Een kolom schrappen in het object ArtFou

0000002089     -      28-12-2024

Met de onderstaande voorbeeldcode kunnen de prijs- en kortingkolommen in het object ArtFou worden geschrapt. Deze schrapping zal enkel gelden voor de gebruikers waarvan het departement geen 'A', 'M' of 'I' bevat.

Nota: als deze voorwaarden niet nodig zijn (kolommen in alle gevallen verwijderd) dan kan dit zonder code via kolomregels (Hidden = true).

Het programmeren gebeurt via een customizer van het informatiebestand "Artikels", SigStock, die de volgende 2 interfaces implementeert:

De code ziet er als volgt uit:

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

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;
            MercatorUi.Forms.Sig.SigGrids.ArtFou artFou = sigForm.MovableControls.Values.OfType<MercatorUi.Forms.Sig.SigGrids.ArtFou>().FirstOrDefault();
            if (artFou != null)
                artFou.AfterColumnsCreated += Artfou_AfterColumnsCreated;
        }

        public void FormClosedCustomize(Form form)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
            MercatorUi.Forms.Sig.SigGrids.ArtFou artFou = sigForm.MovableControls.Values.OfType<MercatorUi.Forms.Sig.SigGrids.ArtFou>().FirstOrDefault();
            if (artFou != null)
                artFou.AfterColumnsCreated -= Artfou_AfterColumnsCreated;
        }

        private void Artfou_AfterColumnsCreated(object sender, EventArgs e)
        {
            MercatorUi.Forms.Sig.SigGrids.ArtFou artFou = (MercatorUi.Forms.Sig.SigGrids.ArtFou)sender;
            if (!(Globals.CurrentUserRecord.DEPT.Contains("A") ||
               Globals.CurrentUserRecord.DEPT.Contains("M") ||
               Globals.CurrentUserRecord.DEPT.Contains("I")
               ))
            {
                artFou.Grid.Columns["remise"].Visible = false;
                artFou.Grid.Columns["remise2"].Visible = false;
                artFou.Grid.Columns["remise3"].Visible = false;
                artFou.Grid.Columns["remise4"].Visible = false;
                artFou.Grid.Columns["prix"].Visible = false;
            }
        }
    }
}

Andere module met betrekking tot Artfou: Een kolom "Nettoprijs" toevoegen in het object ArtFou



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)