Hoe kan je voorkomen dat een document uit het commercieel beheer gewist wordt?

0000002803     -      15-06-2025

Deze programmatie toont hoe je het uitwissen van een document afhankelijk kan maken van het niveau van de gebruiker.

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

namespace Billing
{
    public class Customizer : MercatorUi.ICustomizers.IFormLoadCustomizer, MercatorUi.ICustomizers.IFormClosedCustomizer
    {
        public void FormLoadCustomize(Form form)
        {
            MercatorUi.Forms.Billing.BillingForm billingForm = (MercatorUi.Forms.Billing.BillingForm)form;
            billingForm.FormClosable = false;
            billingForm.FormClosing += BillingForm_FormClosing;
            MercatorUi.BoutonsPro.BleuPro bleuPro1 = (MercatorUi.BoutonsPro.BleuPro)billingForm.Controls["BleuPro1"];
            foreach (MercatorUi.BoutonsPro.ButtonXPro btn in bleuPro1.Controls.OfType<MercatorUi.BoutonsPro.ButtonXPro>())
            {
                if (btn.Name == "valider")
                {
                    foreach (MercatorUi.BoutonsPro.ButtonItemPro c1 in btn.SubItems)
                        if (c1.Name == "saveonly")
                            c1.Enabled = false;
                }
                else if ((btn.Name == "annuler") && (Globals.CurrentUserRecord.NIVEAU < 90))
                    btn.Enabled = false;
            }
        }

        public void FormClosedCustomize(Form form)
        {
            form.FormClosing -= BillingForm_FormClosing;
        }

        void BillingForm_FormClosing(object sender, FormClosingEventArgs e)
        {
            MercatorUi.Forms.Billing.BillingForm billingForm = (MercatorUi.Forms.Billing.BillingForm)sender;
            billingForm.FormClosable = (billingForm.BillingEngine.LIGNES.Rows.Count == 0) || billingForm.Saved;
        }
    }
}

 

Zie ook: In een verkoop vermijden dat een artikellijn gewijzigd/verwijderd kan worden.



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)