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

05.02.2020

icon QR to RB

Рассмотрим миграцию из QuickReport 6 в FastReport VCL.

Сделаем это с помощью обновленного конвертера в составе FastReport VCL, он позволяет сконвертировать ваш шаблон, даже без установленного QuickReport 6 на вашем компьютере.

Конвертор (ConverterQR2FR.pas) имеет следующий список конвертируемых компонентов из QuickReport 6 в FastReport VCL, он представлен в виде таблицы ниже.

QuickReport 6

FastReport VCL

Done

QuickReport 6

FastReport VCL

Done

TQuickRep

TfrxReportPage

+

TQRLineGraph

TfrxChartView

+

TQRPreviewController

-

-

TQRGrImage
TQRGrDBImage

TfrxPictureView

KeepAspectRatio:= true

+

+

TQuickAbstractRep

-

-

TQRPDFShape

-

-

TQRSubDetail

TQRBand

TQRGroup

TfrxBand

+

TQRFrameline

TfrxLineView

+

TQRWildBand

-

-

TQRAbsTable

-

-

TQRChildBand

TfrxChild

+

TQRDBJPGlmage

TfrxPictureView

+

TQRLoopBand

TfrxMasterData.RowCount

+

TQRPQuickrep

TfrxReportPage

+

TQRStringsBand

-

-

TQRPBand

TfrxBand

+

TQRLabel

TQRDBText

TQRExpr

TQRSysData

TQRMemo

TQRExprMemo

TfrxMemoView

+

TQRPChildBand

TfrxChild

+

TQRGraphicCanvas

TfrxPictureView

+

TQRPLabel

TfrxMemoView

+

TQRMetriclabel

-

-

TQRPDBText

TfrxMemoView

+

TQRHTMLLabel

Memo allowHTMLTegs = true

+

TQRPDBlmage

TfrxPictureView

+

TQRDMBarcode

TQRDbDMBarcode

TfrxBarcode2DView

BarType := bcCodeDataMatrix

+

+

TQRPExpr

TfrxMemoView

+

TQRQRBarcode

TfrxBarcode2DView

+

TQRPMemo

TfrxMemoView

+

TQRQRDBBarcode

TfrxBarcode2DView

+

TQRPRichtext

TfrxRichView

+

TQRRichText
TQRDBRichText

TfrxRichView

+

TQRPGrid

-

-

TQRShape

TfrxShapeView

+

TQRPCheckBox

-

-

TQRlmage

TQRDBlmage

TfrxPictureView

+

TQRPShape

TfrxShapeView

+

TQRCompositeReport

-

-

TQRPExprCheckbox

-

-

TQRXMLSSFilter

-

-

TQRStringgridReport

-

-

TQRPreview

-

-

TQRGridReport

-

-

TQRColorBox

-

-

TEnhancedlistbox

-

-

TQRExpBarChart

-

-

 

 

 

 

Конвертация из QuickReport 6 в FastReport VCL 6.

Выберем нужную форму Delphi формата *.dfm, на которой расположен объект TQuickRep, в котором сконструирован нужный нам отчет. Либо шаблон отчета для дизайнера QuickReport в формате *.qr2.

Сделаем простой конвертер, состоящий из формы, пары компонентов и одной кнопки.

Для этого выполним следующий список действий:

     1. Создадим новую программу (File -> New -> VCL Forms Application).

     2. В список Uses добавьте ConverterQR2FR.

     3. В зависимости от установленных компонентов может потребоваться удалить следующие блоки из списка Uses в ConverterQR2FR.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. Запустите программу.

Если вы сделали все правильно, приложение запустится, и нужно, будет нажать на кнопку на форме.

Далее появится диалоговое окно открытия файла, откройте нужную форму Delphi формата *.dfm, содержащую объект TQuickRep, либо шаблон отчета для дизайнера QuickReport в формате *.qr2.

Затем произойдет конвертация вашего шаблона, если она произошла успешно, перед вами появится диалоговое окно сохранения шаблона, сохраните его в формате *.fr3.

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

Если к вашему шаблону был прикреплен DataSet. вам необходимо прикрепить его к шаблону FastReport VCL для корректного отображения данных при построении отчета. 

Пример конвертации формы Delphi формата (*.dfm), содержащей объект TQuickRep в шаблон отчета FastReport VCL (*.fr3)

Ниже рассмотрим на примере со скриншотами конкретную конвертацию формы Delphi формата *.dfm, содержащую объект TQuickRep в шаблон отчета FastReport VCL.

Для примера построим шаблон QR на форме invform.dfm.

screenshot 2

 

screenshot 3

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

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

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

screenshot 4
     2. Нажмем на кнопку Test.
    
     3. Появится диалоговое окно открытия файла, откройте форму Invform.dfm.
 
screenshot 5    
     4. Далее после конвертации перед вами появится диалоговое окно сохранения шаблона, сохраните его в формате *.fr3, например invform.fr3.
 
screenshot 6
 
     5. Затем автоматически откроется сконвертированный шаблон в дизайнере FastReport VCL и убедитесь в правильной конвертации.
 
screenshot 7
 
     6. Добавьте на форму компоненты frxReport1 и frxDBDataset1
 
screenshot 8
 
     7.  В компоненте frxDBDataset1 измените свойство DataSource = DataSource1 и UserName = ADOTable1.

screenshot 9
 
     8. Теперь нам надо загрузить сохраненный шаблон в FastReport's designer. Двойным щелчком на компонент FastReport VCL и откройте сохранённый шаблон “ invform.fr3.” в дизайнере отчетов.
 
screenshot 10
 
     9.  Зайдите в меню FastReport VCL Designer: Report → Data и выберете набор данных ADOTable1.
  
 
screenshot 11   screenshot 12
 
     10. Нам также необходимо привязать этот DataSet к data band. Поэтому дважды щелкните на Master Data band и выберите набор данных ADOTable1.
 
screenshot 13
 
     11. Построим отчет в FastReport VCL 6.
 
screenshot 14

 

 

 

20 ноября 2024

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

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

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

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

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

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