Java

 Consulta de Notas Fiscais com Boleto

Trabalho da Disciplina: Frameworks Utilitários Java
Prof. Albert da Costa Xavier

MBA em Desenvolvimento de Aplicações Java - SOA / FIAP
25/10/2011

Christiny Belini Goulart
Fabio Gonçalves Martins
Robson de Sousa Martins


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:

  1. 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).
  2. Criar uma aplicação web simples (Servlet, Struts ou JSF) para gerar o relatório. O relatório deverá ser gerado dinamicamente.
  3. 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.