Vous consultez une page technique concernant le logiciel de gestion Mercator. Celle-ci contient des informations spécifiques destinées aux professionnels de Mercator. Souhaitez-vous être redirigés vers des informations plus générales ?


   Ne plus poser cette question

Créer une nouvelle fiche de signalétique dans une fenêtre modale

0000002616     -      29/03/2016

La programmation illustrée ici montre comment créer une nouvelle fiche de signalétique dans une fenêtre modale. Comme cette création est faite dans une SigForm présentée sous forme de boîte de dialogue, il est possible d'insérer cette création de fiche dans un processus plus long, qui peut se poursuivre dès que la nouvelle fiche a été correctement créée. Le code utilise essentiellement la méthode NewRecordInModalForm de la classe MercatorUi.Sig.Sig.

L'exemple est donné ici pour le signalétique des clients et un code placé dans un bouton C# du ruban. Notez que la méthode NewRecordInModalForm  renvoie une DataRow avec le contenu de la fiche créée et null si l'utilisateur a choisi d'annuler cette création.

Zoom
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorController;
using MercatorUi;

namespace Mercator.Ribbon.ButtonsCodes
{
    public static class Script
    {

        public static void Exec(DevComponents.DotNetBar.ButtonItem clickedButtonItem)
        {
            // enter your customized code here
            MercatorUi.Sig.Sig sigCli = MercatorUi.Sig._SigsStatic.SigByModule(MercatorUi.Sig._SigEnum.CLI);
            Dictionary<string, object> forcedValues = new Dictionary<string, object>(); // permet de passer des valeurs supplémentaires, en plus des valeurs par défaut
            forcedValues.Add("C_REGIME", 6);
            forcedValues.Add("C_CAT1", "Catégorie 1");
            DataRow newCli = sigCli.NewRecordInModalForm(forcedValues);
            if (newCli != null)
                MercatorUi.Dialogs.Stop(string.Format("Vous venez de créer le client \"{0}\" !", newCli["c_nom"]));
        }
    }
}