Een kolom schrappen in het object ArtFou

0000002089     -      08-05-2013

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.

Dit 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;

namespace SigStock
{
public class Customizer : MercatorUi.ICustomizers.IFormLoadCustomizer,
                              MercatorUi.ICustomizers.IFormClosedCustomizer
    {

         public void FormLoadCustomize(System.Windows.Forms. Form WindowsForm)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm) WindowsForm;
             List < Control > l = sigForm.FindMovableControlsByType( typeof (MercatorUi.Forms.Sig.SigGrids.ArtFou));
             if (l.Count != 0)
            {
                MercatorUi.Forms.Sig.SigGrids.ArtFou artFou = (MercatorUi.Forms.Sig.SigGrids.ArtFou) l[0];
                artFou.AfterColumnsCreated += new MercatorUi.MovableControls.MovableGrid.AfterColumnsCreatedHandler(Artfou_AfterColumnsCreated);
            }
        }

         public void FormClosedCustomize(System.Windows.Forms. Form WindowsForm)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm) WindowsForm;
             List < Control > l = sigForm.FindMovableControlsByType( typeof (MercatorUi.Forms.Sig.SigGrids.ArtFou));
             if (l.Count != 0)
            {
                MercatorUi.Forms.Sig.SigGrids.ArtFou artFou = (MercatorUi.Forms.Sig.SigGrids.ArtFou) l[0];
                artFou.AfterColumnsCreated -= new MercatorUi.MovableControls.MovableGrid.AfterColumnsCreatedHandler(Artfou_AfterColumnsCreated);
            }
        }

         private void Artfou_AfterColumnsCreated( Object sender, EventArgs e) // De kolommen "korting", "korting2", "korting3", "korting4" en "prijs" schrappen
        {
            MercatorUi.Forms.Sig.SigGrids.ArtFou artFou = (MercatorUi.Forms.Sig.SigGrids.ArtFou) sender;
             if (!( (Globals.CurrentUser[ "dept" ].ToString()).Contains( "A" ) ||
                (Globals.CurrentUser[ "dept" ].ToString()).Contains( "M" ) ||
                (Globals.CurrentUser[ "dept" ].ToString()).Contains( "I" )
                ))
            {
                artFou.Grid.Columns[ "korting" ].Visible = false ;
                artFou.Grid.Columns[ "korting2" ].Visible = false ;
                artFou.Grid.Columns[ "korting3" ].Visible = false ;
                artFou.Grid.Columns[ "korting4" ].Visible = false ;
                artFou.Grid.Columns[ "prijs" ].Visible = false ;
            }
        }
    }
}


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