DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Syntaxe WLangage / Opérateurs
  • Utilisation
  • Règles
  • Notes
  • Variable numérique
  • Variable chaîne
  • Priorité
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Opérateurs logiques
Utilisation
Les opérateurs logiques sont les suivants :
  • ET
Multiplication logique. Les conditions composées de ET sont toujours évaluées dans leur totalité (même si la première condition est fausse).
  • _ET_
Multiplication logique. Les conditions composées de _ET_ sont évaluées de manière optimisée. Si la première partie de l'expression est fausse, la suite de l'expression n'est pas évaluée.
  • OU
Addition logique. Les conditions composées de OU sont toujours évaluées dans leur totalité (même si la première condition est vraie).
  • _OU_
Addition logique. Les conditions composées de _OU_ sont évaluées de manière optimisée. Si la première partie de l'expression est vraie, la suite de l'expression n'est pas évaluée.
  • PAS
Négation logique.
Les opérateurs logiques permettent d'effectuer des opérations logiques et de construire des conditions.
SI Client.Ville = "Montpellier" ET Client.Civilité = "Monsieur" ALORS
HommeMontpellier ++ // Nombre d'hommes habitant à Montpellier
FIN
SI Client.Ville = "Montpellier" OU Client.Ville = "Lyon" ALORS
MontpellierLyon ++ // Nombre de clients habitant soit à Montpellier,
// soit à Lyon
FIN
Règles
Vrai ET Vrai : retourne Vrai
Vrai ET Faux : retourne Faux
Vrai OU Vrai : retourne Vrai
Vrai OU Faux : retourne Vrai
PAS Vrai : retourne Faux
Notes

Variable numérique

Si une variable numérique est manipulée comme un opérateur logique (booléen), "0" est équivalent à Faux. Toute autre valeur est équivalente à Vrai.
Par exemple, les deux lignes de code suivantes sont équivalentes :
SI NumTest ALORS ...
SI NumTest <> 0 ALORS ...
La première syntaxe (SI NumTest ALORS) doit être préférée à la seconde syntaxe.

Variable chaîne

Si une variable chaîne est manipulée comme un opérateur logique, une erreur du WLangage sera générée.
Par exemple, la syntaxe : "SI ChTest ALORS" retournera une erreur lors de l'exécution (mais pas lors de la compilation du projet).

Priorité

Les opérateurs ET et OU, _ET_ et _OU_ ont la même priorité. Pour donner des priorités à ces opérateurs, il suffit de mettre des parenthèses.
Par exemple :
SI (A = 2 ET B > 3) OU (A = 2 ET B < 0) ALORS ...
Exceptions :
  • Dans les filtres SQL et les requêtes SQL, l'opérateur ET est prioritaire sur l'opérateur OU.
    Par exemple :
    Condition1 ET Condition2 OU Condition3

    sera évalué ainsi :
    (Condition1 ET Condition2) OU Condition3
  • L'addition logique optimisée _OU_ ne doit pas être utilisée si une des expressions à comparer utilise le résultat d'une fonction pouvant renvoyer NULL.
    Par exemple, la comparaison suivante :
    SI AppelFonction() = "Valeur1" _OU_ AppelFonction() = "Valeur2" ALORS...

    devra être remplacée par le code suivant si la fonction AppelFonction peut renvoyer la valeur NULL :
    SI AppelFonction() = "Valeur1" OU AppelFonction() = "Valeur2" ALORS...
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale