PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE


  • Gestion automatique des clés composées
  • Filtre et parcours filtré :
  • Activation/Désactivation d'un filtre
  • Fichiers de données non HFSQL
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Définit et active un filtre de type "Commence par" sur un fichier de données, une vue ou une requête. Le filtre de type "Commence par" permet de sélectionner tous les enregistrements commençant par une suite de caractères définie.
Après son exécution, les cas suivants sont les plus fréquents :
  • le filtre ne peut pas être créé : la fonction HFiltreCommencePar renvoie une chaîne vide (""). La fonction HErreur permet de récupérer l'identifiant de l'erreur.
  • le filtre est créé : la fonction HFiltreCommencePar 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.
Versions 15 et supérieures
Android Cette fonction est désormais disponible pour les applications Android.
Nouveauté 15
Android Cette fonction est désormais disponible pour les applications Android.
Android Cette fonction est désormais disponible pour les applications Android.
Versions 17 et supérieures
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Nouveauté 17
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Versions 18 et supérieures
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Nouveauté 18
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Versions 21 et supérieures
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Nouveauté 21
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Remarque : A partir de la version 19, HFSQL est le nouveau nom de HyperFileSQL.
Exemple
MaClé est une chaîne
// Sélectionne tous les clients habitant la ville commençant par "Mon"
MaClé = HFiltreCommencePar(Client, Ville, "Mon")
HLitPremier(Client, MaClé)
TANTQUE PAS HEnDehors()
Trace(Client.NomClient, Client.Ville)
HLitSuivant(Client, MaClé)
FIN
...
// Annule le filtre
HDésactiveFiltre(Client)
Syntaxe
<Résultat> = HFiltreCommencePar(<Nom du fichier> , <Nom de la rubrique clé> , <Filtre pour la composante 1 de la clé> [, <Filtre pour la composante 2 de la clé> [... [, <Filtre pour 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
<Nom du fichier> : Chaîne de caractères (avec ou sans guillemets)
Nom du fichier de données HFSQL, de la vue ou de la requête manipulé.
<Nom de la rubrique clé> : Chaîne de caractères (avec ou sans guillemets)
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.
<Filtre pour la composante 1 de la clé> : Type de la première composante de la clé de parcours
Valeur recherchée pour la première composante (respectivement 2ème, ...) de la clé composée.
Le type de ce paramètre doit correspondre au type de la composante de la rubrique clé sur laquelle le filtre est défini.
<Filtre pour la composante 2 de la clé> : Type de la seconde composante de la clé de parcours
Valeur recherchée pour la seconde composante de la clé composée.
Le type de ce paramètre doit correspondre au type de la composante de la rubrique clé sur laquelle le filtre est défini.
<Filtre pour la composante N de la clé> : Type de la composante N de la clé de parcours
Type recherchée pour la composante N de la clé composée.
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 HFiltreCommencePar gère automatiquement les filtres sur les clés simples comme sur les clés composées.
Exemple 1 : Utilisation de la fonction HFiltreCommencePar avec une clé simple :
Res = HFiltreCommencePar(Client, Nom, "A")
// Sélection de tous les clients dont le nom commence par A
Exemple 2 : Utilisation de la fonction HFiltreCommencePar avec une clé composée de deux rubriques :
// Exemple avec NomPrénom une clé composée de : Nom + Prénom
// Sélection de tous les clients dont le nom est DUPONT
// et le prénom commence par C
Res = HFiltreCommencePar(Client, NomPrénom, "DUPONT", "C")
Cette ligne de code est équivalente à :
HFiltre(Client, NomPrénom, ...
HConstruitValClé(Client, NomPrénom, "DUPONT", "C") + hValMin, ...
HConstruitValClé(Client, NomPrénom, "DUPONT", "C") + hValMax)
Exemple 3 : Utilisation de la fonction HFiltreCommencePar avec une clé composée de trois rubriques :
// Exemple avec FACTCLI une clé composée de : NuméroClient+Date+Heure
// Toutes les factures d'un client (triées par date)
Res = HFiltreCommencePar(Facture, FACTCLI, Client.NumCli)
Cette ligne de code est équivalente à :
HFiltre(Facture, FactCli, ...
HConstruitValClé(Facture, FactCli, Client.NumCli) + hValMin, ...
HConstruitValClé(Facture, FactCli, Client.NumCli) + hValMax)
Exemple 4 : Utilisation de la fonction HFiltreCommencePar avec une clé composée de trois rubriques :
// Exemple avec FACTCLI une clé composée de : NuméroClient+Date+Heure
// Toutes les factures du jour d'un client (triées par date)
Res = HFiltreCommencePar(Facture, FactCli, Client.NumCli, DateDuJour())
Cette ligne de code est équivalente à :
HFiltre(Facture, FactCli, ...
HConstruitValClé(Facture, FactCli, Client.NumCli, DateDuJour()) + hValMin, ...
HConstruitValClé(Facture, FactCli, Client.NumCli, DateDuJour()) + hValMax)

Filtre et parcours filtré :

Après l'exécution de la fonction HFiltreCommencePar, le parcours du fichier de données doit obligatoirement être effectué sur la rubrique renvoyée par la fonction HFiltreCommencePar. 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 :
HLitPremierle premier enregistrement du fichier de données correspondant au filtre.
HLitDernierle 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 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 HFiltreCommencePar 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.
WINDEVWEBDEV - Code ServeurEtats et RequêtesAndroidWidget AndroidWindows MobileAjaxCode Utilisateur (MCU)Procédures stockéesOLE DBConnecteurs Natifs (Accès Natifs)

Fichiers de données non HFSQL

Composante : wd240hf.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire