WR Chercher

4D - Documentation   Français   English   German   4D Write, Commandes par thèmes   4D Write, Liste alphabétique des commandes   4D Write, Constantes par thèmes   Retour   Précédent   Suivant

version 6.5


WR Chercher (zone; aChercher; motEntier; majuscules; toutLeDoc) Entier long

ParamètreTypeDescription
zoneEntier longZone 4D Write
aChercherAlphaChaîne à chercher
motEntierEntier0=Partie de mot
1=Mot entier
majusculesEntier0=Ignorer majuscules
1=Ne pas ignorer majuscules
toutLeDocEntier0=Chercher du curseur à la fin du document
1=Chercher dans tout le document
RésultatEntier longStatut de la recherche

Description

La commande WR Chercher permet de rechercher une chaîne de caractères dans une zone 4D Write. Vous pouvez obtenir la position des mots trouvés grâce à WR LIRE MOTS ou la position de la sélection trouvée par WR LIRE SELECTION. Si l'expression est trouvée, la fonction retourne 1 et sélectionne la première occurence trouvée.

Si la recherche a été infructueuse, la fonction retourne 0 et la sélection courante ne change pas. Si zone n'existe pas, la fonction retourne -1.

Les arguments motEntier et majuscules vous permettent de spécifier la manière dont la recherche va s'effectuer :

Vous pouvez passer dans le paramètre motEntier l'une des constantes suivantes, placées dans le thème WR Paramètres :

Constantes (valeur)Description
wr partie de mot (0)Le mot peut faire partie d'une chaîne de caractères
wr mot entier (1)Pour être trouvé, le mot doit être entouré de caractères séparateurs
(espaces, caractères de ponctuation, etc.)

Vous pouvez passer dans le paramètre majuscules l'une des constantes suivantes, placées dans le thème WR Paramètres :

Constantes (valeur)Description
wr ignorer majuscules (0)La recherche ne tiendra pas compte des majuscules et trouvera
"Bonjour", "Bonjour", "BONJOUR"... si vous cherchez "BONJOUR"
wr tenir compte des majuscules (1)La recherche tiendra compte des majuscules et ne trouvera pas
"Bonjour" si vous cherchez "BONJOUR"

L'argument toutLeDoc permet de spécifier si la recherche porte sur l'intégralité du document ou uniquement sur la portion comprise entre le curseur et la fin du document.Vous pouvez passer dans le paramètre toutLeDoc l'une des constantes suivantes, placées dans le thème WR Paramètres :

Constantes (valeur)Description
wr du curseur à la fin (0)La recherche commence à la position du curseur puis s'arrêtera en
fin de document.
wr tout le document (1)La recherche commence à la position du curseur puis se poursuivra
du début du texte à la position du curseur.

Exemples

(1) Vous demandez à l'utilisateur ce qu'il veut chercher, puis lancez la recherche sur ce texte :

   AChercher:=Demander("Saisissez le texte à rechercher :")
   Si(OK=1)
      WR FIXER SELECTION(LaZone;0;0)
      Si(WR Chercher(LaZone;AChercher;wr mot entier;wr tenir compte des majuscules;1)=0)
         ALERTE("Aucun mot ne correspond à votre demande.")
      Fin de si
   Fin de si

(2) Cet exemple propose une méthode de recherche par mot-clé dans des zones Images sur une sélection d'enregistrements.

Note : Si vous avez opté pour l'association des zones 4D Write à des champs BLOB, veuillez vous reporter à l'exemple présenté dans la description de la commande WR Chercher direct, beaucoup plus rapide.

Vous possédez une base contenant des recettes de cuisines. Celles-ci ont été enregistrées dans des champs Images. Vous désirez pouvoir extraire toutes les recettes contenant un ingrédient particulier. Voici l'exemple vous permettant d'obtenir cette sélection :

   Achercher:=Demander("Quel ingrédient désirez-vous rechercher ?")
      `Création d'un ensemble vide dans lequel vont être placés tous les enregistrements
      `contenant l'ingrédient recherché
   ENSEMBLE VIDE([MesRecettes];"SélectionTrouvée")
   TOUT SELECTIONNER([MesRecettes])   `On parcourt toute la sélection de la table
   MonHorsEcran:=WR Hors ecran 
   Tant que (Non(Fin de selection([MesRecettes])))
      WR IMAGE VERS ZONE (MonHorsEcran;[MesRecettes]ImageRecette_)
      Si (WR Chercher (MonHorsEcran;AChercher;1;1;1)=1)
            `Lorsque l'ingrédient est trouvé, l'enregistrement est ajouté dans l'ensemble
         ADJOINDRE ELEMENT([MesRecettes];"SélectionTrouvée")
      Fin de si 
      ENREGISTREMENT SUIVANT([MesRecettes])
   Fin tant que 
   WR DETRUIRE HORS ECRAN (MonHorsEcran)
   UTILISER ENSEMBLE("SélectionTrouvée")
   FORMULAIRE SORTIE([MesRecettes];"Sortie")
   MODIFIER SELECTION([MesRecettes];*)

Référence

WR Chercher direct.


4D - Documentation   Français   English   German   4D Write, Commandes par thèmes   4D Write, Liste alphabétique des commandes   4D Write, Constantes par thèmes   Retour   Précédent   Suivant