Ce que nous appelons des ListBox ce sont les champs de recherche présents en haut de chacunes des colonnes. Elles permettent d'y écrire une requête et de filtrer les listes.
Les ListBox peuvent être très utiles à condition de savoir de quelle manière écrire les requêtes.
Recherches strictes, Etendues et Numériques
Selon la colonne utilisée, la recherche devra être effectuée de manière différente. Ceci est dû au fait qu'on ne recherche pas une Date de la même manière qu'une Référence ou une Description.
Nous devons distinguer trois types de recherches : la recherche par période, la recherche stricte et la recherche étendue.
La recherche par période
Elle est souvent associée aux colonnes ne contenant que des valeurs numériques telles que des quantités, mais elle peut aussi s'appliquer à des valeurs alphabétiques. Les dates peuvent être recherchées en tant que chiffres. Dans ce cas, on peut utiliser la Syntaxe qui s'applique à la Recherche par période. Il est également nécessaire de consulter les règles spécifiques concernant les Dates.
La recherche stricte
Le Recherche stricte s'applique par exemple aux Réferences. La source d'erreur fréquente réside dans le fait que la ListBox va prendre en compte les termes exacts que vous entrez. Si vous entrez "Jo", vous ne pourrez pas trouver "John". Elle va uniquement trouver les enregistrement étant strictement égal à "Jo".
Les syntaxes de Requête Simple et de Requête Multiple s'appliquent à ce type de Recherche.
La Recherche étendue
La Recherche étendue s'applique par exemple au champ "Description". Par défaut, ce type de Recherche va chercher tout ce qui contient les mots clés que vous avez entré.
La Syntaxe de la ListBox
Veuillez noter que la ListBox peut être sensible à la casse.
Requête simple
Si vous savez exactement ce que vous recherchez, vous pouvez entrer le nom correspondant dans la ListBox. Si vous le ne savez pas exactement, ou si le nom est trop long, vous pouvez utiliser le symbole "%".
Entrée |
Recherche stricte
|
Recherche étendue
|
John Doe |
Tout ce qui est 'John Doe' |
Tout ce qui contient 'John Doe' |
John% |
Tout ce qui commence par 'John' |
Tout ce qui commence par 'John' |
%Doe |
Tout ce qui finit par 'Doe' |
Tout ce qui finit par 'Doe' |
Vueillez noter qu'à chaque fois que vous utilisez le symoble % dans votre requête, les recherches Etendue ou Stricte auront le même résultat.
La requête Multiple
Vous pouvez effectuer des requêtes Multiples en utilisant les opérateurs logiques 'OU' 'ET' 'NON'. Pour être utilisés en tant qu'opérateurs logiques, ils doivent être écrits en lettres capitales. S'ils sont en minuscule, ils seront considérés comme partie intégrante du texte recherché :
Entrée |
Recherche stricte |
Recherche étendue |
John OU Roger |
Tout ce qui est 'John' ou 'Roger' |
Tout ce qui contient 'John' ou 'Roger' |
John% OR Ro% |
Tout ce qui commence par 'John' ou 'Ro' |
Tout ce qui commence par 'John' ou 'Ro' |
%Doe OR Ro% |
Tout ce qui finit par 'Doe' ou commence par 'Ro' |
Tout ce qui finit par 'Doe' ou commence par 'Ro'
|
John% AND %ger |
Tout ce qui commence à la fois par 'John' et par 'ger' |
Tout ce qui commence à la fois par 'John' et finit par 'ger' |
John AND Roger |
Impossible, il ne peut pas être à la fois 'John' et 'Roger' |
Tout ce qui à la fois contient 'John' et 'Roger' |
%Doe AND Ro% |
Tout ce qui à la fois finit par 'Doe' et commence par 'Ro' |
Tout ce qui à la fois finit par 'Doe' et commence with 'Ro' |
NOT John |
Tout ce qui n'est pas 'John' |
Tout ce qui ne contient pas 'John' |
Roger NOT John |
Tout ce qui est Roger mais pas John |
Tout ce qui contient 'Roger' et pas 'John' |
John Doe OR %Roger |
Le système va considérer l'espace entre 'John' et 'Doe' comme un ET opérateur
Il va rechercher tout ce qui est 'John' et 'Doe' ou tout ce qui est 'John' et finit par 'Roger' |
Tout ce qui contient 'John Doe' et pas 'Roger' |
"John Doe" OR %Roger |
Si vous utilisez des guillemets (") dans une expression complexe, le système ne va considérer l'espace comme un ET opérateur, mais il va prendre en compte l'expression 'John Doe' en entier:
Il va rechercher tout ce qui est 'John Doe' ou finit par 'Roger'
|
Tout ce qui contient 'John Doe' et pas 'Roger' |
Avec ces opérateurs logiques, vous pouvez entrer des requêtes plus complexes grâce aux parenthèses. Si vous utilisez plusieurs opérateurs dans la même requêtes, sans aucune parenthèse, l'opérateur logique "ET" va être prioritaire. Voici quelques exemples :
Entrée |
Equivalent Explicit |
toto ET tata OU titi |
("toto" ET "tata") OU "baz" |
toto OU tata ET titi OU fred |
"toto" OU ("tata" ET "baz") OU "fred" |
(toto OU tata) ET titi OU fred |
(("toto" OU "tata") ET "baz") OU "fred" |
John Doe OU %Roger |
"John" ET ("Doe" OU %Roger) |
La Recherche par Période
Si vous avez des colonnes numériques, vous pouvez les filtrer en utilisant les opérateurs logiques > < = et != :
Entrée |
Requête |
<10 |
Tout ce qui est strictement inférieur à 10 |
>10 |
Tout ce qui est strictement supérieur à 10 |
=10 |
Tout ce qui est égal à 10 |
!=10 |
Tout ce qui n'est pas égal à 10 |
>=10 |
Tout ce qui est supérieur ou égal à 10 |
<=10 |
Tout ce qui est inférieur ou égal à 10 |
Ces opérateurs logiques peuvent aussi être utilisés avec des données alphabétiques, en tenant compte de l'ordre alphabétique :
Entrée |
Requête |
<toto |
Tout ce qui vient avant toto dans l'ordre alphabétique |
>toto |
Tout ce qui vient après toto dans l'ordre alphabétique |
=toto |
Tout ce qui est toto |
!=toto |
Tout ce qui n'est pas toto |
>=10 |
Tout ce qui vient après toto, y compris toto |
<=10 |
Tout ce qui vient après toto, y compris toto |
Dates
Vous pouvez filtrer les dates avec les mêmes opérateurs logiques que les chiffres. Selon la requête, l'intervalle de dates affiché est différent :
Sans horaires:
2001/01/01 |
Du 2001/01/01 - 00:00:00 inclus |
Au2001/01/02 00:00:00 exclus |
=2001/01/01 |
Du 2001/01/01 - 00:00:00 inclus |
Au 2001/01/02 00:00:00 exclus |
!=2001/01/01 |
Avant le 2001/01/01 - 00:00:00 exclus |
Après le 2001/01/02 - 00:00:00 inclus |
<2001/01/01 |
Avant le 2001/01/01 - 00:00:00 exclus |
|
<=2001/01/01 |
|
Avant 2001/01/02 - 00:00:00 exclus |
>2001/01/01 |
|
Après 2001/01/02 - 00:00:00 inclus |
>=2001/01/01 |
Après 2001/01/01 - 00:00:00 inclus |
|
Avec les Horaires:
2001/01/01 12 |
Du 2001/01/01 - 12:00:00 inclus |
Au 2001/01/02 12:00:00 exclus |
=2001/01/01 12 |
Du 2001/01/01 - 12:00:00 inclus |
Au 2001/01/02 12:00:00 exclus |
!=2001/01/01 12 |
Avant le 2001/01/01 - 12:00:00 exclus |
Après 2001/01/02 - 12:00:00 inclus |
<2001/01/01 12 |
Avant le 2001/01/01 - 12:00:00 exclus |
|
<=2001/01/01 12 |
|
Avant le 2001/01/02 - 12:00:00 exclus |
>2001/01/01 12 |
|
Après le 2001/01/02 - 12:00:00 inclus |
>=2001/01/01 12 |
Après le2001/01/01 - 12:00:00 inclus |
|