原創(chuàng)|其它|編輯:郝浩|2012-06-05 03:05:23.000|閱讀 1209 次
概述:FastReport報(bào)表控件中如何共用TFrxreport及TfrxDBDataSet?TfrxReport是最主要的報(bào)表元件,一個(gè) TfrxReport元件組成一份報(bào)表。TfrxDBDataSet元件用來連接以TDataSet, TTable及TQuery為基類的數(shù)據(jù)庫(kù)元件。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
TFrxreport是什么?
TfrxReport是最主要的報(bào)表元件,一個(gè) TfrxReport元件組成一份報(bào)表。在設(shè)計(jì)時(shí)期,雙擊此元件可打開報(bào)表設(shè)計(jì)器(Report Designer),此元件擁有所有載入、存盤、設(shè)計(jì)及來看報(bào)表必須的屬性及方法。
TfrxDBDataSet是什么?
TfrxDBDataSet元件用來連接以TDataSet, TTable及TQuery為基類的數(shù)據(jù)庫(kù)元件,有關(guān)數(shù)據(jù)的導(dǎo)航及字段的參考都是自動(dòng)的,程序員不需特殊的設(shè)定。
FastReport報(bào)表控件中如何共用TFrxreport及TfrxDBDataSet
一個(gè)程序中,不管多么大的程序,只要打印或預(yù)覽時(shí)是模式的,則完全可以共用一個(gè)TFrxreport變量及幾個(gè)TfrxDBDataSet。只不過,要注意完成一個(gè)報(bào)表程序的步驟,主要是下面幾步:
1、清除報(bào)表,得到一個(gè)全新的報(bào)表內(nèi)容。
Frxreport1.clear。
2、設(shè)置要使用的TfrxDBDataSet的別名,如果不需要可以省略這一步,但一般最好不同的報(bào)表用不同的別名。
注意這一步要在加載報(bào)表文件之前,因?yàn)橐话阍O(shè)計(jì)報(bào)表文件時(shí)已經(jīng)包含了別名信息。
frxDBDataSet1.UserName:=別名;
3、加載報(bào)表或動(dòng)態(tài)建立一個(gè)TfrxReportPage。
Frxreport1.LoadFromFile(報(bào)表文件的完整文件名);
4、關(guān)聯(lián)TfrxDBDataSet與TDataset,并設(shè)置要使用哪些TfrxDBDataSet。
Frxreport1.DataSets.Clear;//先清除原來的數(shù)據(jù)集
frxDBDataSet1.DataSet:=dataset1;//關(guān)聯(lián)Fastreport的控件與TDataset數(shù)據(jù)集。
Frxreport1.DataSets.Add(frxDBDataSet1);//加載關(guān)聯(lián)好的TfrxDBDataSet到報(bào)表中。
經(jīng)過這幾步后,就可以像單獨(dú)使用一個(gè)Tfrxreport一樣使用共用的報(bào)表組件了
寫成函數(shù)是
procedure IniReport(var frReport:TfrxReport;var frDbBase:TfrxDBDataset;ReportName: string; qry: TADOQuery);
begin
frReport.clear;
frReport.LoadFromFile(ReportName);
frReport.DataSets.Clear;
frDbBase.DataSet := qry;
frReport.DataSets.Add(frDbBase);
end;
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件網(wǎng)