Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouThomas De Lemos Alterado mais de 11 anos atrás
1
Relatórios Marco Antonio Software Architect Agosto - 2008
2
Introdução JasperReport –Framework java para relatórios com grande habilidade na organização e apresentação de conteúdo, permitindo a geração dinâmica de relatórios em diversos formatos (pdf, html, xls, csv e xml). iReport –Interface gráfica para o Jasper.
3
Tela inicial
4
Criando um novo relatório Menu Arquivo -> Novo... Ou Ctrl + N
5
Propriedades do relatório Configuração dos dados do relatório
6
Codificação Altere para ISO- 8859-1
7
Design do relatório Observe as barras de ferramenta disponíveis
8
Classpath Nosso relatório deve ter acesso à classe EmpresaAerea. Esse tipo de acesso é configurado através do classpath.
9
Diretório de classes Procure o diretório build/classes dentro de sua aplicação. É onde ficam as classes compiladas.
10
Campos do relatório Acesse o menu -> Data -> Query do Relatório.
11
Campos do relatório Clique no botão Ler Atributos.
12
Campos do relatório Esses serão os campos disponíveis para visualização no relatório
13
Estrutura do documento Navegue pela estrutura do documento e veja quais os dados disponíveis para o relatório.
14
Design do relatório Acrescente um texto estático com o título do relatório, bem como os nomes das colunas. Arraste os campos referentes a nomeFantasia e razaoSocial para o relatório.
15
Design do relatório
16
Propriedades do campo texto Selecione as propriedade do título do relatório com o botão direito e altere os dados da fonte.
17
Salve o arquivo Crie o diretório relatorios dentro de WEB-INF.
18
Opções No menu Opções -> Opções altere a opção conforme a figura.
19
Compilação do relatório Veja na barra de ferramentas o ícone de compilação. A partir desse momento o diretório está pronto para ser acessado pela aplicação.
20
Outros campos Crie mais um campo texto para a data. Com o botão direito escolha Edit Expression.
21
Expressões Com o editor de expressões podemos escrever código java nativo, utilizando qualquer classe disponível.
22
Campos do relatório
23
Campos Colunas do banco de dados disponíveis para o relatório.
24
Variáveis pré-definidas Principais contadores disponíveis.
25
Parâmetros Existe a possibilidade de enviar dados isolados da aplicação para o relatório através de parâmetros.
26
Novo parâmetro Para exemplificar, vamos criar o parâmetro NomeDoSistema.
27
Design final do relatório
28
Libs do projeto Commons-javaflow iReport iText Jasperreports Jcommon Jfreechart
29
Teste do relatório package net.sca.entidades.teste; import java.io.*; import java.util.*; import net.sca.persistencia.*; import net.sf.jasperreports.engine.*; import net.sf.jasperreports.engine.data.*; public class TesteRelatorioEmpresa { public static void main(String[] args) { try { (1) FileInputStream input = new FileInputStream( "C:/Sistemas/workspace_javaweb/SistemaDeControleAereo/WebContent/WEB-INF/relatorios/RelatorioDeEmpresas.jasper"); (2) FileOutputStream saida = new FileOutputStream("c:/RelatorioDeEmpresas.pdf"); (3) JRDataSource dados = new JRBeanCollectionDataSource(new DAOEmpresaAerea().consultarTodos()); (4) Map mapaDeParametros = new HashMap(); mapaDeParametros.put("NomeDoSistema", "Sistema de Controle Aéreo"); (5) JasperRunManager.runReportToPdfStream(input, saida, mapaDeParametros, dados); System.out.println("Relatório gravado com sucesso"); } catch (Exception e) { e.printStackTrace(); }
30
Detalhamento 1.Abre o arquivo do relatório. 2.Cria o arquivo de saída, no exemplo, um pdf. 3.Fonte de dados, fornecida pelo DAO através de uma coleção de objetos. 4.Mapa com parâmetros do relatório. 5.Monta o relatório com dados do DAO, e grava no arquivo de saída.
32
GeradorDeRelatorio package com.sistemabancario.entidades; import java.io.*; import java.util.*; import javax.faces.context.*; import javax.servlet.*; import net.sca.persistencia.*; import net.sf.jasperreports.engine.*; import net.sf.jasperreports.engine.data.*; public class GeradorDeRelatorio { public void executaRelatorio(String nomeDoRelatorio, OutputStream saida) { try {
33
GeradorDeRelatorio (1) ExternalContext e = FacesContext.getCurrentInstance().getExternalContext(); ServletContext s = (ServletContext) e.getContext(); String diretorioDosRelatorios = s.getRealPath("/WEB-INF/relatorios"); (2) InputStream entrada = new FileInputStream(diretorioDosRelatorios + "/" + nomeDoRelatorio); (3) Map mapaDeParametros = new HashMap(); mapaDeParametros.put("NomeDoSistema", "Sistema de Controle Aéreo"); (4) JRDataSource dados = new JRBeanCollectionDataSource(new DAOEmpresaAerea().consultarTodos()); (5) JasperRunManager.runReportToPdfStream(entrada, saida, mapaDeParametros, dados); } catch (Exception e) { e.printStackTrace(); }
34
Detalhamento 1.Recupera dados do contexto da aplicação, no caso, o diretório. 2.Abre o arquivo do relatorio (RelatorioDeEmpresas.jasper) que está no diretório WEB-INF. 3.Mapa com parâmetros a serem passados aos relatório. 4.Fonte de dados, coleção de objetos que serão exibidos no relatório. 5.Mostra o relatório no browser do cliente.
35
VisualizadorRelatorioDeEmpresas.jsp <% try { out.clear(); GeradorDeRelatorio gerador = new GeradorDeRelatorio(); ServletOutputStream output = response.getOutputStream(); response.setContentType("application/pdf"); response.addHeader("Content-Disposition", "Inline;"); gerador.executaRelatorio("RelatorioDeEmpresas.jasper", output); output.flush(); output.close(); } catch (Exception e) { e.printStackTrace(); } %>
Apresentações semelhantes
© 2025 SlidePlayer.com.br Inc.
All rights reserved.