version 5
SCAN INDEX (champ; nombre{; > ou <})
Paramètre | Type | Description | |
champ | Champ | Champ indexé avec lequel "scanner" les | |
enregistrements | |||
nombre | Numérique | Nombre d'enregistrements à retourner | |
> ou < | > à partir du début de l'index | ||
< à partir de la fin de l'index |
Description
La commande SCAN INDEX retourne une sélection de nombre enregistrements de table. Cette commande est extrêmement rapide car elle utilise l'index.
Si vous passez <, SCAN INDEX retourne nombre enregistrements à partir de la fin de l'index (valeurs supérieures). Si vous passez >, SCAN INDEX retourne nombre enregistrements à partir du début de l'index (valeurs inférieures). Si vous ne passez pas le dernier paramètre, la commande retourne nombre enregistrements à partir du début de l'index (équivaut à passer >).
Note : La sélection obtenue n'est pas triée.
SCAN INDEX fonctionne uniquement avec des champs indexés. Cette commande modifie la sélection courante de la table pour le process courant, mais il n'y a pas d'enregistrement courant.
Si vous spécifiez un nombre d'enregistrements supérieur au nombre d'enregistrements présents dans la table, SCAN INDEX retourne tous les enregistrements.
Exemple
L'exemple suivant envoie des lettres aux 50 plus mauvais clients puis aux 50 meilleurs clients :
SCAN INDEX([Clients]TotalDû;50;<) ` Obtenir la liste des 50 plus mauvais clients TRIER([Clients]CodePostal;>) ` Trier par code postal FORMULAIRE SORTIE([Clients];"Menace") IMPRIMER SELECTION([Clients]) ` Imprimer les lettres SCAN INDEX([Clients]TotalDû;50;>) ` Obtenir la liste des 50 meilleurs clients TRIER([Clients]CodePostal;>) ` Trier par code postal FORMULAIRE SORTIE([Clients];"Remerciement") IMPRIMER SELECTION([Clients]) ` Imprimer les lettres
Référence
CHERCHER, REDUIRE SELECTION, TRIER.