Fórum Filtros / Parametros Ireport #529938
27/08/2015
0
Bom dia, agradeço ajuda desde já...
Os relatórios que estou fazendo, até agora esta me suprindo. Só que estou precisando colocar mais de um filtro(parametros). Está dando certo assim: Se eu passar 2 filtros tipo;
Código Ireport
select codigo, data from pedido where codigo = $P and data = $P >>>> Até aqui, se eu passar os dois valores para 'codigo e data' funciona e o relatório traz as informaçoes.
O problema é quando nesta situação quero passar apenas um filtro. Tipo se tenho um relatório com dez filtros, mas na hora que o usuário for utilizar ele quer filtrar só pela 'data'. Assim o relatório não traz página por causa do 'and' e se trocar pelo 'or', traz tudo.
Não sei se fui claro, segue código.
Código Java
public void imprimirCadClienteRota(int codRota/*, int codPraca, int codCliente*/) {
conexao = ConexaoBanco.fabricaConexao();
try {
//HashMap filtro = new HashMap();
Map<String, Object> filtro = new HashMap<String, Object>();
filtro.put("codRotaInt", codRota);
//filtro.put("codRota", codRota);
// filtro.put("codPraca", codPraca);
//filtro.put("codCliente", codCliente);
JasperPrint impressao = JasperFillManager.fillReport("C:/JRMaxSistema/build/classes/relatorios/RelClientesPorRotaResumido.jasper", filtro, conexao);
JasperViewer viwer = new JasperViewer(impressao, false);
viwer.setVisible(true);
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Erro ao imprimir" + e);
}
}
Os relatórios que estou fazendo, até agora esta me suprindo. Só que estou precisando colocar mais de um filtro(parametros). Está dando certo assim: Se eu passar 2 filtros tipo;
Código Ireport
select codigo, data from pedido where codigo = $P and data = $P >>>> Até aqui, se eu passar os dois valores para 'codigo e data' funciona e o relatório traz as informaçoes.
O problema é quando nesta situação quero passar apenas um filtro. Tipo se tenho um relatório com dez filtros, mas na hora que o usuário for utilizar ele quer filtrar só pela 'data'. Assim o relatório não traz página por causa do 'and' e se trocar pelo 'or', traz tudo.
Não sei se fui claro, segue código.
Código Java
public void imprimirCadClienteRota(int codRota/*, int codPraca, int codCliente*/) {
conexao = ConexaoBanco.fabricaConexao();
try {
//HashMap filtro = new HashMap();
Map<String, Object> filtro = new HashMap<String, Object>();
filtro.put("codRotaInt", codRota);
//filtro.put("codRota", codRota);
// filtro.put("codPraca", codPraca);
//filtro.put("codCliente", codCliente);
JasperPrint impressao = JasperFillManager.fillReport("C:/JRMaxSistema/build/classes/relatorios/RelClientesPorRotaResumido.jasper", filtro, conexao);
JasperViewer viwer = new JasperViewer(impressao, false);
viwer.setVisible(true);
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Erro ao imprimir" + e);
}
}
Eric Clauber
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)