version 2004 (Modifiée)
DIALOGUE ({table; }formulaire)
Paramètre | Type | Description | |
table | Table | Table à laquelle appartient le formulaire ou | |
Table par défaut si ce paramètre est omis | |||
formulaire | Formulaire | Formulaire à afficher comme dialogue |
Description
La commande DIALOGUE présente le formulaire à l'utilisateur. Cette commande est souvent utilisée pour récupérer dans des variables des données fournies par l'utilisateur, ou pour lui présenter différentes informations, comme un choix d'options pour effectuer une opération.
Il est courant d'afficher le formulaire dans une fenêtre modale créée à l'aide de la commande Creer fenetre.
Voici un exemple typique de boîte de dialogue pouvant être affichée avec la commande DIALOGUE :
Utilisez DIALOGUE plutôt que CONFIRMER, ALERTE ou Demander lorsque les informations à afficher ou à recueillir sont plus complexes que celles que peuvent gérer ces trois autres commandes.
Note : Il est possible d'interdire la saisie dans les champs dans les boîtes de dialogue (et donc de limiter la saisie aux seules variables) via une option des Préférences de 4e Dimension (page Compatibilité). Cette restriction correspond au fonctionnement des anciennes versions de 4e Dimension.
A la différence d'AJOUTER ENREGISTREMENT et de MODIFIER ENREGISTREMENT, DIALOGUE n'utilise pas le formulaire entrée courant. Vous devez spécifier, dans le paramètre formulaire, le formulaire à utiliser. De même, aucun ensemble de boutons n'est placé par défaut s'ils sont omis dans le formulaire. Dans ce cas, seule la touche Echap (Windows) ou Esc (Mac OS) permet de quitter le formulaire.
Le dialogue est validé si l'utilisateur clique sur le bouton de validation ou appuie sur la touche Entrée, ou si la commande VALIDER est exécutée.
A noter que la validation n'entraîne pas la sauvegarde : si le dialogue comporte des champs, vous devez appeler explicitement la commande STOCKER ENREGISTREMENT pour stocker les données éventuellement modifiées.
Le dialogue est annulé si l'utilisateur clique sur le bouton d'annulation, appuie sur la touche d'annulation (Echap sous Windows, Esc sous Mac OS), ou si la commande NE PAS VALIDER est exécutée.
Après un appel à DIALOGUE, la variable système OK prend la valeur 1 si le dialogue est validé, et 0 sinon.
Exemple
L'exemple suivant illustre l'utilisation de la commande DIALOGUE pour spécifier des critères de recherche. Un formulaire personnalisé contenant les variables vNom et vPays permet à l'utilisateur de saisir ses critères :
Creer fenetre (10; 40; 370; 220) ` Créer une fenêtre modale DIALOGUE ([Société]; "Form Recherche") ` Afficher le dialogue de recherche FERMER FENETRE ` Nous n'avons plus besoin de la fenêtre Si (OK = 1) ` Si le dialogue est validé CHERCHER ([Société]; [Société]Nom = vNom; *) CHERCHER (& [Société]Payst = vPays) Fin de si
Variables et ensembles système
Si l'utilisateur valide le dialogue, la variable système OK prend la valeur 1, si le dialogue est annulé OK prend la valeur 0.
Référence
AJOUTER ENREGISTREMENT, Creer fenetre, NE PAS VALIDER, VALIDER.