Olá Pessoal, to quebrando a cabeça aqui com uma duvida bem besta :(
tenho um relatorio no ireport, e passo como parametro um cpf, porém quando a pessoa nao digitar o parametro, gostaria que trouxesse todos os registros, isto é, um select sem where.
Como posso fazer isso?
private void imprimeRelatorio(String cpf) throws JRException {
try{
Connection con = new Conexao().getConnection();
String jasperFile = "src/Relatorios/Paciente.Jasper";
HashMap parametro = new HashMap();
parametro.put("cpf", cpf);
JasperPrint print = JasperFillManager.fillReport(jasperFile, parametro,con);
JasperViewer viewer = new JasperViewer(print , false);
viewer.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
if (print .getPages().size() != 0) {
viewer.setExtendedState(JasperViewer.MAXIMIZED_VERT);
viewer.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
viewer.setVisible(true);
}
}catch(bin.Exception erro){
erro.printStackTrace();
}
}
Botão gerar relatorio:
imprimeRelatorio(cpf);
Query no ireport
SELECT
paciente.`cpf` AS cpf,
paciente.`nome` AS nome,
paciente.`sobrenome` AS sobrenome,
paciente.`sexo` AS sexo,
paciente.`rg` AS rg,
paciente.`nascimento` AS nascimento,
paciente.`convenio` AS convenio,
paciente.`carteirinha` AS carteirinha,
paciente.`logradouro` AS logradouro,
paciente.`n` AS n,
paciente.`complemento` AS complemento,
paciente.`bairro` AS bairro,
paciente.`cidade` AS cidade,
paciente.`uf` AS uf,
paciente.`cep` AS cep,
paciente.`telefone` AS telefone,
paciente.`celular` AS celular,
paciente.`comercial` AS comercial,
paciente.`email` AS email
FROM
`paciente` paciente
WHERE CPF = $P{cpf}