Comment obtenir la valeur de retour d'une routine ou d'une méthode dans un shell Linux ?
InterSystems FAQ rubric
Sous Linux, utilisez la commande iris pour exécuter une routine ou une méthode à partir d'un shell et obtenir la valeur de retour.
Pour plus d'informations, veuillez consulter le document "About Instance Connections".
Voici un exemple de commande.
iris terminal instname [arguments]La valeur de retour d'un script shell peut être spécifiée à l'aide d'une variable spéciale utilisant la méthode Terminate() de la classe %SYSTEM.Proces à la fin du processus, plutôt qu'en spécifiant un argument dans la commande QUIT ou RETURN qui est spécifiée à la fin d'une routine ou d'une méthode. Utilisez la méthode consistant à renvoyer une valeur à $ ?
La valeur peut être comprise entre 0 et 255. Voici un exemple d'utilisation de la routine.
// Name the routine Test
start1() public {
hang5 // wait 5 seconds
//The number specified in the second argument is the value returned to the shell
set st=$system.Process.Terminate($JOB,11)
}
Voici un exemple d'exécution.
# iris session iris -U USER "start1^Test()"#echo $?
11Voici quelques exemples d'utilisation dans les méthodes de classe.
Class Test.Class1
{
ClassMethod test()
{
hang5// Wait 5 seconds//The number specified in the second argument is the value returned to the shellset st=$system.Process.Terminate($JOB,12)
}
}Voici un exemple d'exécution.
# iris session iris -U USER "##class(Test.Class1).test()"#echo $?
12