Preciso criar uma interface que exibe as tabelas e exibir as tabelas do banco e deixar o usuário escolher livremente as colunas que ele deseja gerar o relatório.
Alguém tem alguma idéia de como vai funcionar o mecanismo de seleção de tabelas e a busca?
Você quer liberar todas as tabelas do banco para o usuário cruzar como bem entender, isso não é meio arriscado não?
Dependendo do relacionamento que for feito o banco pode acabar abrindo as pernas.
Mas dependendo de o que você quer a solução pode ser a utilização de Velocity juntamente com iText.
[]´s
Daniel
P
padcoe
Fala yorgan
Então, não vou liberar tudo…vou apenas liberar as tabelas que são de maior interesse para o usário e limitar uma determinada quantidade de seleções por que se ele começar a fazer joins por todo lado, vai abrir as pernas ( isso já aconteceu uma vez em um relatório mirabolante que o cliente tinha pedido ) de vez.
Minha idéia é liberar umas 3 tabelas que se relacionam entre si e as colunas para ele selecionar o que ele quer. Assim ele fica mais independente para buscar dados e não pede um relatório novo por semana.
Vou dar uma lida nesse Velocity e estudar como ele se comporta para ver se atende as minhas necessidades.
Obrigado pela ajuda
J
jc_neto
Acho que o que você quer fazer dá pra fazer usando o Pentaho, só tem que ver se vale a pena toda uma estrutura de BI para resolver seu problema.
Marck
Olá!
É só uma ideia: pra resolver este problema, eu usei um Pivot Table. Aquele do framework Jide.
No meu sistema, em todas as telas, depois que o usuário faz uma consulta, ele tem a opção de criar visões a partir dos dados da consulta.
Faço isso com Reflection em cima dos beans.
abraço!
P
padcoe
Olá amigos!
Vou dar uma pesquisada no Pentaho.
Esse Pivot Table parece ser interessante, mas ele é swing. Não existe nenhum framework tipo JIDE Pivot Grid para web?
Eu tinha pensado em montar a view com alguns combos que irão preencher tabelas e irão jogar para outro campo da view e depois eu recuperava esse campo e montava o select com os respectivos lefts joins e tal.
É uma boa sugestão essa? Não fica meio engessado ou porco?
Marck
Opá! Blza?
Eu não acho que fique porco nem engessado. Acho que é uma boa forma de dar liberdade ao usuário. Mas dependendo da quantidade de usuários que acessa o banco, pode ser necessário usar paginação.
O bacana de se usar algo como o JPA é que ele traz os dados p memória somente quando eles serão usados. As vezes voce traz uma porrada de informação e usuário não a usa.
O pivottable voce só passa um DefaultTableModel que ele já se vira com o resto. Ai o usuário cria as visões que precisar.
abraço!
xdraculax
Pentaho é uma ótima solução.
Além de você poder fazer isso perfeitamente, pode criar seus modelos e liberar somente o que precisa (ou o que pode), controlar o acesso através de login/senha - e isso pode se integrar facilmente ao seu sistema, pois ele usa JDBC para o banco de dados do próprio Pentaho e do banco destino.
Você também pode deixar relatórios pré-definidos para o usuário utilizar na ferramenta on-line.
Pode fazer relatórios analíticos. Bom suporte a internacionalização - embora não esteja 100%.
Enfim… certamente é uma solução BI atual e Open Source que vale a pena conhecer.
Porém, uma fator contra é que é meio complexo de entender.