Message de rapport:
 

Re: recherche

Sujet: Re: recherche
par drcharly93 sur 10/3/2008 22:00:44

Bonjour,

Question peu explicite !!!
Il est possible d'effectuer ce type de recherche de la façon suivante :
Dans mon exemple je prends le cas d'une rechercher sur le nom d'un client issu d'une table tblClients
La saisie de la valeur à rechercher se trouve dans le champs rech_Nom
La recherche s'effectue pour eviter trop d'attente entre chaque caractère saisie à la sortie du champ ou bien dans le code d'un bouton
La liste se nomme lstClients

Sql est une chaine
Rs est une source de donnees 

Sql =
[
SELECT Nom, Id
FROM tblClients
WHERE Nom Like '%
]

Sql += rech_Nom + "%'" ORDER By Nom

SI Pas HExecuteRequeteSql( Rs, HrequeteDefaut, Sql ) Alors
  Erreur( HErreurInfo() )
  Retour
Fin

ListeSupprimeTout( lstClients )
Pour Tous Rs
  ListeAjoute( Rs.Nom )
Fin


Plusieurs variantes existentent
- en utilisant meme la phonetique
- en laissant l'utilisateur saisir lui meme les jokers
DU%
donne DUPONT, DURAND, DUCHMOL
%NT
Donne DUPONT, MARRANT, MERLANT
%ER%
Donne BERNARD, MERLANT, FERRANT
On peut faire aussi
%R__D%
Donne DURAND, FARRANDOLE
Ici les _ represente un caractère quelconque tandis que % représente une suite de caractère quelconque.

Pour être plus près de windows on pourrait laisser saisr des * et des ? puis les remplacer pour la construction de la chaine SQL
Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2