Choisir

4D - Documentation   Français   English   German   Español   4D v11 SQL, Commandes par thèmes   4D v11 SQL, Liste alphabétique des commandes   4D v11 SQL, Constantes par thèmes   Retour   Précédent   Suivant

version 11


Choisir (critère; valeur{; valeur2; ...; valeurN}) Expression

ParamètreTypeDescription
critèreBooléen | EntierValeur à tester
valeurExpressionValeurs possibles
RésultatExpressionValeur de critère

Description

La commande Choisir retourne l'une des valeurs passées dans les paramètres valeur, valeur2, etc. en fonction de la valeur du paramètre critère.

Vous pouvez passer un paramètre critère de type booléen ou numérique :

Si critère est un booléen, Choisir retourne valeur si le booléen vaut Vrai et valeur2 si le booléen vaut Faux. Dans ce cas, la commande attend exactement trois paramètres : critère, valeur et valeur2.

Si critère est un entier, Choisir retourne la valeur dont la position correspond à critère. Attention, la numérotation des valeurs débute à 0 (la position de valeur est 0). Dans ce cas, la commande attend au minimum deux paramètres : critère et valeur.

La commande accepte tous les types de données pour le(s) paramètre(s) valeur, hormis les images, pointeurs, BLOBS et tableaux. Veillez cependant à ce que toutes les valeurs passées soient du même type, 4D n'effectue pas de vérification sur ce point.

Si aucune valeur ne correspond à critère, Choisir retourne une valeur "nulle" en rapport avec le type du paramètre valeur (par exemple 0 pour le type numérique, "" pour le type chaîne, etc.).

Cette commande permet de générer du code concis en remplacement des tests du type "Au cas ou" sur plusieurs lignes (cf. exemple 2). Elle est également très utile dans les emplacements où des formules peuvent être exécutées : éditeur de recherches, appliquer une formule, éditeur d'états rapides, colonne calculée de list box, etc.

Exemples

(1) Voici une utilisation type de la commande avec un critère booléen :

   vTitre:=Choisir([Personne]Masculin;"Mr";"Madame")

Ce code est strictement équivalent à :

   Si([Personne]Masculin)
      vTitre:="Mr"
   Sinon
      vTitre:="Madame"
   Fin de si

(2) Voici une utilisation type de la commande avec un critère numérique :

   vStatut:=Choisir([Personne]Statut;"Célibataire";"Marié";"Veuf";"Divorcé")

Ce code est strictement équivalent à :

   Au cas ou
      :([Personne]Statut=0)
         vStatut:="Célibataire"
      :([Personne]Statut=1)
         vStatut:="Marié"
      :([Personne]Statut=2)
         vStatut:="Veuf"
      :([Personne]Statut=3)
         vStatut:="Divorcé"
   Fin de cas

4D - Documentation   Français   English   German   Español   4D v11 SQL, Commandes par thèmes   4D v11 SQL, Liste alphabétique des commandes   4D v11 SQL, Constantes par thèmes   Retour   Précédent   Suivant