![]() |
|
خطأ في كود طباعة تقرير QuickReport انطلاقا من DBGrid - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : خطأ في كود طباعة تقرير QuickReport انطلاقا من DBGrid (/showthread.php?tid=6309) |
خطأ في كود طباعة تقرير QuickReport انطلاقا من DBGrid - phplibya - 10-07-2014 لقد وجد هذا الكود في احدى المنتديات عن طباعة محتويات DBGrid الى QuickReport ولكن عندما قمت بتجربته ضهر لي هذا الخطأ ولم اجد له حل كود : procedure TGridReport.Preview(Grid: TDBGrid);
var
i, CurrentLeft, CurrentTop : integer;
BMark: TBookmark;
begin
GridRep.Dataset:=Grid.DataSource.DataSet;
if not GridRep.Bands.HasColumnHeader then
GridRep.Bands.HasColumnHeader:=true;
if not GridRep.Bands.HasDetail then
GridRep.Bands.HasDetail:=true;
GridRep.Bands.ColumnHeaderBand.Height:=Abs(Grid.TitleFont.Height) + 10;
GridRep.Bands.DetailBand.Height:=Abs(Grid.Font.Height) + 10;
CurrentLeft := 12;
CurrentTop := 6;
{Record where the user stopped in the DBGrid}
BMark:=Grid.DataSource.DataSet.GetBookmark;
{Don't let the grid flicker while the report is running}
Grid.DataSource.DataSet.DisableControls;
try
for i:=0 to Grid.FieldCount - 1 do
begin
if (CurrentLeft + Canvas.TextWidth(Grid.Columns[i].Title.Caption))
(GridRep.Bands.ColumnHeaderBand.Width) then
begin
CurrentLeft := 12;
CurrentTop := CurrentTop + Canvas.TextHeight('A') + 6;
GridRep.Bands.ColumnHeaderBand.Height := GridRep.Bands.ColumnHeaderBand.Height +
(Canvas.TextHeight('A') + 10);
GridRep.Bands.DetailBand.Height := GridRep.Bands.DetailBand.Height +
(Canvas.TextHeight('A') + 10);
end;
{Create Header with QRLabels}
with TQRLabel.Create(GridRep.Bands.ColumnHeaderBand) do
begin
Parent := GridRep.Bands.ColumnHeaderBand;
Color := GridRep.Bands.ColumnHeaderBand.Color;
Left := CurrentLeft;
Top := CurrentTop;
Caption:=Grid.Columns[i].Title.Caption;
end;
{Create Detail with QRDBText}
with TQRDbText.Create(GridRep.Bands.DetailBand) do
begin
Parent := GridRep.Bands.DetailBand;
Color := GridRep.Bands.DetailBand.Color;
Left := CurrentLeft;
Top := CurrentTop;
Alignment:=Grid.Columns[i].Alignment;
AutoSize:=false;
AutoStretch:=true;
Width:=Grid.Columns[i].Width;
Dataset:=GridRep.Dataset;
DataField:=Grid.Fields[i].FieldName;
CurrentLeft:=CurrentLeft + (Grid.Columns[i].Width) + 15;
end;
end;
lblPage.Left := bdTitle.Width - lblPage.Width - 10;
lblDate.Left := bdTitle.Width - lblDate.Width - 10;
{After all, call the QuickRep preview method}
GridRep.PreviewModal; {or Preview if you prefer}
finally
with Grid.DataSource.DataSet do
begin
GotoBookmark(BMark);
FreeBookmark(BMark);
EnableControls;
end;
end;
end;كود : http://delphi.cjcsoft.net/viewthread.php?tid=44018خطأ في كود طباعة تقرير QuickReport انطلاقا من DBGrid - phplibya - 11-07-2014 [FONT="Arial Black"]السلام عليكم - بعد محاولات تم تصحيح الكود حيث كان الخطأ في السطر 71 كاتالي وهو عدم وجود = ولقد تم تصحيحه if (CurrentLeft + Canvas.TextWidth(Grid.Columns[i].Title.Caption))=(GridRep.Bands.ColumnHeaderBand.Width) then ولكن ظهر خطأ اخر وهو [Error] File not found: 'QUICKRPT.RES' الملف QUICKRPT.RES غير موجود وهذا المرفق بعد تعديل الكود خطأ في كود طباعة تقرير QuickReport انطلاقا من DBGrid - bassem_43 - 12-07-2014 السلام عليكم اخي phplibya هل انت متاكد من تثبيتك ل Quick Report مع نسخة دالفي التي تعمل عليها ؟؟ خطأ في كود طباعة تقرير QuickReport انطلاقا من DBGrid - phplibya - 13-07-2014 السلام عليكم الحمدالله تم حل المشكلة في خطأ كود طباعة تقرير QuickReport انطلاقا من DBGrid سواء بعد فلترة البيانات او قبلها واضع بين يدكم المشروع كاملا ليستفيد منه باقي الاعضاء ( المشروع في المرفقات ) خطأ في كود طباعة تقرير QuickReport انطلاقا من DBGrid - wibmaster - 21-10-2014 يوجد خطأ في المشروع التقرير ملخبط |