Répondre à: Composant de changement d’état de formulaire

  • DavidZed

    Membre
    11 décembre 2023 à 20h16

    Hello,

    Tout d’abord, tu ne pourras pas ajouter de manière dynamique un formulaire par son nom d’objet, je te suggère de créer une collection au démarrage de l’application, qui contient une table du type :

    ClearCollect( colFormList;

    [

    {Formulaire: “Form1”; Mode : FormMode.View };

    {Formulaire: “Form2”; Mode : FormMode.View };

    {…}

    ] )

    Il faudra activer l’option permettant au composant d’accéder aux sources de données de l’appli

    <figure class=”image”></figure>

    Du coup tu n’auras plus besoin des contrôles en 1,

    En 2 il faudra mettre une table avec les différents modes :

    [

    FormMode.New; FormMode.View; FormMode.Edit; FormMode.Disabled

    ]

    et en valeur par défaut, celle sélectionnée dans la galerie :

    GalleryForms.Selected.Mode

    dans le bouton “Changer”, patcher la collection avec le mode sélectionné en 2 :

    Patch(colFormList ; GalleryForms.Selected ; { Mode: DropDownFormMode.Selected.Value} )

    et enfin dans le paramètre .Mode de chaque formulaire, mettre un lookup pour récupérer le mode correspondant au formulaire ( Avec un coalesce pour palier aux éventuelles erreurs) :

    Coalesce( Lookup(colFormList ; Form=”Nom de ce formulaire” ;Mode) ; FormMode.View)

    • Cette réponse a été modifiée Il y a 1 année, 1 mois par  DavidZed.