Merhabalar, Delphi ve fastreport ile ilgili takıldığım bir konu var. Yardımlarınızı diliyorum arkadaşlar.
Konu şu;
İki tane sorgum var, biri ana sorgu diğeri bu sorgunun her dönüşünde gelen sorgu. Fastreportta Master - Detail ilişkisi kurmam gerekiyor. Aşağıdaki kodları yazdım fakat detail datada sürekli son kayda ait veriler gösteriyor. Şimdiden teşekkürler
QRaporlar := TMyQuery.Create(Nil);
QRaporlar.Connection := DM.MyCon;
FrxDataSetRaporlar.DataSet := QRaporlar;
QRaporlar.sql.Clear;
QRaporlar.sql.Add
('SELECT m.menuid,u.urunadi,u.barkod FROM urunler u, menuicerik m where u.menuid=m.menuid group by m.menuid ORDER BY `m`.`menuid` ASC');
QRaporlar.Open;
QRaporlar.First;
while not QRaporlar.eof do
begin
QRaporlar1 := TMyQuery.Create(Nil);
QRaporlar1.Connection := DM.MyCon;
FrxDataSetRapor1.DataSet := QRaporlar1;
QRaporlar1.sql.Clear;
QRaporlar1.sql.Add
('SELECT u.urunadi,u.barkod FROM urunler u, menuicerik m where u.id=m.urunid and m.menuid=:menuid order by u.urunadi asc');
QRaporlar1.Params.ParamByName('menuid').Value :=
QRaporlar.FieldByName('menuid').AsString;
QRaporlar1.Open;
QRaporlar1.First;
QRaporlar.Next;
end;
QRaporlar := TMyQuery.Create(Nil);
QRaporlar.Connection := DM.MyCon;
DataSource1.DataSet := QRaporlar;
FrxDataSetRaporlar.DataSet := DataSource1.DataSet;
QRaporlar.sql.Clear;
QRaporlar.sql.Add
('SELECT m.menuid,u.urunadi,u.barkod FROM urunler u, menuicerik m where u.menuid=m.menuid group by m.menuid ORDER BY `m`.`menuid` ASC');
QRaporlar.Open;
QRaporlar.First;
QRaporlar1 := TMyQuery.Create(Nil);
QRaporlar1.Connection := DM.MyCon;
QRaporlar1.MasterSource := DataSource1;
QRaporlar1.DetailFields:=QRaporlar.MasterFields;
FrxDataSetRapor1.DataSet := QRaporlar1;
QRaporlar1.sql.Clear;
QRaporlar1.sql.Add
('SELECT u.urunadi,u.barkod,m.menuid FROM urunler u, menuicerik m where u.id=m.urunid and m.menuid=:menuid order by u.urunadi asc');
QRaporlar1.Params.ParamByName('menuid').Value :=
QRaporlar.FieldByName('menuid').AsString;
QRaporlar1.Open;
QRaporlar1.First;