Сегодня мы рассмотрим конвертацию шаблона отчета с ReportBuilder 19 в шаблон отчета FastReport VCL.
Сделаем это с помощью обновленного конвертера в составе FastReport VCL.
Данный конвертор (ConverterRB2FR.pas) имеет следующий список конвертируемых компонентов из ReportBuilder 19 в FastReport VCL, он представлен в виде таблицы ниже.
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.
Изначально выберем интересующий нас шаблон формата *.rtm
Cделаем простой конвертер, состоящий из формы, пары компонентов и одной кнопки.
Для этого выполним следующий список действий:
1. Создадим новую программу (File -> New -> VCL Forms Application).
2. В список Uses добавьте ConverterRB2FR.
3. В зависимости от установленных компонентов может потребоваться удалить следующие блоки из списка Uses в ConverterRB2FR.pas:
VCLTee.TeeProcs, VCLTee.TeEngine, VCLTee.Chart, VCLTee.Series, VCLTee.TeCanvas
frxChart, frxBDEComponents, frxIBXComponents
4. Добавьте на форму следующие компоненты:
5. Поместите данный код в событие OnClick кнопки:
Код:
1 2 3 4 5 6 7 8 9 |
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. Запустите программу.
После этого если вы выполнили все действия правильно, приложение запустится, и вам будет необходимо нажать кнопку на форме. Далее появится диалоговое окно открытия файла, откройте нужный шаблон формата *.rtm.
Далее происходит конвертация вашего шаблона, если она произошла успешно, перед вами появится диалоговое окно сохранения шаблона, сохраните его в формате *.fr3.
Откройте этот конвертированный шаблон через дизайнер FastReport VCL и убедитесь в правильной конвертации.
Если к вашему шаблону был прикреплен DataSet, то вам необходимо прикрепить его к шаблону FastReport VCL для корректного отображения данных при построении отчета.
Пример конвертации шаблона отчетаReportBuilder 19 формата (*.rtm),
в шаблон отчета FastReport VCL6 (*.fr3)
Возьмем пример шаблона raTutor0001.rtm.
К которому в проекте прикреплен ppDBPipeline1 через ADOConnection1, ADOTable1 и DataSource1.
Выполним следующие действия:
1. Запустим наш простейший конвертор.
2. Нажмем на кнопку Test.
3. Появится диалоговое окно открытия файла, откройте шаблон RB raTutor0001.rtm.
4. Далее дождитесь окончания конвертации вашего шаблона, если она произошла успешно, перед вами появится диалоговое окно сохранения шаблона, сохраните его в формате *.fr3, например raTutor0001.fr3.
5. Затем автоматически откроется сконвертированный шаблон в дизайнере FastReport VCL и убедитесь в правильной конвертации.
6. Добавьте на форму компоненты frxReport1 и frxDBDataset1
7. В компоненте frxDBDataset1 измените свойство DataSource на DataSource1 и UserName на ppDBPipeline1
8. Теперь нам надо загрузить сохраненный шаблон в FastReport's designer. Двойным щелчком на компонент FastReport VCL и откройте сохранённый шаблон “ raTutor0001.fr3” в дизайнере отчетов.
9. Зайдите в меню FastReport designer Report → Data и выберете набор данных ppDBPipeline1.
10. Нам также необходимо привязать этот DataSet к data band. Поэтому дважды щелкните на Master Data band и выберите набор данных ppDBPipeline1.
11. Построим отчет в FastReport VCL.