-
Java
Consulta de Notas Fiscais com Boleto
Trabalho da Disciplina: Frameworks Utilitários Java
Christiny Goulart
Fabio Martins
Robson Martins
Prof. Albert da Costa Xavier
MBA em Desenvolvimento de Aplicações Java - SOA / FIAP
25/10/2011
Download do código-fonte:
Consulta de Notas Fiscais com Boleto (com JasperReports) (ZIP ~14,1MB)
Tecnologias empregadas:
- JasperReports;
- iReport;
- Servlets;
- XML.
Enunciado:
Construir uma aplicação web para consulta de informações de notas fiscais. Nesta aplicação o usuário obtém as notas fiscais abertas. Os dados das notas fiscais podem ser fictícios e ‘hard coded’. Quem desejar pode recuperar as informações da nota fiscal do banco de dados.
A consulta será realizada através de arquivo PDF gerado pela própria aplicação. No final do documento é apresentado o layout do arquivo XML a ser usado na geração do PDF via JasperReports.
Deseja-se ainda que o boleto seja um sub-relatório, pois a aplicação contempla a opção de geração isolada do mesmo. Deverá existir uma opção para geração do boleto juntamente com as informações das notas e outra opção para geração isolada do boleto.
No fim do documento de especificação estão os modelos de layout propostos para direcionar a criação dos relatórios.
Especificações:
- Criar o formulário do relatório gerando os respectivos arquivos “.jasper”. O código de barras do boleto deverá ser do tipo PDF417 (pode ser utilizado outro tipo também).
- Criar uma aplicação web simples (Servlet, Struts ou JSF) para gerar o relatório. O relatório deverá ser gerado dinamicamente.
- Recomenda-se também o uso de padrões de projeto na construção da aplicação.
Sobre a implementação:
- Foi utilizado o iReport 3.0 (e a biblioteca Jasper 3.0) para o design dos relatórios.
- A aplicação foi elaborada como uma Web app no Eclipse, podendo rodar num Tomcat 6.0, por exemplo.
- Foram usados dois Servlets, um para emissão do relatório de Notas Fiscais e outro para emissão do Boleto.
- O XML usado como DataSource está contido na própria aplicação, e é lido pelos Servlets em tempo de execução.
Possíveis melhorias (para uma futura implementação):
- Os dados contidos no XML e os campos de relatório poderiam fornecer outras informações para o preenchimento do boleto (como logotipo do banco, dados do cedente, criação do número do código de barras dinâmico - baseado no valor e data de vencimento do boleto, cálculo do valor total a partir dos valores das notas fiscais, etc).
- A aplicação poderia utilizar uma versão mais recente do Jasper e do iReport.