Deze customizer laat zien hoe de sequenties die worden weergegeven in het dialoogvenster van de historiek van documenten van het Commercieel beheer met code kunnen worden gefilterd. Dit wordt gedaan door een customizer HistCli die de interface IDialogLoadCustomizer implementeert. Het gebruikt de eigenschap FilterPredicate van het formulier, die een predikaatfunctie kan ontvangen waarvan de parameter van het type MercatorUi.Forms.Hist.HistDialogs.HistAskDoc.SequencDescriptor is, met daarin:
(De andere informatie in de sequentie moet worden opgehaald, indien van toepassing, uit de tabel SEQUENC van de database)
Deze predikaatfunctie moet een booleaanse waarde terugsturen:
- true : het element wordt weergegeven
- false : het element wordt niet weergegeven
Bij het installeren van de functie is het noodzakelijk om de methode RefreshListViewSequenc aan te roepen, aangezien deze wordt geïnstalleerd na de eerste weergave uitgevoerd door Mercator. Nadien is het niet meer nodig om deze methode aan te roepen, behalve als de predikaatfunctie rekening houdt met elementen die er buiten staan.
Hieronder een voorbeeld van code :
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorUi;
namespace HistCli
{
public class Customizer : MercatorUi.ICustomizers.IDialogLoadCustomizer
{
public void DialogLoadCustomize(System.Windows.Forms.Form form)
{
MercatorUi.Forms.Hist.HistDialogs.HistAskDoc histAskDoc = (MercatorUi.Forms.Hist.HistDialogs.HistAskDoc)form;
histAskDoc.FilterPredicate = (sequencDescriptor) =>
{
if (sequencDescriptor...)
return true;
else
return false;
};
histAskDoc.RefreshListViewSequenc();
}
}
}