|
|
|
|
|
- Gestion automatique des clés composées
- Filtre et parcours filtré
- Activation/désactivation d'un filtre
- Fichiers de données non HFSQL
HFiltreComprisEntre (Fonction) En anglais : HFilterIncludedBetween
Non disponible avec ce type de connexion
Définit et active un filtre de type "Compris entre" sur un fichier de données, une vue ou une requête. Le filtre de type "Compris Entre" permet de sélectionner tous les enregistrements compris entre deux valeurs données. Après son exécution, les cas suivants sont les plus fréquents : - le filtre ne peut pas être créé : la fonction HFiltreComprisEntre renvoie une chaîne vide (""). La fonction HErreur permet de récupérer l'identifiant de l'erreur.
- le filtre est créé : la fonction HFiltreComprisEntre renvoie la clé de parcours optimale à utiliser pour réaliser le parcours du fichier de données, de la vue ou de la requête.
MaCléParcours est une chaîne
MaCléParcours = HFiltreComprisEntre(Client, NomPrénom, ...
"A", "B" + hValMax, hSéparateurBorne, "C", "D" + hValMax)
HLitPremier(Client, MaCléParcours)
TANTQUE PAS HEnDehors(Client)
Trace(Client.NomClient, Client.Ville)
HLitSuivant(Client, MaCléParcours)
FIN
...
HDésactiveFiltre(Client)
Syntaxe
<Résultat> = HFiltreComprisEntre(<Fichier de données> , <Rubrique clé> , <Borne min de la composante 1 de la clé> [, <Borne min de la composante 2 de la clé> [... [, <Borne min de la composante N de la clé>]]] , <hSéparateurBorne> , <Borne max de la composante 1 de la clé> [, <Borne max de la composante 2 de la clé> [... [, <Borne min de la composante N de la clé>]]])
<Résultat> : Chaîne de caractères Rubrique de parcours. Correspond :- soit à la clé de parcours du fichier de données si le filtre est activé.
- soit à une chaîne vide ("") si le filtre ne peut pas être mis en place.
<Fichier de données> : Chaîne de caractères Nom du fichier de données, de la vue ou de la requête manipulé. <Rubrique clé> : Chaîne de caractères Nom de la rubrique clé sur laquelle le filtre doit être réalisé. Cette rubrique peut être une clé simple de type chaîne ou une clé composée. Attention : ce paramètre ne doit contenir que des lettres, des caractères soulignés ou des chiffres. Dans le cas contraire, il faut entourer le nom de guillemets. <Borne min de la composante 1 de la clé> : Type de la première composante de la clé de parcours Borne minimale pour la première (respectivement deuxième, ...) composante de la clé composée. Les enregistrements correspondant à cette valeur sont inclus dans le filtre. Le type de ce paramètre doit correspondre au type de la composante de la rubrique clé sur laquelle le filtre est défini. <Borne min de la composante 2 de la clé> : Type de la seconde composante de la clé de parcours Borne minimale pour la seconde composante de la clé composée. Les enregistrements correspondant à cette valeur sont inclus dans le filtre. Le type de ce paramètre doit correspondre au type de la composante de la rubrique clé sur laquelle le filtre est défini. <Borne min de la composante N de la clé> : Type de la nième composante de la clé de parcours Borne minimale pour la nième composante de la clé composée. Les enregistrements correspondant à cette valeur sont inclus dans le filtre. Le type de ce paramètre doit correspondre au type de la composante de la rubrique clé sur laquelle le filtre est défini. <hSéparateurBorne> : Constante de type Entier La constante hSéparateurBorne permet de séparer les valeurs des bornes minimales et maximales pour les composantes de la clé composée. <Borne max de la composante 1 de la clé> : Type de la première composante de la clé de parcours Borne maximale pour la première (respectivement deuxième, ...) composante de la clé composée. Les enregistrements correspondant à cette valeur sont inclus dans le filtre. Le type de ce paramètre doit correspondre au type de la composante de la rubrique clé sur laquelle le filtre est défini. <Borne max de la composante 2 de la clé> : Type de la seconde composante de la clé de parcours Borne maximale pour la seconde composante de la clé composée. Les enregistrements correspondant à cette valeur sont inclus dans le filtre. Le type de ce paramètre doit correspondre au type de la composante de la rubrique clé sur laquelle le filtre est défini. <Borne min de la composante N de la clé> : Type de la nième composante de la clé de parcours Borne minimale pour la nième composante de la clé composée. Les enregistrements correspondant à cette valeur sont inclus dans le filtre. Le type de ce paramètre doit correspondre au type de la composante de la rubrique clé sur laquelle le filtre est défini. Remarques Gestion automatique des clés composées La fonction HFiltreComprisEntre gère automatiquement les filtres sur les clés simples comme sur les clés composées. Exemple : Utilisation de la fonction HFiltreComprisEntre avec une clé simple :
RésultatFiltre = HFiltreComprisEntre(Client, Nom, "A", hSéparateurBorne, "B" + hValMax)
Exemple : Utilisation de la fonction HFiltreComprisEntre avec une clé composée
RésultatFiltre = HFiltreComprisEntre(Client, NomPrénom, "A", "B" + hValMax, ...
hSéparateurBorne, "C", "D" + hValMax)
Cette ligne de code est équivalente à :
HFiltre(Client, NomPrénom, ...
HConstruitValClé(Client, NomPrénom, "A", "B" + hValMin), ...
HConstruitValClé(Client, NomPrénom, "C", "D" + hValMax))
Filtre et parcours filtré Après l'exécution de la fonction HFiltreComprisEntre, le parcours du fichier de données doit obligatoirement être effectué sur la rubrique renvoyée par la fonction HFiltreComprisEntre. Si une autre rubrique est utilisée pour le parcours du fichier de données, le filtre ne sera pas pris en compte. Lorsqu'un filtre est défini et activé sur un fichier de données (une vue ou une requête), tout enregistrement lu correspond au filtre. Si il n'y a plus d'enregistrement correspondant au filtre lors du parcours : - la fonction HEnDehors renvoie Vrai.
- l'enregistrement en cours correspond au dernier enregistrement lu avec le filtre.
Par exemple : | | Sur un fichier de données filtré, après la fonction : | l'enregistrement en cours est : | HLitPremier | le premier enregistrement du fichier de données correspondant au filtre | HLitDernier | le dernier enregistrement du fichier de données correspondant au filtre | HLitSuivant (ou HAvance) | l'enregistrement suivant (ou le nième suivant) correspondant au filtre | HLitPrécédent (ou HRecule) | l'enregistrement précédent (ou le nième précédent) correspondant au filtre |
Activation/désactivation d'un filtre - La fonction HDésactiveFiltre permet de désactiver un filtre.
- La fonction HActiveFiltre permet de ré-activer un filtre.
- Lorsque le fichier de données (la requête ou la vue) est fermé (fonction HFerme par exemple), le filtre est supprimé.
- A un même instant, il ne peut exister qu'un seul filtre sur un fichier de données (une requête ou une vue). Si la fonction HFiltreComprisEntre est utilisée plusieurs fois, seul le dernier filtre sera pris en compte : le(s) filtre(s) précédent(s) seront supprimés. De même si plusieurs filtres sont utilisés (fonctions HFiltre*), seul le dernier filtre sera pris en compte.
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|