impossibleok
Messages postés54Date d'inscriptionlundi 27 mars 2006StatutMembreDernière intervention26 juin 2009
-
21 juin 2009 à 12:57
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 2021
-
21 juil. 2009 à 20:38
bonjour;
SOS, le code qui suit marche nickel Filtre :'Nom''' + recherche.Text + '*''';
Table1.Filter := Filtre;
ça filtre les enregistrement de ma table etudiant (table1) et n'affiche que ceux qui commencent par la valeur de mon champ de recherche (recherche.Text).
mais comment adapter ce code pour un filtrage du genre: contient et pas commence par ???
merci.
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 202113 25 juin 2009 à 16:12
Sers toi du SQL...
ex sur la table country de la démo de Borland
mets un grid relié au Query
procedure TForm1.Button2Click(Sender: TObject);
begin
with Query1.SQL do
begin
Query1.close;
Clear;
Add('SELECT Name ');
Add('FROM COUNTRY ');
Add('WHERE UPPER(Name) LIKE :SAISIE ');
solilog
Messages postés273Date d'inscriptionsamedi 13 juin 2009StatutMembreDernière intervention18 avril 201510 21 juil. 2009 à 19:20
Bonjour,
je viens après la bataille mais pourquoi pas ça:
table1.filtered:=true;
L'évènement FilterRecord de Table1:
procedure TForm1.Table1FilterRecord(DataSet: TDataSet; var Accept: Boolean);
var lng : integer;
begin
with dataset do
begin
lng := length(recherche.text);
if copy( fieldbyname('NOM').asstring, 1, l) = recherche.text then
accept:=true
else
accept:=false;
end;
end;
et dans l'évènement OnChange de recherche :
procedure TForm1.RechercheChange(Sender: TObject);
begin
table1.Refresh;
end;
cavalier2400
Messages postés120Date d'inscriptionmardi 8 juillet 2008StatutMembreDernière intervention 1 décembre 20101 21 juil. 2009 à 19:39
Bonsoir, plus classique serait,
1. désactiver le filtre
2. par exemple Nom--> nom des villes
3. Test sur tr --> tr:=nom[1]< > d'un set d'interdit
4. Lancer le filtre tel que (nom like '+''''+tr.Caption+'%''')
(Evitant les quotedstr,
5. Réactiver le filtre.