Bonsoir a tous,
j'ai une table des articles qui contient plus de 10 000 article.
vu a une demande de mon client , il veux afficher tous les articles dans un dbgrid mais avec la possibilité de chercher des articles dans cette dernière .
pour réaliser ce travail j'ai utilisé une requête SQL (j'utilise Interbase + IBX + Delphi7).
dans l’événement OnChange du composant Edit1 je filtre mes données avec cette procédure :



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
procedure TFMaForm.Edit1Change(Sender: TObject);
begin
      IF (edit1.text <> '')  then
      begin
            MaQuery.close;
            MaQuery.SQL.Clear;
            MaQuery.SQL.Add('SELECT    CodeArt, Designation,QteStk');
            MaQuery.SQL.Add('FROM  MesArticles');
            MaQuery.SQL.Add('WHERE UPPER(Designation) LIKE  ''%' + UpperCase(edit1.Text) + '%''');
            MaQuery.SQL.Add('ORDER BY CodeArt');
            MaQuery.Active := true;
      else
      begin
            MaQuery.close;
            MaQuery.SQL.Clear;
            MaQuery.SQL.Add('SELECT    CodeArt, Designation,QteStk');
            MaQuery.SQL.Add('FROM  MesArticles');
            MaQuery.SQL.Add('ORDER BY CodeArt');
            MaQuery.Active := true;
 
      end ;
 
end;
mais c'est très lourd de faire a chaque caractère une requête sql
j'ai essayé avec les filtre mais pas moyen.
avez vous une suggestion SVP !!!

pour Sergio : SVP cette fois ci ne soit pas sévère avec moi