Enlever ligne Stringgrid

phoenixgreg Messages postés 77 Date d'inscription mardi 17 novembre 2009 Statut Membre Dernière intervention 18 août 2015 - 16 nov. 2010 à 16:30
 Utilisateur anonyme - 17 nov. 2010 à 09:19
Bonjour tout le monde !

J'ai un petit soucis depuis quelques jours, j'aimerais lorsque je fini de remplir ma stringgrid avec une requête SQL que les lignes n'ayant pas été remplies soient effacées du stringgrid.

Le code qui me sert à remplir la stringgrid :

Q1 := TQuery.Create(Self); // tu efface la requete deja existante
Q1.DataBaseName := 'Maglione';
Q1.SQL.Add('SELECT DISTINCT nofacture, designation, noclient, nofamille, libelle FROM facture, client, famille');
Q1.SQL.Add('WHERE facture.noclient client.noclient AND famille.nofamille facture.nofamille');
Q1.SQL.Add('AND Date_facture >= :DateDebut AND Date_Facture <= :DateFin ORDER BY designation'); // tu crée une nouvelle requete
Q1.ParamByName('DateDebut').AsDateTime := EncodeDate(UpDown1.Position,ComboBox1.ItemIndex+1,1)-1;
Q1.ParamByName('DateFin').AsDateTime := EncodeDate(UpDown1.Position,ComboBox1.ItemIndex+1,28);
Q1.Open; // tu ouvre la requete

for i := 0 to StringGrid1.rowCount-1 do
for j := 0 to StringGrid1.ColCount-1 do
Stringgrid1.Cells[j,i]:= '';

nombre := 2;

while not Q1.Eof do begin

nombre := nombre +1;

Stringgrid1.cells[0,nombre - 1] :=Q1.fieldbyname('designation').asstring;
Stringgrid1.cells[1,nombre - 1] :=Q1.fieldbyname('nofacture').asstring;
Stringgrid1.cells[nombre - 1,0] :=Q1.fieldbyname('nofamille').asstring;
Stringgrid1.cells[nombre - 1,1] :=Q1.fieldbyname('libelle').asstring;
Q1.Next;
end;
Q1.Free;
end.

------------------------

Merci d'avance pour votre aide ! :)

2 réponses

phoenixgreg Messages postés 77 Date d'inscription mardi 17 novembre 2009 Statut Membre Dernière intervention 18 août 2015
17 nov. 2010 à 09:13
up !
0
Utilisateur anonyme
17 nov. 2010 à 09:19
Down!
0
Rejoignez-nous