教你如何快速又有趣地從ReportBuilder 19遷移到FastReport VCL 6
今天,我們將研究從ReportBuilder 19到FastReport VCL 6的遷移。
讓我們使用FastReport VCL 6.3中包含的更新的Converter來(lái)執(zhí)行此操作,即使您沒(méi)有在計(jì)算機(jī)上安裝ReportBuilder 19,它也允許您轉(zhuǎn)換模板。
轉(zhuǎn)換器(ConverterQR2FR.pas)具有從ReportBuilder 19到FastReport VCL 6的以下可轉(zhuǎn)換組件列表,在下表中列出。
ReportBuilder | FastReport | Done | ReportBuilder | FastReport | Done |
---|---|---|---|---|---|
Title | TfrxReportTitle | + | CheckBox | TfrxCheckBoxView | + |
Header | TfrxPageHeader | + | DBText | TfrxMemoView | + |
Detail | TfrxMasterData | + | DBMemo | TfrxMemoView | + |
Footer | TfrxPageFooter | + | DBRichText | TfrxRichView | + |
Summary | - | - | DBCalc | TfrxMemoView | + |
PageSummary | - | - | DBImage | TfrxPictureView | + |
Memo | TfrxMemoView | + | DBBarCode | TfrxBarCodeView | + |
RichText | TfrxRichView | + | 2D DBBarCode | TfrxBarcode2DView | + |
Label | TfrxMemoView | + | DBTeeChart | TfrxChartView | + |
SystemVariable | TfrxMemoView | + | DBCheckBox | TfrxCheckBoxView | + |
Variable | TfrxMemoView | + | Region | - | - |
Image | TfrxPictureView | + | SubReport | - | - |
Shape | TfrxShapeView | + | CrossTab | TfrxDBCrossView | + |
Line | TfrxLineView | + | PageBreak | - | - |
TeeChart | TfrxChartView | + | PaintBox | TfrxPictureView | + |
BarCode | TfrxBarCodeView | + | TableGrid | TfrxTableObject | + |
2D BarCode | TfrxBarcode2DView | + | Google Map | TfrxMapView | + |
從ReportBuilder 19到FastReport VCL 6的轉(zhuǎn)換。
選擇*.rtm格式的ReportBuilder 19設(shè)計(jì)器的報(bào)表模板。
我們將制作一個(gè)簡(jiǎn)單的轉(zhuǎn)換器,包括一個(gè)表單、一對(duì)組件和一個(gè)按鈕。
執(zhí)行以下操作列表:
1.創(chuàng)建一個(gè)新的應(yīng)用程序(File -> New -> VCL Forms Application)。
2.在Uses子句中輸入ConverterRB2FR。
3.根據(jù)安裝的組件,您可能需要從ConverterRB2FR.pas的Uses子句中刪除以下塊:
VCLTee.TeeProcs, VCLTee.TeEngine, VCLTee.Chart, VCLTee.Series, VCLTee.TeCanvas
frxChart, frxBDEComponents, frxIBXComponents
4.將以下組件拖放到表單中:
- frxReport
- OpenDialog
- SaveDialog
- Button
- frxDesigner
5.將此代碼放在按鈕的OnClick事件中:
代碼:
procedure TForm1.Button1Click(Sender: TObject); begin if OpenDialog1.Execute then if frxReport1.LoadFromFile(OpenDialog1.FileName) then if SaveDialog1.Execute then frxReport1.SaveToFile(SaveDialog1.FileName); frxReport1.LoadFromFile(SaveDialog1.FileName); frxReport1.DesignReport(); end.
6.運(yùn)行應(yīng)用程序。
如果您正確執(zhí)行了所有操作,則該應(yīng)用程序?qū)?dòng),并且您需要單擊表單上的一個(gè)按鈕。
然后將出現(xiàn)一個(gè)用于打開(kāi)文件的對(duì)話框,以*.rtm格式打開(kāi)ReportBuilder 19設(shè)計(jì)器的報(bào)表模板。
此后,將轉(zhuǎn)換您的模板,如果成功完成,將在您面前出現(xiàn)一個(gè)用于保存模板的對(duì)話框,將其保存為*.fr3格式。
轉(zhuǎn)換后的模板將在FastReport VCL設(shè)計(jì)器中自動(dòng)打開(kāi),但請(qǐng)確保轉(zhuǎn)換正確。
如果將DataSet附加到模板,則需要在構(gòu)建報(bào)表時(shí)將其附加到FastReport VCL模板以正確顯示數(shù)據(jù)。
轉(zhuǎn)換ReportBuilder 19(*.rtm)的報(bào)表模板的示例
模板報(bào)表FastReport VCL 6(*.fr3)
下面,使用屏幕快照示例,我們將考慮*.dfm格式的Delphi格式的特定轉(zhuǎn)換,該格式將TQuickRep對(duì)象包含到FastReport VCL報(bào)表模板中。
例如,讓我們構(gòu)建ReportBuilder模板raTutor0001.rtm。
我們通過(guò)ADOConnection1,DataSource1和ADOTable1將ppDBPipeline1連接到它。
按著這些次序:
1.讓我們運(yùn)行簡(jiǎn)單的Converter。
2.按下測(cè)試Test按鈕。
3.出現(xiàn)打開(kāi)文件對(duì)話框時(shí),打開(kāi)模版ReportBuilder raTutor0001.rtm。
4.然后等待模板轉(zhuǎn)換完成,如果成功,您將看到一個(gè)對(duì)話框,用于保存模板,將其保存為*.fr3格式,例如raTutor0001.fr3。
5.然后,轉(zhuǎn)換后的模板將在FastReport VCL 6設(shè)計(jì)器中自動(dòng)打開(kāi),并確保轉(zhuǎn)換正確。
6.將frxReport1和frxDBDataset1組件拖放到窗體中
7.在frxDBDataset1組件中,將屬性DataSource更改為DataSource1,將UserName更改為ppDBPipeline1。
8.現(xiàn)在,我們需要將保存的模板加載到FastReport VCL Designer中。雙擊FastReport VCL組件,然后在報(bào)表設(shè)計(jì)器中打開(kāi)保存的模板“raTutor0001.fr3”。
9.轉(zhuǎn)到FastReport VCL設(shè)計(jì)器報(bào)表→“數(shù)據(jù)”菜單,然后選擇ppDBPipeline1數(shù)據(jù)集。
10.我們還需要將此DataSet綁定到數(shù)據(jù)段。因此,雙擊MasterDataBand并選擇ppDBPipeline1數(shù)據(jù)集。
11.在FastReport VCL 6中生成報(bào)表。
產(chǎn)品介紹 | 下載試用 | 優(yōu)惠活動(dòng) | 在線客服