Миграция из ReportBuilder 19 в FastReport VCL быстро и с удовольствием

05.02.2020

logo RB to FR 

Сегодня мы рассмотрим конвертацию шаблона отчета с 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. Добавьте на форму следующие компоненты:

  • frxReport
  • OpenDialog
  • SaveDialog
  • Button
  • frxDesigner

 screenshot 1

     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.

screenshot 2

 

screenshot 3 

К которому в проекте прикреплен ppDBPipeline1 через ADOConnection1, ADOTable1 и DataSource1.

 screenshot 4

Выполним следующие действия:

     1. Запустим наш простейший конвертор.

screenshot 5

     2. Нажмем на кнопку Test.

     3. Появится диалоговое окно открытия файла, откройте шаблон RB raTutor0001.rtm.

screenshot 6

     4. Далее дождитесь окончания конвертации вашего шаблона, если она произошла успешно, перед вами появится диалоговое окно сохранения шаблона, сохраните его в формате *.fr3, например raTutor0001.fr3.  

screenshot 7

     5. Затем автоматически откроется сконвертированный шаблон в дизайнере FastReport VCL и убедитесь в правильной конвертации.

screenshot 8

     6. Добавьте на форму компоненты frxReport1 и frxDBDataset1

screenshot 9

     7. В компоненте frxDBDataset1 измените свойство DataSource на DataSource1 и UserName на ppDBPipeline1

screenshot 10

     8. Теперь нам надо загрузить сохраненный шаблон в FastReport's designer. Двойным щелчком на компонент FastReport VCL и откройте сохранённый шаблон “ raTutor0001.fr3” в дизайнере отчетов.

screenshot 11

     9. Зайдите в меню FastReport designer Report → Data и выберете набор данных ppDBPipeline1.

screenshot 12   screenshot 13

     10. Нам также необходимо привязать этот DataSet к data band. Поэтому дважды щелкните на Master Data band и выберите набор данных ppDBPipeline1.

screenshot 14

     11. Построим отчет в FastReport VCL.

screenshot 15

 

20 ноября 2024

Локализация и смена языков в FastReport VCL

FastReport VCL поддерживает 40 языков для локализации интерфейса и позволяет изменять язык на лету через меню или код, без перекомпиляции.
1 ноября 2024

Новые возможности редактора отчетов FastReport VCL

Рассматриваем новые возможности редактора отчетов: выносные линии, подсветка пересекающихся объектов, обновлённые деревья отчетов и данных.
30 октября 2024

Использование стилей при создании отчетов в FastReport VCL

В статье подробно рассматривается одна из новых возможностей FastReport VCL – применение стилей и страниц стилей.