Aller au contenu

SELECT

Sélectionner

Select

En bref

La commande SELECT (Sélectionner) lance une structure de contrôle pour permettre le traitement conditionnel des groupes de commandes.

Cette commande ne prend aucun paramètre : on la tape seule, SELECT.

Astuce : dans une session 5250, tapez SELECT 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 SELECT (Sélectionner) lance une structure de contrôle pour permettre le traitement conditionnel des groupes de commandes. Le groupe de sélection se termine par une commande ENDSELECT et doit contenir une ou plusieurs commandes WHEN et, éventuellement, une commande OTHERWISE.

Lorsque cette commande est entrée, la condition indiquée à la première commande WHEN est évaluée. Si cette condition est vraie, la commande indiquée au paramètre THEN est exécutée. Après traitement de la commande ou du groupe de commandes, le contrôle passe à la commande ENDSELECT correspondante. Une seule commande WHEN ou la commande OTHERWISE sera traitée au sein d'un groupe SELECT.

Si la première condition WHEN n'est pas vraie, les commandes WHEN ultérieures sont évaluées dans l'ordre indiqué. Si aucune des conditions de la commande WHEN n'est vraie, le contrôle passe à la commande indiquée dans OTHERWISE, le cas échéant.

Restrictions :

  • Cette commande est valide uniquement dans un programme CL ou une procédure CL ILE.
  • Jusqu'à 25 niveaux d'imbrication de commandes SELECT sont admis.

Aucun paramètre n'est prévu pour cette commande.

Exemples

DCL   VAR(&INT)  TYPE(*INT)  LEN(4)
 :
SELECT
  WHEN   COND(&INT *LT 0)  THEN(DO)
    :  (groupe de commandes CL)
  ENDDO
  WHEN   COND(&INT *EQ 0)    /* Ne rien faire si égal à zéro */
  WHEN   COND(&INT *GT 0)  THEN(CHGVAR &INT (&INT - 1)
ENDSELECT

Le groupe de commandes SELECT évalue les conditions des commandes WHEN dans leur ordre d'apparition. Lorsque le résultat d'un paramètre COND est vérifié, la commande indiquée au paramètre THEN est traitée. Après le traitement de cette commande, le contrôle passe à la commande qui suit ENDSELECT.

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