1
resposta

Usar valor de Field do Report principal no SubReport

Como faço para usar o valor de um campo retornado por minha query no relatório principal como critério na clausula where do meu subrelatório? Procurei muito isso na internet, mas, não consegui resolver

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Oi Gilson,

na query vc usa a sintaxe $P{nome _do_parametro}, por exemplo:

SELECT * FROM PEDIDOS WHERE PEDIDO_ID = $P{meu_param_pedido_id}

Para passar esse parâmetro ao relatorio vc usa um Map<String, object>, por exemplo:

Connection connection = new ConnectionFactory().getConnection();        
String nomeArquivo  = "gasto_por_mes.jasper";

//preenchendo o map com o paramtro
Map<String, Object> parametros = new HashMap<>();
parametros.put("meu_param_pedido_id", 3);

JasperPrint jasperPrint = JasperFillManager.fillReport(nomeArquivo, parametros, connection);

//usando jasperPrint

No capitulo 6 implementaremos exatamente esse caso dentro de uma aplicação web.

Abs, Nico