develomagaly
Messages postés46Date d'inscriptionmercredi 5 octobre 2005StatutMembreDernière intervention 3 mai 2006
-
24 oct. 2005 à 16:33
vincentstryckmans
Messages postés228Date d'inscriptionlundi 5 avril 2004StatutMembreDernière intervention25 octobre 2006
-
25 oct. 2005 à 12:14
bonjour,
Voila je vous explique: J'ai une procedure qui doit me permettre de récupérer des données à partir d'une base de données.
DAns cette procédure j'ai une requete qui va chercher des données dans VUE ( vue dans MySql)
Ensuite Pour chaque ligne que j'ai obtenu,
Je lance une autre requete qui va me chercher Un seul enregistrement
Voici ma procedure
procedure TFrmDonInfos.ChargerDbGrid(Planun:string;plandeux:string);
var nblig,i:integer;
Zone : string;
begin
Vue.Active:=false;
Vue.CommandText:='SELECT * FROM vue;
Vue.Active:=true;
nblig:=vue.RecordCount;
for i:=1 to nblig do
begin
Zone:=Vue.FieldByName('Nom_Zone').AsString ;
ADODataSet.Active:=false;
//j'execute ma seconde requete qui est doit remplir mon DBGrid
ADODataSet.CommandText:='SELECT DISTINCT v.libelle, (SELECT montant FROM vue WHERE date=2001 AND Nom_zone='''+Zone+''' AND NoPlan In(''ALL'','''+Planun+''','''+Plandeux+''')),';
ADODataSet.CommandText:=ADODataSet.CommandText+' (SELECT montant FROM vue WHERE date=2002 AND Nom_zone='''+Zone+''' AND NoPlan In(''ALL'','''+Planun+''','''+Plandeux+''')), ';
ADODataSet.CommandText:=ADODataSet.CommandText+' (SELECT montant FROM vue WHERE date=2003 AND Nom_zone='''+Zone+''' AND NoPlan In(''ALL'','''+Planun+''','''+Plandeux+''')), ';
ADODataSet.CommandText:=ADODataSet.CommandText+' (SELECT montant FROM vue WHERE date=2004 AND Nom_zone='''+zone+'''AND NoPlan In(''ALL'','''+Planun+''','''+Plandeux+''')) FROM vue v';
ADODataSet.CommandText:=ADODataSet.CommandText+' WHERE v.Nom_Zone='''+zone+''';';
//fin de ma requete
ADODataSet.Active:=true;
vue.Next;
end;
end;
Vue que ma requete qui est lié au DBGrid ne me renvoie qu'un seul enregistrement , A la fin de cette procedure, le DBGrid contient uniqument le dernier enregistrement ( et s'est tout).
Moi je voudrais qu'une fois ma seconde requete effectuer, que le DBGrid garde les données, que je passe à la ligne suivant et ainsi de suite!
Pouvez vous m'aider car je ne m'en sort plus tout seul !
Merci