0 Compartilhamentos 527 Views 7 Comments

Tutorial Criando Relatórios com JasperReports – Primeiros Passos

30 de abril de 2014

Bom dia, boa tarde ou boa noite!

Aprenderemos neste tutorial como criar um relatório JasperReports e preenche-lo a partir de uma Lista de Beans, ou seja, sem a necessidade de acesso ao banco de dados.

O que me motivou a escrever este tutorial foi, justamente porque não encontrei nada parecido, nada básico o bastante para me guiar, quando precisei criar meu primeiro relatório utilizando JasperReports.

Não sei se minha situação(problema) é semelhante a de alguém. No meu caso, escrevi toda a aplicação utilizando JPA para camada de persistência. Após terminar todas as funções, passei para a parte de criar relatórios, foi onde pensei que criar um relatório e ter que escrever uma sentença SQL para obter os dados, seria um retrocesso, pois já contava com todo o mapeamento necessário para gerar as informações. Então, surgiram as dúvidas, e a solução foi passar um lista de objetos para o relatório.

Este tutorial está organizado em 5 partes:

  • 1 Preparando o Ambiente
  • 2 Criando a Classe de Dados
  • 3 Criando o Relatório
  • 4 Configurando os JARs para o JasperReport
  • 5 Criando a Classe Para Manipular o Relatório

Vamos então colocar a mão na massa \0/

Preparando o Ambiente

Primeiro, vamos pensar na organização/pacotes de nosso pequeno projeto. Estou utilizando o Eclipse Kepler mas, nada o impedirá de usar sua IDE favorita.

Crie um projeto JavaSE nomeado RelatorioJasper

jasperreposts-1

Utilizaremos os seguinte pacotes para organizar nosso projeto

jasper – Arquivos JasperReports

model – Beans que servem para representar nossos dados

relatorio – Classes responsáveis por gerar nosso relatórios

testes – Nossas classes para testar o relatórios

Criando a Classe de Dados

Primeiro, criaremos a classe/bean que representará nossos dados. Utilizaremos uma classe Cliente neste tutorial.

Criando o Relatório

Utilizaremos a ferramenta iReport5.0 para criar nosso relatório. Ele pode ser baixado aqui http://www.4shared.com/zip/ZtsRzMJFce/iReport.html

Acessando a ferramenta iReport5.0

1º Clique no menu “Arquivo” e então “New…” será apresentada uma tela contendo diversas opções de relatório. Escolheremos a primeira opção “Report” e “Blank A4”

Existem outros templantes interessantíssimos, mas por hora, utilizaremos o Blank A4

2º Clique em “Open this Template”

jasperreposts-2

Definindo o nome e o lugar do relatório

Em report name, defina o nome do relatório, em nosso caso será: Clientes

Em location, defina o diretório onde será salvo. Notem que utilizei o workspace do Eclipse e salvei direto no package br.com.rdtecnologia.jasper. Clique em Próximo e depois em Finalizar.

jasperreposts-3

Após salvar o relatório, ele deve aparecer no package Jasper, conforme imagem ao lado. Caso não aparecesa, clique sobre o package e pressione F5.

jasperreposts-4

Primeira visão ao relatório

Será apresentado um relatório em branco para podermos começar a brincar.

Neste momento, criaremos os campos(fields) do relatório. Estes campos devem ter o nome correspondente às propriedades da classe Cliente. Ex: (nome, endereco, complemento, uf, telefone)

1º Clique com botão direito em “fields” e “Adicionar Field”

jasperreposts-5

Vamos criar o campo: nome.

2º Clique no campo que acabou de criar

3º Expanda a aba Propriedades

4º Configure o nome do campo.

jasperreposts-6

Agora que você já sabe criar um campo, crie os demais.

Após criar todos os fields, seu relatório deve se parecer conforme imagem abaixo:

jasperreposts-7

Para nosso relatório não ficar horrível muito feio, vamos inserir um título.

1º Expanda a aba Paletas;

2º Clique no componente Static Text e arraste-o até o relatório;

3º Clique no componente que acabou de inserir no relatório e edite-o com o texto “Relatório de Clientes”.

jasperreposts-8

Pronto \0/! Nosso relatório está preparado para receber uma lista de clientes. Salve e feche o relatório.

Configurando os JARs para o JasperReport

Para que o JasperReports se comporte da forma esperada, temos que adicionar algumas bibliotecas ao projeto.

1º Clique com o botão direito sobre o projeto, em Build Path e Configure Build Path;

jasperreposts-9

2º Clique em Add External JARs;

3º Selecione todos os JARs relativos ao JasperReport. Você pode baixar esse pacote de JARs aqui: http://www.4shared.com/zip/M15ld3lQce/JasperReport.html

4º Clique em Abrir.

jasperreposts-10

Após adicionar todos os JARs do JasperReports, sua aba de Libraries deve ficar assim:

jasperreposts-11

Criando a Classe Para Manipular o Relatório

No package relatorio, criaremos a classe que fara a ligação de nossa lista de Cliente com o relatório Jasper.

Nesta classe, implementaremos o método imprimir que receberá uma lista de clientes, a qual será enviada ao relatório.

Crie a classe com o seguinte código fonte:

Agora, temos que criar uma classe para testar nosso relatório. Criaremos esta nova classe no package testes. Crie a classe conforme o código fonte abaixo:

jasperreposts-13

Então, acabamos de terminar nosso pequeno projeto RelatorioJasper.

E esperado que sua estrutura de pacotes e classes fique conforme imagem a baixo.

jasperreposts-14

Então, nos resta rodarmos a classe RelatorioTeste.java e verificar em “c:/Relatorio_de_Clientes.pdf” se o arquivo foi gerado com sucesso.

O relatório deve estar como demostrado na figura abaixo:

jasperreposts-15

A partir de agora, sua imaginação é seu guia!

Obrigado!

Você pode se interessar

Pipeline (CD/CI) // Dicionário do Programador
Vídeos
8 visualizações
Vídeos
8 visualizações

Pipeline (CD/CI) // Dicionário do Programador

Thais Cardoso de Mello - 11 de novembro de 2019

Continuous Integration e Continuous Delivery Pipeline ou CI/CD Pipeline, ou ainda Continuous Delivery Pipeline, ou Pipeline para os íntimos é um processo que vem sendo amplamente utilizado nas empresas de desenvolvimento.

Promoções de Jogos do Final de Semana (09/11)
Notícias
16 visualizações
Notícias
16 visualizações

Promoções de Jogos do Final de Semana (09/11)

Carlos L. A. da Silva - 9 de novembro de 2019

Confira as melhores ofertas de jogos de PC para o final de semana.

Como se Tornar um Cientista de Dados de Sucesso // Vlog #105
Vídeos
8 visualizações
Vídeos
8 visualizações

Como se Tornar um Cientista de Dados de Sucesso // Vlog #105

Thais Cardoso de Mello - 7 de novembro de 2019

Quais os caminhos para o profissional de Data Science se reconhecido no mercado? Nesse vídeo contamos com a ajuda dos especialistas da Faculdade Impacta pra encontrar a resposta.

Mais publicações

Aprenda a acelerar a performance de sites com “premonição”
Artigos
18 visualizações
18 visualizações

Aprenda a acelerar a performance de sites com “premonição”

Carlos L. A. da Silva - 5 de novembro de 2019
Swift (a linguagem do iOS) // Dicionário do Programador
Vídeos
7 visualizações
7 visualizações

Swift (a linguagem do iOS) // Dicionário do Programador

Thais Cardoso de Mello - 4 de novembro de 2019
Promoções de Jogos do Final de Semana (01/11)
Notícias
11 visualizações
11 visualizações

Promoções de Jogos do Final de Semana (01/11)

Carlos L. A. da Silva - 1 de novembro de 2019
Brasil, o país do podcast
Notícias
15 visualizações
15 visualizações

Brasil, o país do podcast

Redação - 1 de novembro de 2019