Infopower Gridini (Twwdbgrid) Yaziciya Gondermek
fahrettin03.08.2005 - 09:49:04
Fi tarihinde yazdigim bir kod... Bir Infopower gridini komple yaziciya gonderme işine yariyor....

Tahmin ediyorum ki bunun standart DBGrid i yaziciya gonderebileni daha çok derde deva olacaktir. Kodu uzun zamandir kullanmadigim icin bu konuda destek vermem zor ama ben buraya atayım dedim... Belki kendi işine de yarayacak ve vakti olan bir arkadaş da bunu DBGrid i print eder şekilde dönüştürerek umumun paylaşımına atar.

Kolay gelsin.....


Kullanımı basit yazdirmak istediginiz gridin adi ve bir de gorunmesini istediginiz bir baslik ile cagiriyorsunuz....

Grid_Rapor(TwwDBGrid1, 'Musteri Listesi');


procedure Grid_Rapor(VAR_GRID:TwwDBGrid;VAR_BASLIK:string);
var
FRM_GRID_RAPOR:TForm;
QRP_MASTER:TQuickRep;
QRB_TITLE,QRB_DETAIL, QRB_SUMMARY,QRB_FOOTER:TQRBand;
VAR_SAYAC,VAR_SOL_HIZA:Smallint;
VAR_STRING, VAR_ALAN_ADI:string;
VAR_ALINGMENT:TAlignment;
begin
Application.CreateForm(TForm,FRM_GRID_RAPOR);
FRM_GRID_RAPOR.Width:=700;
FRM_GRID_RAPOR.Height:=800;
QRP_MASTER:=TQuickRep.Createnew(FRM_GRID_RAPOR);
QRP_MASTER.DataSet:=VAR_GRID.DataSource.DataSet;
QRB_TITLE:=QRP_MASTER.CreateBand(rbTitle);
QRB_DETAIL:=QRP_MASTER.CreateBand(rbDetail);
QRB_SUMMARY:=QRP_MASTER.CreateBand(rbSummary);
QRB_FOOTER:=QRP_MASTER.CreateBand(rbPageFooter);
QRB_TITLE.Height:=100;
QRB_DETAIL.Height:=22;
QRB_SUMMARY.Height:=50;
QRB_FOOTER.Height:=30;
VAR_SOL_HIZA:=10;
with TQRLabel.Create(QRB_TITLE) do
begin
Parent:=QRB_TITLE;
Top:=20;
Font.Name:='Times New Roman';
Font.Size:=16;
Font.Style:=[fsBold];
Height:=18;
Visible:=True;
Caption:=VAR_BASLIK;
Alignment:=taCenter;
Left:=Round((QRP_MASTER.Width-Width)/2);
end;
for VAR_SAYAC:=0 to VAR_GRID.Selected.Count-1 do
begin
VAR_ALAN_ADI:=Copy(VAR_GRID.Selected[VAR_SAYAC],1,Pos(#9,VAR_GRID.Selected[VAR_SAYAC])-1);
if VAR_GRID.DataSource.DataSet.FieldByName(VAR_ALAN_ADI).DataType in [ftSmallint, ftInteger, ftFloat,ftCurrency,ftLargeInt] then
VAR_ALINGMENT:=taRightJustify
else
VAR_ALINGMENT:=taLeftJustify;
with TQRLabel.Create(QRB_TITLE) do
begin
Parent:=QRB_TITLE;
Top:=75;
Font.Name:='Times New Roman';
Font.Size:=8;
Font.Style:=[fsBold];
AutoSize:=False;
Left:=VAR_SOL_HIZA;
Width:=Round(VAR_GRID.ColWidths[VAR_SAYAC+1]);
Height:=18;
Visible:=True;
Caption:=VAR_GRID.DataSource.DataSet.FieldByName(VAR_ALAN_ADI).DisplayLabel;
Alignment:=VAR_ALINGMENT;
end;
with TQRDBText.Create(QRB_DETAIL) do
begin
Parent:=QRB_DETAIL;
Top:=1;
Font.Name:='Times New Roman';
Font.Size:=8;
AutoSize:=False;
Left:=VAR_SOL_HIZA;
Width:=Round(VAR_GRID.ColWidths[VAR_SAYAC+1]);
Height:=18;
Visible:=True;
DataSet:=VAR_GRID.DataSource.DataSet;
DataField:=VAR_ALAN_ADI;
Alignment:=VAR_ALINGMENT;
end;
VAR_SOL_HIZA:=VAR_SOL_HIZA+5+Round(VAR_GRID.ColWidths[VAR_SAYAC+1]);
end;
QRP_MASTER.Preview;
end;
 
NOT : Bu sayfa google'un siteyi indekslemesi içindir. www.delphiturkiye.com/forum/ adresini kullanınız!
1998-2006 www.delphiturkiye.com