Hoje, veremos como fazer a migração do QuickReport 6 para o FastReport VCL 6.
Vamos fazê-lo com o conversor atualizado incluído no FastReport VCL 6.3, que permite converter seu modelo, mesmo sem o QuickReport 6 instalado no seu computador.
O conversor (ConverterQR2FR.pas) possui a seguinte lista de componentes conversíveis do QuickReport 6 para FastReport VCL 6, apresentado na tabela abaixo.
QuickReport 6 |
FastReport VCL 6 |
Done |
QuickReport 6 |
FastReport VCL 6 |
Done |
TQuickRep |
TfrxReportPage |
+ |
TQRLineGraph |
TfrxChartView |
+ |
TQRPreviewController |
- |
- |
TQRGrImage |
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 |
TfrxRichView |
+ |
TQRPGrid |
- |
- |
TQRShape |
TfrxShapeView |
+ |
TQRPCheckBox |
- |
- |
TQRlmage TQRDBlmage |
TfrxPictureView |
+ |
TQRPShape |
TfrxShapeView |
+ |
TQRCompositeReport |
- |
- |
TQRPExprCheckbox |
- |
- |
TQRXMLSSFilter |
- |
- |
TQRStringgridReport |
- |
- |
TQRPreview |
- |
- |
TQRGridReport |
- |
- |
TQRColorBox |
- |
- |
TEnhancedlistbox |
- |
- |
TQRExpBarChart |
- |
- |
|
|
|
A conversão de QuickReport 6 para FastReport VCL 6.
Selecione o formato Delphi do formato * .dfm, que você pode encontrar o objeto TQuickRep, onde está o relatório a ser convertido. Ou selecione o modelo de relatório do designer do QuickReport 6 no formato *.qr2.
Fará uma conversão simples, que consiste em um formulário, um par de componentes e um botão.
Execute a seguinte lista de ações:
1. Criar uma nova aplicação (File -> New -> VCL Forms Application).
2. Inclua a clausula Uses para ConverterQR2FR.
3. Dependendo dos componentes instalados, você pode precisar remover o seguinte bloco da clausula Uses no ConverterQR2FR.pas:
VCLTee.TeeProcs, VCLTee.TeEngine, VCLTee.Chart, VCLTee.Series, VCLTee.TeCanvas
frxChart, frxBDEComponents, frxIBXComponents
4. Coloque os seguintes componentes no formulário:
5. Insira esse código no evento OnClick do botão:
Code:
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. Se você fez tudo corretamente, o aplicativo será iniciado e você precisará clicar em um botão no formulário.
Em seguida, será exibida uma caixa de diálogo para abrir um arquivo, abra o formulário Delphi necessário do formato * .dfm, contendo o objeto TQuickRep, ou um modelo de relatório para o designer do QuickReport 6 no formato * .qr2.
Em seguida, seu modelo será convertido; se isso tiver sido concluído com êxito, uma caixa de diálogo para salvar o modelo aparecerá na sua frente, salve-a no formato * .fr3.
Esse modelo convertido será aberto automaticamente no designer FastReport VCL, mas verifique se a conversão estava correta.
Se um DataSet foi anexado ao seu modelo, você precisará anexá-lo ao modelo FastReport VCL para exibir os dados corretamente ao criar o relatório.
Abaixo, captura de tela de exemplo, consideraremos uma conversão específica de um formulário Delphi *.dfm, que contém o objeto TQuickRep no modelo de relatório FastReport VCL.
Por exemplo, vamos criar um modelo QR no formulário invform.dfm.
Conectamos o DataSet através do ADOConnection1, DataSource1 e Table1.
Siga esses passos:
1. Vamos rodar nosso simples conversor.