In het commercieel beheer, creatie van nieuwe documenten zonder wijzigingen toe te staan

0000002298     -      21-03-2016

Standaard in Mercator, bevat het recht "Wijzigen" altijd de mogelijkheid om te crëeeren en later te bewerken. De hieronder beschreven code zal de gebruiker de mogelijkheid ontnemen om bestaande documenten te wijzigen.

Deze programmatie is opgebouwd rond de Billing customizer die de interface MercatorUi.ICustomizers.IBillingEngineCreatedimplementeert.

De voorwaarde die bepaalt of het document niet gewijzigd mag worden, of wanneer het opnieuw wordt geopend bevind zich op lijn 16 (if...). Het kan makkelijk worden gewijzigd. In ons voorbeeld, zal het opnieuw geopende document niet aanpasbaar zijn als het veld Libre1 de actieve gebruiker bevat en Readonly is.

De code is als volgt:

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


namespace Billing
{
    public class Customizer : MercatorUi.ICustomizers.IBillingEngineCreated
    {

        public void BillingEngineCreated(MercatorUi.Engine.Gescom.BillingEngine BillingEngine)
        {
            if ((MercatorUi.Globals.CurrentUser["libre1"].ToString() == "ReadOnly") && !BillingEngine.IsNew && !BillingEngine.ReadOnly)
                BillingEngine.ReadOnly = true;
        }
    }
}