Gerando relatórios com Java
[ad#texto]
Uma grande dúvida, e que muitas vezes atrasa os projetos, é como gerar de forma eficiente e dinâmica relatórios em aplicações Java, levando em conta que a capacidade de gerar relatórios tem que ser escalar, ou seja, tem que acompanhar a crescente demanda de necessidades por parte do cliente.
Hoje, uma das melhores soluções é a dobradinha JasperReport e iReport.
Para quem não sabe JasperReport é um framework Java que tem a capacidade de através uma definição em XML apontar para uma fonte de dados, seja ela um arquivo, uma planilha ou um banco de dados e extrair relatórios das mais diversas formas, com suporte para gráficos e formatações diversas.
Já o iReports é uma aplicativo que permite editar de maneira visual (drag-and-drop) o relatório, adicionando uma vasta gama de elementos e aprontando de forma simplificada para a fonte de dados e dessa forma gerar o arquivos necessário para o JasperReport gerar o relatório (modelo) abstraindo toda a complexidade de editar um arquivo XML na mão.
Para quem já desenvolveu com Crystal Report ou Report da Oracle o trabalho com o iReport será bem simples.
A instalação do iReport é bem simples, basta executar o arquivo e ir clicando em Next (não sem antes ler as mensagens do processo de instalação).
Para o JasperReport é importante que o seu projeto Java possua as seguintes bibliotecas incluídas na pasta LIB e no CLASSPATH do seu projeto:
- barbecue-1.5: para suportar código de barras;
- arial / comic-sans-ms / courier-new: fontes embarcadas;
- com-jaspersoft-ireport: framework iReport;
- commons-beanutils-1.8.2 / commons-collections-3.2.1 / commons-digester-2.1 / commons-logging-1.1: recursos comuns;
- groovy-all-1.7.5: linguagem padrão;
- iText-2.1.7: elementos de texto;
- jasperreports-5.0.0: JASPER engine de relatório;
- jdom: API para manipulação de XML;
- xalan-2.7.1: recursos de base.
O primeiro passo é realizar o download tanto da ferramenta iReport como do próprio JasperReport.
No próximo artigo iremos ver como gerar um relatório simples tendo como base de dados um arquivo XML.