Article
· Fév 9 2m de lecture

Utilisation de %Library.Prompt dans IRIS pour l'interaction avec le terminal

Interagir avec les utilisateurs dans le terminal : Guide d'utilisation de %Library.Prompt dans IRIS

 

Vous êtes-vous déjà demandé comment des commandes telles que ^DATABASE interagissent avec les utilisateurs dans le terminal ? Ou peut-être écrivez-vous une routine d'automatisation et souhaitez-vous spécifier des options directement à partir du terminal. Heureusement, la classe %Library.Prompt d'IRIS offre un moyen simple de le faire !

Saisie d'une chaîne de caractères

Pour une saisie de base, comme demander à l'utilisateur de fournir un chemin d'accès à un fichier ou un espace de noms, utilisez le code suivant :

set status = ##class(%Library.Prompt).GetString("Input filepath:", .path)

Ce code invite l'utilisateur à saisir une chaîne de caractères, qui peut aller des chemins d'accès aux fichiers aux espaces de noms. La réponse obtenue sera stockée dans la variable path.

Sasie d'un nombre

Pour demander une entrée numérique, comme le nombre de cœurs, vous pouvez utiliser :

set status = ##class(%Library.Prompt).GetNumber("Input number of cores:",.number)

%Library.Prompt s'assure automatiquement que l'entrée est numérique. Nous pouvons également spécifier un nombre minimum et maximum à utiliser

set status = ##class(%Library.Prompt).GetNumber("Input number of cores (1-8):",.number,0,8)

Options par défaut

Vous pouvez également définir des options par défaut. Par exemple, pour que la réponse soit "oui" par défaut, il suffit de définir au préalable la variable de réponse :

set answer = 1
set status = ##class(%Library.Prompt).GetYesNo("Accept default settings?", .answer)

ici, la valeur par défaut de answer est 1 (oui) si l'utilise ne saisit rien.

Menus

Pour des entrées plus complexes, telles que la sélection dans un menu, vous pouvez utiliser des méthodes telles que GetArray() ou GetMenu():

#include %syPrompt
 set options(1) = "Option 1" 
 set options(2) = "Option 2" 
 do ##class(%Library.Prompt).GetArray("Select deployment type:", .result, .options, , , , $$$InitialDisplayMask)

Cette approche présente une liste d'options à l'utilisateur  le flag $$$InitialDisplayMask affiche le menu avant la sélection.

Ces outils de ligne de commande simplifient considérablement l'écriture et l'interaction avec des routines plus complexes. Pour plus d'informations, consultez la documentation IRIS.

Discussion (0)1
Connectez-vous ou inscrivez-vous pour continuer