[Ireport]Criar paramento SQL e pasar com JAVA![Resolvido!]
6 respostas
UMC
Olá pessoal !
tenho um relatório para web que gera em PDF que tem a seguinte consulta no banco:
SELECT DISTINCT
*
FROM
"public"."pontos" pontos
WHERE
pontos.cidade = 'FURTUNA'
ORDER BY
pontos.chave_fk ASC
e a seguinte classe para geração do relatorio:
try{RelConexaorc=newRelConexao();rc.conexaorel();// Faz a conex�oStringpathJasper=getServletContext().getRealPath("/relatorios")+"/";Stringpath=getServletContext().getRealPath("/");Mapparametros=newHashMap();parametros.put("",pathJasper+"Relatorio_Pontos.jasper");try{JasperPrintimpressao=JasperFillManager.fillReport(pathJasper+"Relatorio_Pontos.jasper",parametros,rc.con);JasperManager.printReportToPdfFile(impressao,path+"Relatorio_Pontos.pdf");response.sendRedirect("Relatorio_Pontos.pdf");}catch(Exceptione){response.getWriter().println("Erro ao gerar o relatório :"+e);System.out.println("Erro ao gerar o relat�rio: "+e);}}catch(Exceptione){System.out.println("Erro: "+e);}
Bom acontece que eu estou setando a cidade q quero la no SQL
pontos.cidade = 'FURTUNA'
e gostaria de passar o nome da cidade como parâmetro na hora da construção?!!
como faço isso?
Obrigado pela atenção de todos!!
vlw
abs
Olá pessoal !
tenho um relatório para web que gera em PDF que tem a seguinte consulta no banco:
SELECT DISTINCT
*
FROM
"public"."pontos" pontos
WHERE
pontos.cidade = 'FURTUNA'
ORDER BY
pontos.chave_fk ASC
e a seguinte classe para geração do relatorio:
try{RelConexaorc=newRelConexao();rc.conexaorel();// Faz a conex�oStringpathJasper=getServletContext().getRealPath("/relatorios")+"/";Stringpath=getServletContext().getRealPath("/");Mapparametros=newHashMap();parametros.put("",pathJasper+"Relatorio_Pontos.jasper");try{JasperPrintimpressao=JasperFillManager.fillReport(pathJasper+"Relatorio_Pontos.jasper",parametros,rc.con);JasperManager.printReportToPdfFile(impressao,path+"Relatorio_Pontos.pdf");response.sendRedirect("Relatorio_Pontos.pdf");}catch(Exceptione){response.getWriter().println("Erro ao gerar o relatório :"+e);System.out.println("Erro ao gerar o relat�rio: "+e);}}catch(Exceptione){System.out.println("Erro: "+e);}
Bom acontece que eu estou setando a cidade q quero la no SQL
pontos.cidade = 'FURTUNA'
e gostaria de passar o nome da cidade como parâmetro na hora da construção?!!
como faço isso?
Obrigado pela atenção de todos!!
vlw
abs
, crie um parametro no iReport chamado 'nomeDaCidade' e
SELECT DISTINCT
*
FROM
"public"."pontos" pontos
WHERE
pontos.cidade = $P{nomeDaCidade}
ORDER BY
pontos.chave_fk ASC
[]'
JL
UMC
Ok, vo fazer isso agora!!
Obrigado por responder!!
vlw
ManoJava
Bom dia
Primeiro crie sua query normalmente dentro do ireport, depois crie o parametro CIDADE, marque a propriedade “use as a prompt” e nessa linha faça assim: pontos.cidade = $P!{CIDADE}, desse modo vc poderá passar a cidade desejada quando rodar seu relatório.
Att.
UMC
ManoJava:
Bom dia
Primeiro crie sua query normalmente dentro do ireport, depois crie o parametro CIDADE, marque a propriedade “use as a prompt” e nessa linha faça assim: pontos.cidade = $P!{CIDADE}, desse modo vc poderá passar a cidade desejada quando rodar seu relatório.
Att.
??? nao entedir deireito!! “use as a prompt” ond faço isso??
vlw
ManoJava
Quando clicar sobre o parametro no lado esquerdo na janela Report Inspector, vai abrir as propriedades do parametro na janela Properties, dai tem uma opção " use as a prompt" vc marca a caixa de seleção e quando rodar o relatório ele irá solicitar a passagem do parametro através de uma caixa de diálogo.
Att
UMC
Obrigado Mero_Aprendiz e ManoJava !!
Usei como o Mero_Aprendiz falou e funcionou
o que ManoJava falou vou fazer posteriormente tbm.
vlw
abs