FAQ n°2333, publiée le 29/01/2002
WINDEV
A quoi sert l'option "NULL si vide" dans un champ de saisie ?
Avec cette option, un champ laissé vide retournera la valeur NULL qui est traitée spécialement par les requêtes. NULL est différent de blanc.
Prenons l'exemple d'une requête ayant pour conditions de sélection : CODEPOSTAL commence par PARAM1 ET VILLE commence par PARAM2. La requête est initialisée avec le code suivant :

HExécuteRequête(Req_Ville, hRequêteDéfaut, S_CODEPOSTAL , S_VILLE)

Si le champ S_VILLE est vide, la partie "VILLE commence par PARAM2" de la requête est ignorée.
Si le champ S_CODEPOSTAL est vide, la partie "CODEPOSTAL commence par PARAM1" est ignorée.

Pour réaliser une recherche multi-critère très simplement, il suffit donc :
- de créer une requête multi-paramètre
- d'initialiser chaque paramètre avec un champ avec l'option NULL si vide