Вы находитесь на странице: 1из 22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente )


Parte 1 Parte 2 [1] Parte 3 [2] Parte 4 [3] Parte 5 [4] Ol a todos. Quem acompanha o blog sabe que no ltimo post h duas semanas atrs eu pedi que vocs sugerissem o tema para o prximo tutorial. Dentre os temas que eu listei, o de criao de relatrios em Java foi o que ganhou. Este tutorial, como o de Flex e Java, vai ser dividido em algumas partes. Eu poderia escrever em apenas um post tudo sobre o tema, mas preferi dividir o tutorial em vrias partes pequenas menores que os tutoriais sobre Flex para no ficar muito cansativo. Nesta primeira parte (provavelmente a maior de todas), iremos aprender sobre o framework para criao relatrios que iremos utilizar, o JasperReports, entendendo seu funcionamento, aprendendo a obter e instalar o iReport, que o editor de relatrios e preparar nosso ambiente de desenvolvimento. Irei novamente utilizar o NetBeans como IDE de desenvolvimento, mas voc que usa o Eclipse ou qualquer outra IDE Java no vai ter dificuldades para seguir o tutorial. Na segunda parte, iremos criar uma base de dados de teste para popularmos nossos relatrios e vamos aprender como criar, compilar e utilizar os relatrios criados em aplicaes desktop. Na terceira parte, iremos aprender a criar subrelatrios. Na quarta, iremos utilizar fontes de dados data sources diferentes, permitindo ento que possamos listar dados nos relatrios que no vem somente de consultas SQL. Por fim, na quinta e ltima parte, iremos aprender como utilizar nossos relatrios em uma pgina Web. Aps todas essas partes, vocs tero a bagagem necessria para caminharem sozinhos Ento, vamos comear! Existem atualmente na indstria diferentes frameworks e engines para criao e processamento de relatrios. Dentre as solues pagas, talvez o Crystal Reports
davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/ 1/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[5] seja a mais conhecida. O Crystal Reports uma soluo robusta e que pode ser

utilizada com diversas linguagens de programao. Outra soluo paga que muito utilizada por quem trabalha com Delphi o Quick Reports. Em Java, existem atualmente duas solues que so mais utilizadas. O JasperReports [6], que o framework gratuito mais popular e que iremos utilizar nos nossos tutoriais e o BIRT [7] (Business Intelligence and Reporting Tools) que tambm gratuito e mais utilizado por quem trabalha com o Eclipse. Como iremos utilizar o JasperReports, vale a pena ento entendermos um pouco do seu funcionamento. Quando trabalhamos com ele, ns criamos os arquivos de cdigo fonte dos nossos relatrios utilizando XML, sendo que esse arquivo fonte de extenso .jrxml passa por um processo de compilao para gerar gerar arquivos .jasper, que por sua vez so interpretados pela engine do JasperReports. Ns no iremos escrever esses arquivos .jrxml na mo, pois iremos construir nossos relatrios utilizando um editor WYSIWYG (What You See Is What You Get), o iReport. Atualmente, o iReport pode ser obtido em duas verses. Uma delas standalone (criada usando a NetBeans Platform), no precisando de nenhum outro programa para ser utilizada, enquanto a outra um plugin para o NetBeans. Iremos utilizar a verso em plugin. Bem, j falei demais. Chega de blablabl, vamos comear a por a mo na massa, afinal essa a melhor forma de aprender . Primeiro vamos baixar o iReport. Acesse ento o endereo http://jasperforge.org/projects/ireport [8] e procure o link de download. Na verso atual do site, para fazer o download, basta clicar no boto Download iReport Now. Ao clicar no boto, sero apresentadas as verses disponveis. Ns vamos escolher a ltima: Plugin for NetBeans IDE 3.x. A verso atual do iReport a 3.7.5. Note que a verso do iReport sempre vai ser a mesma do JasperReports. Quando terminar de baixar, descompacte o arquivo iReport-3.7.5-plugin.zip (a verso pode variar dependendo de quando voc baixar o pacote). Sero extrados 4 arquivos com a extenso .nbm (NetBeans Module). Esses arquivos so os pacotes dos plugins que sero instalados no NetBeans. Com o arquivo descompactado, abra ento o seu NetBeans. Estou usando a tlima verso, 6.9.1. Com o NetBeans aberto, v no menu Tools (Ferramentas) e escolha Plugins. Ao abrir o gerenciador de plugins, v na aba Downloaded (Baixados?). nessa aba que voc instala os arquivos .nbm. Clique em Add Plugins (Adicionar Plugins). Veja a Figura abaixo:

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

2/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[9]

Gerenciador de Plugins Ao clicar no boto Add Plugins, um dilogo ser aberto. Neste dilogo, procure ento pelos arquivos .nbm que foram descompactados a partir do pacote que fizemos download. Assim que os encontrar, selecione todos e clique Open (Abrir). Veja a Figura abaixo.

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

3/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[10]

Escolhendo os pacotes Ao fazer isso, a janela do gerenciador de plugins ser exibida novamente, s que agora com os quatro pacotes sendo exibidos. Deixe os quatro pacotes marcados e clique em Install (Instalar). Veja a Figura abaixo.

[11]

Gerenciador de Plugins (instalao) No primeiro passo do instalador, clique em Next (Prximo). Marque o checkbox para concordar com os termos da instalao e clique em Install. Aguarde o final da instalao. Quando a instalao terminar, provavelmente o NetBeans vai pedir para ser reiniciado. Reinicie a IDE. Quando o ambiente estiver aberto novamente, voc vai perceber que na barra de ferramentas foi inserido um novo boto e um combobox. Ainda no iremos aprender para que eles servem, por enquanto entenda que eles fazem parte do plugin do iReport. Veja a Figura abaixo.

[12]
davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/ 4/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

Barra de ferramentas alterada Com o iReport instalado, vamos agora preparar a estrutura de uma aplicao que iremos usar nas prximas partes do tutorial. Inicie a criao de um novo projeto no NetBeans escolhendo um projeto do tipo Java Application (Aplicao Java). Veja a Figura abaixo.

[13]

Novo projeto Clique em Next. Em seguida, d o nome ao projeto, sugiro TutorialRelatorios (sem as aspas), escolha onde o projeto vai ser salvo e marque a opo Use Dedicated Folder for Storing Libraries (essa opo vai fazer com que todos os arquivos .jar utilizados fiquem contidos dentro do projeto, sob o diretrio lib), configure as outras opes de acordo com a Figura abaixo e clique em Finish.

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

5/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[14]

Configurando o novo projeto Ao clicar em Finish, o projeto vai ser criado. A partir de agora j poramos comear a criar nossos relatrios no iReport, mas ainda faltam algumas configuraes para que possamos fazer esses relatrios executarem dentro de uma aplicao. Para isso, ainda temos que adicionar o JasperReports no nosso projeto, bem como todas as suas dependncias, alm de termos tambm que organizar a estrutura do projeto para guardar nossos relatrios. Primeiro vamos tratar dos .jars. Ao instalar os plugins do pacote do iReport, uma biblioteca padro com os .jars criada, mas ela vem com alguns erros, ento vamos criar a nossa biblioteca para no termos dores de cabea depois. Para isso, expanda o n raiz do projeto e procure pelo n Libraries (Bibliotecas). Clique com o boto direito e escolha Add Library (Adicionar Biblioteca). Veja a Figura abaixo.

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

6/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[15]

Nova biblioteca Ao clicar em Add Library, o dilogo para a insero de bibliotecas ser exibido. Neste dilogo, clique no boto Create (Criar). Veja a Figura abaixo.

[16]

Criando uma nova biblioteca Ao clicar em Create, ser exibido um novo dilogo, onde o nome e o tipo da nova
davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/ 7/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

biblioteca devem ser definidos. Em Library Name (Nome da Biblioteca), configure como JasperReports-3.7.5, lembrando de mudar o nmero da verso caso esteja utilizando uma verso mais nova. Em Library Type (Tipo da Biblioteca), deixe como Class Libraries (Bibliotecas de Classe). Por fim, clique no boto OK. Veja a Figura abaixo.

[17]

Criando uma nova biblioteca Ao clicar em OK, ser exibido o dilogo Customize Library (Personalizar Biblioteca?). nele que indicaremos os .jars que fazem parte da nossa biblioteca. Quando instalamos o plugin do iReport no NetBeans criada uma pasta chamada ireport dentro do diretrio de instalao e l que esto os .jars que precisamos. Sabendo disso, clique ento no boto Add JAR/Folder (Adicionar JAR/Diretrio). Veja a Figura abaixo.

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

8/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[18]

Adicionando os JARs Com o dilogo aberto, procure pelo diretrio onde a instalao do NetBeans foi feita. No meu caso, ele foi instalado em C:\Program Files (x86)\NetBeans 6.9.1\. Dentro deste diretrio, procure pelo diretrio chamado ireport e entre nele. O contedo do diretrio exibido na Figura abaixo, sendo que os diretrios que nos interessam so o diretrio libs e o diretrio modules destacados na Figura.

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

9/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[19]

libs e modules Primeiramente, acesse o diretrio libs. Dentro dele, existe apenas um .jar (para a verso 3.7.5 do iReports). Selecione esse .jar (xalan.jar) e clique em Add JAR/Folder. Veja a Figura abaixo.

[20]

Adicionando xalan.jar Ao clicar, o NetBeans vai perguntar se voc deseja mesmo criar um diretrio dentro do diretrio libs (aquele que vai guardar nossas bibliotecas) com o nome de JasperReports-3.7.5 (o nome que demos para a biblioteca, lebram?). Responda Sim. Veja a Figura abaixo.
davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/ 10/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[21]

Alerta de criao de novo diretrio Ao aceitar a criao do novo diretrio, a janela Customize Libraries voltar a aparecer, agora com o xalan.jar sendo mostrado na lista de .jars. Alm da pasta libs, precisamos adicionar tambm os .jars que esto dentro da pasta modules. Ento clique novamente no boto Add JAR/Folder da janela Customize Libraries e entre no diretrio modules. Dentro dele existiro alguns .jars, mas no so eles que queremos. Note que alm dos .jars, existe um diretrio chamado ext. Entre nele. Neste diretrio esto TODAS as dependncias do JasperReports. Para facilitar as coisas, iremos selecionar TODOS os .jars. Em um projeto real, o mais sensato seria selecionar apenas os .jars que voc tem certeza que vo ser utilizados. Entretanto, esta abordagem traz um problema. O Jasper utiliza nos bastidores muitos desses .jars, mesmo que a gente pense que no. Um exemplo o spring.jar . E o pior! A cada verso, as dependncias mudam (j tive vrios problemas com isso). Minha recomendao que voc selecione TODOS os .jars, e depois, caso j utilize um deles (por exemplo o Hibernate) recomendo ento que voc atualize o .jar para a verso mais nova. Enfim, selecione TODOS e clique em Add JAR/Folder. Veja a Figura abaixo.

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

11/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[22]

Jars do diretrio modules/ext Ao fazer isso, novamente a janela Customize Library vai ser exibida, mostrando que todos os .jars foram inseridos. Clique em OK. Ao clicar, o dilogo Add Library ser exibido novamente, mas agora com a nova biblioteca criada. Selecione-a (j vai estar selecionada por padro) e clique em Add Library. Veja a Figura abaixo.

[23]
davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/ 12/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

Adicionando a biblioteca no projeto Fazendo isso, o dilogo ser fechado e voc vai perceber que todos os .jars aparecero dentro do projeto. Veja a Figura abaixo.

[24]

Projeto com a biblioteca adicionada Ok, j temos a biblioteca configurada com todos os .jars do JasperReports. Agora vamos criar um diretrio no nosso projeto para conter as definies dos nossos relatrios (arquivos .jrxml). Para isso, clique com o boto direito no n raiz do projeto e escolha Properties (Propriedades). Veja a Figura abaixo.

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

13/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[25]

Acessando as propriedades do projeto Ao clicar em Properties, a janela de propriedades do projeto ser exibida. Nesta janela, selecione o primeiro n esquerda (Source Fonte) e do lado direito, na tabela Source Package Folders, clique em Add Folder (Adicionar Diretrio). Veja a Figura abaixo.

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

14/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[26]

Propriedades do projeto Ao clicar em Add Folder, um dilogo ser exibido. Neste dilogo, clique no boto localizado no canto superior direito. Veja a Figura abaixo.

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

15/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[27]

Boto para criar um novo diretrio Com isso, um novo diretrio ser criado. D o nome de relatorios (sem as aspas e sem acento agudo), selecione-o e clique em Open. Veja a Figura abaixo.

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

16/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[28]

Diretrio "relatorios" criado Ao clicar em Open, o novo diretrio ser inserido na tabela Source Package Folders. Na primeira coluna apresentado o caminho do diretrio, enquanto na segunda coluna apresentado o label que vai identificar esse diretrio dentro do projeto. Clique duas vezes na clula da segunda coluna que corresponde ao label do diretrio criado e d o nome de Relatrios. Cuidado! Ao terminar de editar o nome, tecle <ENTER>. Veja a Figura abaixo.

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

17/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[29]

Configurando o novo diretrio Ao fazer isso, o label ser configurado (saindo da edio) e voc agora deve clicar no boto OK das propriedades do projeto, aceitando assim as modificaes que foram feitas. Veja a Figura abaixo.

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

18/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[30]

Aceitando as configuraes Pronto, terminamos a configurao do projeto. Se tudo tiver dado certo, o novo diretrio ser exibido na estrutura do projeto, sendo que ele ser identificado pelo label que foi configurado no passo anterior. Veja a Figura abaixo.

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

19/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

[31]

Estrutura do projeto atualizada Com isso terminamos a primeira parte do tutorial. Aprendemos alguns conceitos sobre o JasperReports e como instalar o iReport. Aprendemos tambm a criar e a inserir uma nova biblioteca no projeto, sendo que essa biblioteca corresponde aos .jars necessrios para ns utilizarmos o JasperReports no nosso programa (quando formos abrir o relatrio a partir do programa). Alm disso, aprendemos a criar um diretrio dedicado aos nossos relatrios. Ento isso. Terminamos a primeira parte do tutorial. Com o cenrio pronto, agora podemos comear a brincar com o iReport e criar nossos primeiros relatrios. O projeto completo at o momento pode ser obtido neste link [32]. Fiquem ligados, a prxima parte vem ai Parte 1 Parte 2 [33] Parte 3 [34] Parte 4 [35] Parte 5 [36]

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

20/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

About these ads [37]

Gostar disso :

1. http://davidbuzatto.com.br/2010/10/10/jasperreports-trabalhando-com-relatorios-emjava-parte-2-primeiros-relatorios/ 2. http://davidbuzatto.com.br/2010/10/14/jasperreports-trabalhando-com-relatorios-emjava-parte-3-subrelatorios/ 3. http://davidbuzatto.com.br/2010/11/11/jasperreports-trabalhando-com-relatorios-emjava-parte-4-diferentes-tipos-de-fontes-de-dados-data-sources/ 4. http://davidbuzatto.com.br/2010/11/12/jasperreports-trabalhando-com-relatorios-emjava-parte-5-relatorios-na-web/ 5. http://crystalreports.com/ 6. http://jasperforge.org/ 7. http://www.eclipse.org/birt/ 8. http://jasperforge.org/projects/ireport 9. http://davidbuzatto.files.wordpress.com/2010/10/figura1.png 10. http://davidbuzatto.files.wordpress.com/2010/10/figura2.png 11. http://davidbuzatto.files.wordpress.com/2010/10/figura3.png 12. http://davidbuzatto.files.wordpress.com/2010/10/figura4.png 13. http://davidbuzatto.files.wordpress.com/2010/10/figura5.png 14. http://davidbuzatto.files.wordpress.com/2010/10/figura6.png 15. http://davidbuzatto.files.wordpress.com/2010/10/figura7.png 16. http://davidbuzatto.files.wordpress.com/2010/10/figura8.png 17. http://davidbuzatto.files.wordpress.com/2010/10/figura9.png 18. http://davidbuzatto.files.wordpress.com/2010/10/figura10.png 19. http://davidbuzatto.files.wordpress.com/2010/10/figura11.png 20. http://davidbuzatto.files.wordpress.com/2010/10/figura12.png 21. http://davidbuzatto.files.wordpress.com/2010/10/figura13.png 22. http://davidbuzatto.files.wordpress.com/2010/10/figura14.png 23. http://davidbuzatto.files.wordpress.com/2010/10/figura15.png
davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/ 21/22

26/01/13

JasperReports: Trabalhando com Relatrios em Java Parte 1 (Configurando o Ambiente) /davidbuzatto

24. http://davidbuzatto.files.wordpress.com/2010/10/figura16.png 25. http://davidbuzatto.files.wordpress.com/2010/10/figura17.png 26. http://davidbuzatto.files.wordpress.com/2010/10/figura18.png 27. http://davidbuzatto.files.wordpress.com/2010/10/figura19.png 28. http://davidbuzatto.files.wordpress.com/2010/10/figura20a.png 29. http://davidbuzatto.files.wordpress.com/2010/10/figura20.png 30. http://davidbuzatto.files.wordpress.com/2010/10/figura21.png 31. http://davidbuzatto.files.wordpress.com/2010/10/figura22.png 32. http://www.4shared.com/file/MTz6CMqH/TutorialRelatorios_-parte_1.html 33. http://davidbuzatto.com.br/2010/10/10/jasperreports-trabalhando-com-relatorios-emjava-parte-2-primeiros-relatorios/ 34. http://davidbuzatto.com.br/2010/10/14/jasperreports-trabalhando-com-relatorios-emjava-parte-3-subrelatorios/ 35. http://davidbuzatto.com.br/2010/11/11/jasperreports-trabalhando-com-relatorios-emjava-parte-4-diferentes-tipos-de-fontes-de-dados-data-sources/ 36. http://davidbuzatto.com.br/2010/11/12/jasperreports-trabalhando-com-relatorios-emjava-parte-5-relatorios-na-web/ 37. http://en.wordpress.com/about-these-ads/

davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

22/22

Вам также может понравиться