Commande DIALOG

Crée une boîte de dialogue personnalisée invitant de manière interactive les utilisateurs à saisir une ou plusieurs valeurs d'introduction de script. Chaque valeur d'introduction est stockée dans une variable nommée.

Remarque

L'utilisation de la commande DIALOG pour saisir des mots de passe n'est pas sécurisée. Il faudrait utiliser la Commande PASSWORD à la place.

La commande DIALOG n'est pas prise en charge par les outils d'analyse d'AX Serveur.

Vous pouvez créer une boîte de dialogue interactive de base avec la Commande ACCEPT.

Astuce

La façon la plus simple de créer des boîtes de dialogue personnalisées est d'utiliser le Générateur de boîte de dialogue. Pour plus d'informations, consultez la section Création de boîtes de dialogue personnalisées.

Syntaxe

DIALOG (DIALOG TITLE texte_titre WIDTH pixels HEIGHT pixels) (BUTTONSET TITLE "&OK;&Annuler" AT pos_x pos_y <WIDTH pixels> <HEIGHT pixels> DEFAULT num_élément <HORZ>) <[syntaxe_libellé]|[syntaxe_zone_texte]|[syntaxe_case_cocher]|[syntaxe_bouton_option]|[syntaxe_liste_déroulante]|[syntaxe_liste_élément_projet]> <...n>
syntaxe_libellé ::=
(TEXT TITLE texte_titre AT pos_x pos_y <WIDTH pixels> <HEIGHT pixels> <CENTER|RIGHT>)
syntaxe_zone_texte ::=
(EDIT TO nom_var AT pos_x pos_y <WIDTH pixels> <HEIGHT pixels> <DEFAULT chaîne>)
syntaxe_case_cocher ::=
(CHECKBOX TITLE texte_titre TO nom_var AT pos_x pos_y <WIDTH pixels> <HEIGHT pixels> <CHECKED>)
syntaxe_bouton_option ::=
(RADIOBUTTON TITLE liste_valeur TO nom_var AT pos_x pos_y <WIDTH pixels> <HEIGHT pixels> <DEFAULT num_élément> <HORZ>)
syntaxe_liste_déroulante ::=
(DROPDOWN TITLE liste_valeur TO nom_var AT pos_x pos_y <WIDTH pixels> <HEIGHT pixels> <DEFAULT num_élément>)
syntaxe_liste_élément_projet ::=
(ITEM TITLE catégorie_élément_projet TO nom_var AT pos_x pos_y <WIDTH pixels> <HEIGHT pixels> <DEFAULT chaîne>)

Paramètres

Paramètres généraux

Nom Description
DIALOG TITLE texte_titre

Crée la boîte de dialogue principale et le titre de la boîte de dialogue.

texte_titre doit être indiqué sous forme de chaîne entre guillemets.

BUTTONSET TITLE "&OK;&Annuler"

Les libellés des boutons OK et Annuler dans la boîte de dialogue.

Généralement, les valeurs ne doivent pas être modifiées, mais, le cas échéant, assurez-vous que la valeur positive précède la valeur négative. Par exemple : "&Oui;&Non"

WIDTH pixels

Largeur du contrôle individuel, ou largeur de la boîte de dialogue (si indiquée), du contrôle DIALOG.

La valeur est indiquée en pixels. Si aucune valeur n'est indiquée pour un contrôle, la largeur est calculée en fonction de la valeur la plus longue contenue par le contrôle.

HEIGHT pixels

Hauteur du contrôle individuel, ou hauteur de la boîte de dialogue (si indiquée), du contrôle DIALOG.

La valeur est indiquée en pixels.

AT pos_xpos_y

Emplacement du coin supérieur gauche du contrôle dans la boîte de dialogue personnalisée.

  • pos_x est la distance horizontale en pixels à partir du côté gauche de la boîte de dialogue.
  • pos_y est la distance verticale en pixels à partir du haut de la boîte de dialogue.
DEFAULT num_élément

Valeur numérique correspondant à la valeur BUTTONSET que vous souhaitez sélectionner en tant qu'élément par défaut.

Par exemple, si les valeurs BUTTONSET sont « &OK;&Annuler », indiquez DEFAULT 1 pour sélectionner OK par défaut.

HORZ

optionnel

Affiche les valeurs du contrôle BUTTONSET à l'horizontale. Les valeurs s'affichent verticalement par défaut.

Remarque

Pour la plupart des types de contrôle, la commande DIALOG crée une variable pour stocker l'entrée utilisateur. Vous ne pouvez pas utiliser des caractères qui n'existent pas en anglais, tels que é, dans les noms de variables utilisées pour substituer des variables. Les noms de variables contenant des caractères n'existant pas en anglais provoqueront l'échec du script.

Par défaut, certaines des variables DIALOG sont créées en tant que variables de type caractère. Si vous utilisez une variable de type caractère pour stocker des valeurs de type numérique ou DateHeure, vous devez convertir la variable dans le type de données requis dans le traitement suivant du script. Pour plus d'informations, consultez la section Type de données d'entrée.

Paramètres de libellé

Nom Description
TEXT Crée un libellé de texte pour identifier, informer ou donner une instruction.
TITLE texte_titre

Libellé du contrôle.

texte_titre doit être indiqué sous forme de chaîne entre guillemets.

CENTER | RIGHT

optionnel

Alignement du texte dans le contrôle.

Si vous ignorez CENTER ou RIGHT, l'alignement à gauche est utilisé par défaut.

Paramètres de zone de texte

Nom Description

EDIT

Crée une zone de texte pour une saisie de l'utilisateur.
TO nom_var

Nom de la variable de type caractère qui stocke la saisie spécifiée par l'utilisateur.

Si la variable existe déjà, la valeur spécifiée est attribuée. Si la variable n'existe pas, elle est créée, puis la valeur spécifiée est attribuée.

DEFAULT chaîne

optionnel

Chaîne de texte par défaut à afficher dans le contrôle.

chaîne doit être indiquée sous forme de chaîne entre guillemets.

Paramètres de case à cocher

Nom Description

CHECKBOX

Crée une case à cocher pour présenter une option à l'utilisateur.
TITLE texte_titre

Libellé du contrôle.

texte_titre doit être indiqué sous forme de chaîne entre guillemets.

TO nom_var

Nom de la variable logique qui stocke la valeur Vrai ou Faux spécifiée par l'utilisateur.

Si la variable existe déjà, la valeur spécifiée est attribuée. Si la variable n'existe pas, elle est créée, puis la valeur spécifiée est attribuée.

CHECKED

optionnel

Définit le contrôle à activer par défaut.

Paramètres de case d'option

Nom Description

RADIOBUTTON

Crée des cases d'option pour présenter à l'utilisateur des options s'excluant mutuellement.
TITLE liste_valeur

La liste de valeurs affichées pour le contrôle.

Les valeurs doivent être indiquées sous forme de chaîne entre guillemets. Séparez chaque valeur par un point-virgule (;).

TO nom_var

Le nom de la variable numérique qui stocke la position numérique de la valeur de la case d'option sélectionnée par l'utilisateur.

Si la variable existe déjà, la valeur spécifiée est attribuée. Si la variable n'existe pas, elle est créée, puis la valeur spécifiée est attribuée.

DEFAULT num_élément

optionnel

Valeur numérique correspondant à l'élément de liste que vous souhaitez sélectionner en tant qu'élément par défaut.

Par exemple, si la liste_valeur est "Rouge;Vert;Bleu", indiquez DEFAULT 2 pour sélectionner Vert par défaut.

HORZ

optionnel

Affiche les valeurs du contrôle à l'horizontale. Les valeurs s'affichent verticalement par défaut.

Paramètres de la liste déroulante

Nom Description

DROPDOWN

Crée une liste déroulante pour présenter une liste d'options à l'utilisateur.
TITLE liste_valeur

La liste de valeurs affichées pour le contrôle.

Les valeurs doivent être indiquées sous forme de chaîne entre guillemets. Séparez chaque valeur par un point-virgule (;).

TO nom_var

Nom de la variable de type caractère qui stocke la valeur de liste déroulante sélectionnée par l'utilisateur.

Si la variable existe déjà, la valeur spécifiée est attribuée. Si la variable n'existe pas, elle est créée, puis la valeur spécifiée est attribuée.

DEFAULT num_élément

optionnel

Valeur numérique correspondant à l'élément de liste que vous souhaitez sélectionner en tant qu'élément par défaut.

Par exemple, si la liste_valeur est "Rouge;Vert;Bleu", indiquez DEFAULT 2 pour sélectionner Vert par défaut lorsque la liste déroulante s'affiche.

Paramètres de liste d'éléments de projet

Nom Description

ITEM

Crée une liste d'éléments de projet pour présenter à l'utilisateur une liste d'éléments de projet Analytics, comme des champs.
TITLE catégorie_élément_projet

Catégorie d'élément de projet à inclure dans le contrôle.

Vous pouvez indiquer une ou plusieurs catégories. L'utilisateur peut sélectionner une valeur unique dans la liste des éléments du projet.

Entourez catégorie_élément_projet de guillemets, sans espace ni signe de ponctuation entre les catégories.

Pour obtenir les codes que vous avez utilisés pour spécifier des catégories, reportez-vous à la section Codes pour les catégories d'élément de projet.

Remarque

Ne mélangez pas des catégories différentes dans le même contrôle ITEM, sauf si vous avez une raison de le faire. Par exemple, ne mélangez pas les tables et les champs. La liste d'éléments de projet ainsi créée va peut-être mettre l'utilisateur en difficulté.

TO nom_var

Nom de la variable de type caractère qui stocke le nom de l'élément de projet sélectionné par l'utilisateur.

Si la variable existe déjà, la valeur spécifiée est attribuée. Si la variable n'existe pas, elle est créée, puis la valeur spécifiée est attribuée.

DEFAULT chaîne

optionnel

Nom exact de l'élément de projet que vous souhaitez sélectionner par défaut.

chaîne doit être indiquée sous forme de chaîne entre guillemets.

Exemples

Inviter l'utilisateur à utiliser une table et un script

Dans votre script, vous devez inviter l'utilisateur à sélectionner la table et le script Analytics à utiliser pour exécuter une analyse.

Vous indiquez que la table Inventaire_Metaphore_2012 du projet ACL_Demo.acl est sélectionnée par défaut comme table Analytics, mais que l'utilisateur peut sélectionner n'importe quelle table dans le projet.

Le script à exécuter doit également être sélectionné dans la liste de scripts du projet Analytics :

DIALOG (DIALOG TITLE "Analyse inventaire" WIDTH 500 HEIGHT 200 )(BUTTONSET TITLE "&OK;&Annuler" AT 370 12 DEFAULT 1 ) (TEXT TITLE "Choisissez les éléments de projet Analytics à analyser." AT 50 16 ) (TEXT TITLE "Table:" AT 50 50 ) (ITEM TITLE "f" TO "v_table" AT 50 70 DEFAULT "Inventaire_Metaphore_2012" ) (TEXT TITLE "Script :" AT 230 50 ) (ITEM TITLE "b" TO "v_script" AT 230 70 )

Autres exemples

Remarques

Pour plus d'informations sur le fonctionnement de cette commande, consultez Création de boîtes de dialogue personnalisées.

Interactivité

La commande DIALOG permet de créer un script interactif. Pendant le traitement de la commande DIALOG, le script s'interrompt et une boîte de dialogue invite l'utilisateur à saisir des entrées utilisées par Analytics lors d'un traitement ultérieur.

Vous pouvez créer des boîtes de dialogue indépendantes qui invitent l'utilisateur à entrer un seul élément à la fois ou bien créer une seule boîte de dialogue qui invite à entrer plusieurs éléments.

ACCEPT et DIALOG

La commande ACCEPT vous permet de créer une boîte de dialogue interactive de base qui peut avoir un ou plusieurs des types de contrôles suivants :

  • zone de texte
  • liste de projets

Pour une interactivité de base, ACCEPT peut suffire. Pour plus d'informations, consultez la section Commande ACCEPT.

Codes pour les catégories d'élément de projet

Utilisez les codes suivants pour indiquer la catégorie d'élément de projet à afficher dans une liste d'éléments de projet.

Catégories de projet

Code

Catégorie

f

Tables

Md(s)

Scripts

i

Index

r

Vues et rapports

w

Environnements_de_travail

Catégories de champ

Code

Catégorie

C

Champs de type caractère

N

Champs numériques

D

Champs de type DateHeure

L

Champs logiques

Catégories de variable

Code

Catégorie

c

Variables de type caractère

n

Variables numériques

d

Variables de type DateHeure

l

Variables logiques

Type de données d'entrée

Certains des contrôles de la commande DIALOG stockent l'entrée de l'utilisateur dans des variables de type caractère. Si une saisie numérique ou de type DateHeure est requise, vous pouvez utiliser les fonctions VALUE( ) ou CTOD( ) pour convertir le contenu d'une variable de type caractère en valeur numérique ou en valeur DateHeure :

SET FILTER TO BETWEEN(%v_champ_date%; CTOD(%v_date_début%); CTOD(%v_date_fin%))

Dans l'exemple, les dates de début et de fin pour ce filtre sont stockées sous type de valeurs caractère. Elles doivent être converties en valeurs date afin d'être utilisées avec un champ date utilisant un type de données DateHeure.

Entourer le nom de la variable par des symboles de pourcentage (%) remplace la valeur de type caractère contenue par la variable pour le nom de la variable. La fonction CTOD( ) convertit alors la valeur de type caractère en une valeur de date.

Place de la commande DIALOG

Dans la mesure du possible, il est recommandé de placer toutes les commandes DIALOG au début d'un script. Si vous demandez la saisie de toutes les données au début, le script peut s'exécuter sans entrave une fois les informations requises saisies par l'utilisateur.

Remarque

Vous ne pouvez pas utiliser la commande DIALOG dans la commande GROUP.