Pesquisar neste blog

terça-feira, 3 de julho de 2012

Exportando planilha xls no iReport 4.5.1 com fórmulas





Um iReport é uma ferramenta muito pederosa para criação de relatórios. Neste pequeno tutorial será demonstrado como gerar um relatório e exportar o mesmo para o formato xls com fórmula. Como exemplo será usado um relatório com a estrutra exibida na figura abaixo:

Relatório de exemplo




Com seu relatório pronto, faça um teste de exportação para xls, veja como estão dispostas as colunas e linhas. Faça os ajustes que entender necessário para melhorar a visualização. Uma dica é não deixar nenhum espaço entre uma coluna e outra do relatório. Dessa forma, a planilha será gerada sem pular colunas também.
Uma vez visualizado e ajusta o relatório, agora deve ser definido quais colunas serão usadas. Neste exemplo, a coluna I ( Vlt. Total) irá armazenar a multiplicação de G*H, respectivamente Qtde e Vlr. Unit como pode ser verificado na figura abaixo:




Planilha de exemplo

Também deve ser observado em qual linha vão iniciar os dados, isso é muito importante para o correto funcionamento da fórmula.
Com a estrutura do relatório pronta, agora é hora de ativar a função na coluna Vlr. Total do relatório para efetuar o cálculo. Para isso selecione o field referente ao valor total, vá na paleta propriedades e clique em proprerties expressions e adione a expressão abaixo:

net.sf.jasperreports.export.xls.detect.cell.type=True

Ativando capacidade de reconhecer fórmulas


Essa expressão ativa a capacidade da célula reconhecer as formulas da planilha quando o relatório é exportado para arquivos xls. Se for exportado para outro formato será usado o valor da propriendade Text field expression.
Feito isso, agora vamos adicionar outra proprerties expressions. Essa nova propriedade e expressão é a própria fórmula. A propriedade é a seguinte:

net.sf.jasperreports.export.xls.formula

O valor dessa propriedade deve ser marcado como expressão. Sua estrutura é a seguinte:

"G"+($V{REPORT_COUNT}+2)+"* H"+($V{REPORT_COUNT}+2)

Veja na imagem abaixo como ficou na tela de configuração:

Adicionando fórmula
Pronto. Agora ao exportar a planilha a coluna do valor total receberá a seguinte fórmula:
=G3*H3
=G4*H4
=Gn*Hn
A adição do 2 a váriavel REPORT_COUNT se faz necessário porque a faixa de dados inicia-se na linha 3.
Seria isso. Agora é só usar a criatividade e implementar outras fórmulas.




Claudir Pereira dos Santos


Matelândia/PR, 04/07/2012

Um comentário: