Agora voc deve estar com uma imagem parecida com essa:
Muitos desses componentes que j foram includos por padro vo ser desnecessrios. No
lado direito, temos um Inspector mostrando os elementos do relatrio. Voc pode remover
os agrupamentos que foram adicionados, clicando nos elementos Group1 Group Header
e todos os demais, e aps isso, clique com boto direito e selecione a opo Remove
band. Apenas para comentar rapidamente sobre a estrutura de um relatrio, abaixo
temos as sees que so includas:
Title onde fica o ttulo do relatrio;
Page Header adiciona algum tipo de informao sobre o relatrio (por exemplo,
o ano vigente);
Column Header onde ficam os cabealhos da tabela;
Detail aqui ficam as linhas da tabela, a informao principal do relatrio;
Column Footer usado para o rodap da tabela;
Summary geralmente usado para uma concluso, diagrama ou grfico;
Page Footer informaes como data, pgina do relatrio, etc.
Todas estas sees no so obrigatrias. No nosso caso vamos utilizar apenas o Title,
o Column Header e o Detail por se tratar de um relatrio bem simples. Voc pode alterar
o texto dos elementos dando um clique duplo sobre ele, e depois colocar o texto novo,
digite enter.
A parte mais importante do relatrio a informao que deve ser mostrada. Acima eu j
indiquei que essa informao fica na seo Detail. O elemento que deve ser colocado
nesta seo chamado de campo (field), e a informao sobre os campos devem vir da
fonte de dados (data source), dessa forma o JasperReport j sabe de onde extrair a
informao que ser mostrada nesta seo. Para adicionar um novo campo ao nosso
relatrio, clique com o boto direito em Fields e selecione a opo Add field, e depois
clique sobre o campo que foi criado e o renomeie. Note que ele apenas criou o campo
no Inspector, mas esse campo ainda no foi adicionado ao nosso layout.
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import
net.sf.jasperreports.engine.data.JRBeanCollectionDataSour
ce;
public class RelatorioDeClientes {
public static void main(String[] args) throws
JRException, SQLException {
System.out.println("Gerando relatrio...");
// lista com os nossos clientes
List lista = new ArrayList();
lista.add(c1);
lista.add(c2);
lista.add(c3);
// compilacao do JRXML
JasperReport report = JasperCompileManager
.compileReport("relatorios/RelatorioClientes.jrxml");
System.out.println("Relatrio gerado.");
}
}
E pronto. S rodar o exemplo e se nada der errado, deveremos ter um arquivo PDF no
local indicado do cdigo. Neste exemplo, criei uma pasta chamada relatorios dentro da
pasta do projeto, que onde armazeno tanto o arquivo JRXML, quanto o PDF gerado
posteriormente.
Concluso
Esta foi uma rpida introduo ao JasperReports e iReport. Este um assunto bem
extenso, e no futuro teremos mais alguns exemplos mostrando como utilizar outras fontes
de dados (como uma conexo JDBC ou um arquivo XML), ou como customizar relatrio
um pouco mais, adicionando um grfico por exemplo. O JasperReports bem completo, e
possui vrias funcionalidades alm das mostradas aqui, se voc quiser se aprofundar mais
deve conferir a documentao oficial.
Donwload do cdigo aqui.
Tags: ireport, jasperreports, java, relatorios, tutorial
Este artigo foi publicado sbado, 20 de novembro de 2010 s 14:26 na(s)
categoria(s) Programao. Voc pode acompanhar os comentrios deste artigo atravs do
feed RSS 2.0. Voc pode deixar um comentrio ou utilizar a URL de trackback em seu
prprio site.
Scala Primeiros Passos
Aprendendo Scala Parte 2