Relatório gráfico

7 respostas
DiogoLPJ

Fala pessoal!
Não sei nem se estou na sessão correta, mas lá vai:

Preciso automatizar a geração de um relatório com gráficos baseado num banco de dados remoto e seu envio por e-mail. Alguém poderia me recomendar um framework ou algo parecido para esse desenvolvimento?

Desde já agradeço!

Abraços!

7 Respostas

Gerva

IReport…

DiogoLPJ

Fala Gerva!

Já mexi com o IReport uma fez, mas não me recordo dele ceder esses recursos que almejo. Ele realmente detém esses recursos que pedi? Os gráficos e tudo?

Vou procurar mais sobre ele…

Alguém sugere algo diferente?

Obrigado!

S

Tem o Jasper Reports que é free e o Crystal Reports (muito usado em VB, mas pode ser usado em Java segundo recomendações do pessoal do próprio fórum). Possui esses recursos para trabalhar com gráficos, mas não é free.

Gerva

Claro, você conecta o BD e passa a conexão pro report, ou pega todos os dados que precisa na sua aplicação mesmo e depois envia, depois é só gerar um pdf e mandar por e-mail…

Pode dar uma olhada nesse post também
http://www.guj.com.br/java/269016-ferramenta-para-gerar-graficos

DiogoLPJ

Gerva:
Claro, você conecta o BD e passa a conexão pro report, ou pega todos os dados que precisa na sua aplicação mesmo e depois envia, depois é só gerar um pdf e mandar por e-mail…

Pode dar uma olhada nesse post também
http://www.guj.com.br/java/269016-ferramenta-para-gerar-graficos

Obrigadão Gerva!!! Quando vc me recomendou já fui dar uma lida sobre as outras funcionalidades dele. Realmente, eu lidei com poucos recursos dele, mas estou vendo que ele têm bastante mesmo!

Muito obrigado! Vou me aprimorar nele, e qualquer coisa posto aqui no FORUM o/!!!

Abraços!!!

DiogoLPJ

Eis-me aqui novamente!!!

Existe uma maneira de extrair direto os registros de um BD de um drive ODBC proveniente de um client instalado? O servidor aonde está o BD está remoto, e tudo que sei dele é que seu BD é ORACLE, seu DSN, username para acesso e password. Meu objetivo é usar esses registros no iReport para gerar um relatório automático.

Alguém poderia me ajudar?

Desde já, gratíssimo!

Att. Diogo

DiogoLPJ

Depois de algum tempo, retornei!!!

Fiquei testando e retestando a conexão com uma base ODBC remota usando uma ponte ODBC:JDBC, porém não fui muito bem sucedido. Então fiz de outra maneira: Plotei os dados da base num arquivo do Excel, e consegui me conectar a ele usando o IReport. Mas agora o problema aparece na hora de exibir o relatório, mais especificamente na hora de compilar o bendito.

Segue a mensagem que aparece:

1 -> Quando peço pra imprimir com todas as colunas incluindo as que contém datas

Filling report...
  Locale: português (Brasil)
  Time zone: Default
Error filling print... Cannot get a text value from a numeric cell 
java.lang.IllegalStateException: Cannot get a text value from a numeric cell      at org.apache.poi.xssf.usermodel.XSSFCell.typeMismatch(XSSFCell.java:843)      at org.apache.poi.xssf.usermodel.XSSFCell.getRichStringCellValue(XSSFCell.java:294)      at org.apache.poi.xssf.usermodel.XSSFCell.getStringCellValue(XSSFCell.java:246)      at net.sf.jasperreports.engine.data.JRXlsxDataSource.getFieldValue(JRXlsxDataSource.java:209)      at net.sf.jasperreports.engine.fill.JRFillDataset.setOldValues(JRFillDataset.java:922)      at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:887)      at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:864)      at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1435)      at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:126)      at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:836)      at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:765)      at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:84)      at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:624)      at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:540)      at com.jaspersoft.ireport.designer.compiler.IReportCompiler.run(IReportCompiler.java:916)      at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572)      at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997)  
Print not filled. Try to use an EmptyDataSource...

2 -> Quando peço pra imprimir com todas as colunas excluindo as que contém datas

Setting net.sf.jasperreports.engine.query.JRJdbcQueryExecuterFactory as Query Executer Factory for language: sql
  Filling report...
  Locale: português (Brasil)
  Time zone: Default
Error filling print... null 
java.lang.NullPointerException      at net.sf.jasperreports.engine.data.JRXlsxDataSource.getFieldValue(JRXlsxDataSource.java:209)      at net.sf.jasperreports.engine.fill.JRFillDataset.setOldValues(JRFillDataset.java:922)      at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:887)      at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:864)      at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1435)      at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:130)      at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:836)      at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:765)      at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:84)      at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:624)      at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:540)      at com.jaspersoft.ireport.designer.compiler.IReportCompiler.run(IReportCompiler.java:916)      at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572)      at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997)  
Print not filled. Try to use an EmptyDataSource...

Já pesquisei um pouco no google, e já tentei modificar (nas propriedades do relatório) a linguagem de consulta (SQL, sql…) e linguagem da fonte (Groovy, JAVA ou JavaScript) e também modifiquei o arquivo xml, mas nada disso funcionou. Alguém aí consegue me dar uma luz?

Desde já, agradeço imensamente!!!

Abraços!

Criado 1 de abril de 2012
Ultima resposta 31 de mai. de 2012
Respostas 7
Participantes 3