Aller au contenu

RTNSUBR

Renvoyer du sous-programme

En bref

La commande RTNSUBR renvoie le contrôle à la commande suivant immédiatement la commande CALLSUBR ayant appelé le sous-programme.

Syntaxe minimale

RTNSUBR

Paramètres

  • RTNVAL Valeur renvoyée par CPP

Astuce : dans une session 5250, tapez RTNSUBR puis F4 pour l'invite de saisie, et F1 sur un paramètre pour son aide.

Aide IBM i de la commande

Texte du F1, IBM i 7.5 en français (bibliothèque QSYS)

Où s'exécute :

  • Programme batch (*BPGM)
  • Programme interactif (*IPGM)
Compatible multitâche : Oui

La commande RTNSUBR renvoie le contrôle à la commande suivant immédiatement la commande CALLSUBR ayant appelé le sous-programme. La commande RTNSUBR doit être utilisée dans un sous-programme et plusieurs commandes RTNSUBR peuvent être utilisées dans un sous-programme. Si une valeur doit être renvoyée, par exemple, un code d'erreur, cette valeur doit pouvoir être stockée dans une variable CL de nombre entier signé à 4 octets. Le paramètre RTNVAL (Valeur renvoyée par CPP) peut être une variable ou une constante. Si aucun paramètre RTNVAL n'est défini, la valeur par défaut est zéro.

Restrictions :

  • Cette commande n'est admise que dans un sous-programme CL.

Paramètres

Mot-clé Description Valeurs possibles Remarques
RTNVAL Valeur renvoyée par CPP Entier, 0 Facultatif

Valeur renvoyée par CPP (RTNVAL)

Indique la valeur à renvoyer depuis le sous-programme. Il peut s'agir d'une variable ou d'une constante pouvant être stockée dans une variable CL de nombre entier signé à 4 octets. Si la commande CALLSUBR ayant appelé le sous-programme indiquait une Variable pour valeur retour, la variable est définie d'après cette valeur.

0
Le sous-programme renvoie la valeur zéro.
constante-entière
Indiquez la valeur entière de la constante pour la valeur de retour.
nom-variable-CL
Indiquez le nom de la variable CL devant contenir la valeur de retour provenant du sous-programme appelé. Il doit s'agir d'une variable CL de nombre entier signé.

Exemples

PGM
 :
SUBR SUBR1
 :
IF  (&A *LT 30)  THEN(RTNSUBR RTNVAL(-1))
 :
ENDSUBR
ENDPGM

Ce sous-programme CL est quitté à l'aide de la commande RTNSUBR si &A est inférieur à 30, avec une valeur de retour -1.

© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.