Comment empêcher d'effacer un document de gestion commerciale ?

0000002803     -      15/06/2025

Cette programmation montre comment empêcher l'effacement d'un document en fonction du niveau indiqué dans la fiche de l'utilisateur.

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

 

Voir également : Dans une vente, empêcher la modification et la suppression d'une ligne déjà encodée.



Cookies fonctionnels : Cookies nécessaires à l'utilisation du site et cookies de préférence. Ils ne contiennent aucune donnée à caractère personnel. (En savoir plus)

Cookies statistiques : Captation de statistiques liées aux comportements des internautes. (En savoir plus)

Cookies marketing : Pour effectuer le suivi des visiteurs au travers des sites web, à des fins publicitaires. (En savoir plus)