Effectuer plusieurs filtrages dans un DBGrid [Résolu]

Messages postés
54
Date d'inscription
samedi 27 mars 2004
Dernière intervention
1 août 2006
- - Dernière réponse : cs_kika2010
Messages postés
2
Date d'inscription
lundi 8 novembre 2010
Dernière intervention
12 janvier 2011
- 12 janv. 2011 à 11:02
Bonjour,
Je voudrais éffectuer plusieurs filtrages dans un DBGrid
Voici ma méthode pour filtrer ma table Paradox dans un DBGrid

procedure TFmFactC.Edit4Change(Sender: TObject);
var Filtre : string;
begin Filtre :'Periode''' + Edit4.Text + '*''';
if Edit4.Text ='' then
begin
TbFacToutes.Filtered:=false;
exit;
end;
TbFacToutes.Filter := Filtre;
TbFactoutes.Filtered := true;

Cette méthode fonctionne bien pour filtrer ma table sur une "Période" mais je voudrais en plus filtrer la Période par exemple par "Nom" et ensuite par "Site", et là je bloque, j'ai essayé divers solutions mais apparament pas la bonne, si quelqu'un peut me donner un coup de pouce ???

Merci d'avance.
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
1232
Date d'inscription
lundi 4 février 2002
Dernière intervention
4 octobre 2006
3
Merci
Et bien voici comment faire :
Filtre :'(Periode ' + QuotedStr(Edit1.Text) + ') AND (Nom = ' + QuotedStr(Edit2.text) + ') AND Annee = ' + Edit3.text + ')';

Si tu veux saisir des chaines de caractères tu ne dois pas oublier le QuotedStr car sinon ca ne fonctionne pas.

Sinon solution un peu plus présentable quand tu as des grands filtres je trouve la commande format :
Filtre :Format('(Periode ''%s'') AND (Nom = ''%s'') AND (Annee = %s) ',[Edit1.Text,Edit2.Text,Edit3.Text]);

Voila j'espere t'avoir depanner.

Bonne prog,
JMP.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de jmp77
Messages postés
54
Date d'inscription
samedi 27 mars 2004
Dernière intervention
1 août 2006
0
Merci
Merci jmp77 j'ai essayé ca fonctionne (adapté suivant mes besoins)
Commenter la réponse de DGPat
Messages postés
1
Date d'inscription
mercredi 20 février 2008
Dernière intervention
12 janvier 2011
0
Merci
salut,
je travail avec c++builder6 et interbase comme SGBD ,Je voudrais éffectuer un filtrages dans un DBGrid ,j'ai essai avec

String Filtre "C_produit '" + C_produit->Text + "'";
if (C_produit->Text.IsEmpty())
{
PRODUIT->Filtered=false;
return;
}
PRODUIT->Filter = Filtre;
PRODUIT->Filtered = true;

mais ca marche pas, merci d'avance
Commenter la réponse de salmi2002
Messages postés
2
Date d'inscription
lundi 8 novembre 2010
Dernière intervention
12 janvier 2011
0
Merci
[img]C:\Documents and Settings\helsinki\Bureau/img
Commenter la réponse de cs_kika2010

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.