Anda di halaman 1dari 14

30/01/2015

Fortes Report - Tutorial - Parte 1

Siga @linhadecodigo

Log In / Cadastre-se

Enviar

HOME

DESENVOLVIMENTO

FRONT-END

BANCO DE DADOS

EM DESTAQUE

2.447

Pesquisar

TODOS

PUBLIQUE
Publicidade

Desenvolvimento - Delphi

Fortes Report - Tutorial - Parte 1


Neste artigo veremos como fazer um relatrio simples usando um outro componente bem parecido com o Quick
Report, que j vem com o Delphi, porm com vrias vantagens que poderemos ver em futuros artigos que sero
publicados no portal.
por George De Luca

Desenvolvendo o Primeiro Relatrio


Amigos, fazer relatrios o famoso mal necessrio, que particularmente eu no me incomodo em
desenvolver, at porque, geralmente a parte mais rentvel do negcio !

REVISTAS DEVMEDIA

Ao final do artigo tem o link onde voc poder baixar este componente e ensina como instalar.
Bom, mas deixemos de delongas e vamos ao trabalho...
Primeiros Passos
No vou me prender em detalhes de banco e conexo.
Eu usei um banco de dados de exemplo em Firebird que se encontra na pasta Examples do mesmo.
Abra um projeto novo no Delphi e renomeie o formulrio corrente para frmChamaRel, coloque um
http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

1/14

30/01/2015

Fortes Report - Tutorial - Parte 1

Data Module e chame-o de dmDados e um segundo formulrio para frmRelEmpregados.


Coloque os componentes no Data Module como mostra a Figura 1, apontando o SQLConnection
para o banco EMPLOYEE.FDB da pasta C:\Arquivos de programas\Firebird\Firebird_1_5\examples.

.net Mag 119

Easy .net mag 39


VER TODAS

TOP 10 - ARTIGOS

Figura 1. Data Module com os componentes de conexo

Coloque o SQL descrito na Listagem 1 no SQLDataSet na propriedade CommandText:

Listagem 1 SQL do relatrio


select e.emp_no, e.first_name, e.last_name, e.phone_ext, e.job_country, d.department
from employee e

ASSINE

TOP 10 - AUTORES

Alert em Javascript

Upload de Arquivos em PHP

Connection Strings para diversos bancos


de dados

Ferramentas de BI - Uma Anlise Macro

Enxugando Controllers no ASP.NET MVC

Deixando o componente ASP:MENU


compatvel com qualquer browser

Entity Framework 4: Repositrio Genrico

ASP.NET MVC Action Filters: HandleError,


Authorize e OutputCache

Inner join department D On d.dept_no = e.dept_no


http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

2/14

30/01/2015

Fortes Report - Tutorial - Parte 1

9
Ligue os componentes e vamos seguir em frente...

10

Conhecendo o Solution Accelerator


Microsoft Assessment and Planning
Sort no GridView sem ir ao banco de dados
novamente

Criando o Relatrio
Agora vamos comear a brincadeira com o Fortes Report.

VER TODOS

V para o form frmRelEmpregados.


Adicione no formulrio o componente RLReport da paleta do Fortes (Fortes Report) e posicione-o
conforme a Figura 2.

Figura 2. Posicionamento de RLReport no formulrio de impresso

Este componente o que faz toda a manipulao dos outros componentes de impresso que j
iremos ver.
http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

3/14

30/01/2015

Fortes Report - Tutorial - Parte 1

Pressione Alt+F11 para dar um Uses na unit do DataModule dmDados.


Inclua um DataSource a este formulrio e aponte a propriedade DataSet ao ClientDataSet do
DataModule.
Inclua agora trs componentes RLBand ao RLReport e modifique as propriedades dos componentes
do relatrio como descrito na Tabela 1.

Componente

Propriedade

Valor

RLReport1

DataSource

DataSource1

Title

Relatrio de Empregados

BandType

btHeader

Color

ClSilver

Font/Style/fsBold

True

BandType

btHeader

Font/Style/fsBold

True

RLBand3

BandType

btDetail

RLBand3

BandType

btFooter

RLBand1

RLBand2

Tabela 1. Valores para as propriedades dos comp. do relatrio


http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

4/14

30/01/2015

Fortes Report - Tutorial - Parte 1

Na primeira banda do relatrio, o ttulo do relatrio, insira um componentes RLLabel e dois


RLSystemInfo.
Altere as propriedades como descrito na Tabela 2.

Componente

Propriedade

Valor

RLLabel1

Align

faLeftTop

Caption

linhadecodigo.com.br

Align

faCenterTop

Info

itTitle

Align

faRightTop

Info

itPageNumber

Text

Pg.:

RLSystemInfo1

RLSystemInfo2

Tabela 2. Valores para as propriedades da banda de ttulo

Posicione agora na segunda banda do relatrio, RLBand, insira seis RLLabel e altere as
propriedades como descrito na Tabela 3.
http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

5/14

30/01/2015

Fortes Report - Tutorial - Parte 1

Componente

Propriedade

Valor

Todos

Align

faTopOnly

RLLabel2

Caption

Left

Caption

Nome

Left

48

Caption

Sobrenome

Left

200

Caption

Ramal

Left

392

Caption

Pas

Left

448

Caption

Departamento

RLLabel3

RLLabel4

RLLabel5

RLLabel6

RLLabel7

http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

6/14

30/01/2015

Fortes Report - Tutorial - Parte 1

Left

592

Tabela 3. Valores para as propriedades da banda de ttulo

Na banda de detalhe, insira seis RLDBText, que sero os componentes DataWare contendo os
dados de cada coluna da tabela. Veja a na Tabela 4 os valores de suas propriedades.

Componente

Propriedade

Valor

Todos

Align

faTopOnly

AutoSize

False

DataSource

DataSource1

DataField

EMP_NO

Left

DataField

FIRST_NAME

Left

48

DataField

LAST_NAME

RLDBText1

RLDBText2

RLDBText3

http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

7/14

30/01/2015

RLDBText4

RLDBText5

RLDBText6

Fortes Report - Tutorial - Parte 1

Left

200

DataField

PHONE_EXT

Left

392

DataField

JOB_COUNTRY

Left

448

DataField

DEPARTMENT

Left

592

Tabela 4. Valores para as propriedades da banda de detalhe

E finalmente v para a ltima banda, que a de rodap, insira dois RLSystemInfo e altere as
propriedades como descrito na Tabela 5.

Componente

Propriedade

Valor

RLSystemInfo3

Align

faRightTop

Info

itDate

Text

Data:

http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

8/14

30/01/2015

RLSystemInfo4

Fortes Report - Tutorial - Parte 1

Align

faRightTop

Info

itHour

Text

Hora:

Tabela 5. Valores para as propriedades da banda do rodap

E para terminar este formulrio, v no evento BeforePrint e coloque a seguinte linha em negrito
descrita abaixo em negrito:

procedure TfrmRelEmpregados.RLReport1BeforePrint(Sender: TObject;


var PrintIt: Boolean);
begin
dmDados.ClientDataSet.Open;
end;

Este evento ir abrir o ClientDataSet antes do incio da impresso.


Salve este formulrio e v para o formulrio (frmChamaRel) que ir chamar o relatrio.
O resultado final ficar como a Figura 3.

http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

9/14

30/01/2015

Fortes Report - Tutorial - Parte 1

Figura 3. Posicionamento de de todos os componentes em RLReport no formulrio de impresso

Chamando o Relatrio
Agora iremos programar o formulrio para a chamada do relatrio propriamente dito.
Insira um RadioGroup e um BitBtn e posicione-os como mostra a Figura 4.

Figura 4. Formulrio para chamada do relatrio

http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

10/14

30/01/2015

Fortes Report - Tutorial - Parte 1

Aperte Alt+F11 e de um Uses na unit que contm o relatrio.


No evento OnClick do boto coloque o cdigo descrito abaixo em negrito:

procedure TfrmChamaRel.BitBtn1Click(Sender: TObject);


begin
If RadioGroup1.ItemIndex = 0 Then
frmRelEmpregados.RLReport1.Preview() // preview do relatrio
Else
frmRelEmpregados.RLReport1.Print; // imprime direto para impressora
end;

Executando o relatrio
O prximo passo executar o relatrio apertando F9 no Delphi.
J executando, marque a primeira opo do RadioGroup e clique no boto Imprimir.
O relatrio ser mostrado como na Figura 5.

http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

11/14

30/01/2015

Fortes Report - Tutorial - Parte 1

Figura 5. Parte do preview do relatrio

E depois, informe a opo Impressora e veja como sair a impresso no papel.

Concluses

http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

12/14

30/01/2015

Fortes Report - Tutorial - Parte 1

Vimos aqui como podemos fazer um relatrio simples em um outro componente bem parecido com o
Quick Report, que j vem com o Delphi, porm com vrias vantagens que poderemos ver em
futuros artigos que sero publicados aqui no site.
Abrao a todos e at a prxima.

Links
www.fortesinformatica.com.br
Site para baixar os componentes do FortesReport, com instrues para instalao.

George De Luca - Analista de sistemas com experincia desde 1994 e psgraduado (MBA) em gesto empresaria. Experincia em diversos mercados como comrcio,
indstria, varejo e governamental. Atualmente CIO da Intersystem em Portugal.

Leia tambm
Multicast Events no Delphi
Delphi

Utilizando o componente dxWindowAlertManager da DevExpress


Delphi

http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

13/14

30/01/2015

Fortes Report - Tutorial - Parte 1

Classe Genrica para Transformar Tipos ENUM Para TStrings em Delphi


Delphi

Desenvolvendo FrameWork em Delphi


Delphi

Criao de Componente Vinculado a Lista Encadeada


Delphi

Estamos aqui:

Linha de Cdigo faz parte do grupo Web-03

Poltica de privacidade e de uso | Anuncie | Cadastre-se | Fale conosco

2015 Linha de Cdigo. Todos os direitos reservados

http://www.linhadecodigo.com.br/artigo/725/fortes-report-tutorial-parte-1.aspx

14/14

Anda mungkin juga menyukai