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.