Pessoal, estou precisando enviar o relatório direto para a impressora, sem mostrar a tela do jasperReports, será que tem como?
Grato
Pessoal, estou precisando enviar o relatório direto para a impressora, sem mostrar a tela do jasperReports, será que tem como?
Grato
Muito Obrigado.
Você me ajudou muito
Sucesso!
Olá,
Em aplicativos Java Swing, utilizamos da seguinte forma:
JasperReport jasperReport = null;
//Le o modelo do relatorio
URL arquivo = getClass().getResource(“relatorio.jasper”);
//Carrega o relatório no jasperReport
try {
jasperReport = (JasperReport) JRLoader.loadObject(arquivo);
} catch (JRException ex) {
Logger.getLogger(guiEditCtrc.class.getName()).log(Level.SEVERE, null, ex);
}
//Prepara o relatório com os dados para impressão
JasperPrint jasperPrint = null;
try {
jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, ds);
} catch (Exception ex) {
ex.printStackTrace();
}
//1 - Envio direto para a impressora, caso o documento seja preenchido corretamente, demonstrando a tela para seleção e configuração de impressora
if (jasperPrint != null) {
try {
JasperPrintManager.printPage(jasperPrint, 0, true);
} catch (JRException ex) {
JOptionPane.showConfirmDialog(this, "Erro ao preencher documento! " + ex.getMessage());
}
//2 - Caso desejar pre-visualizar antes de imprimir, utilizamos a rotina abaixo
if (jasperPrint != null) {
JasperViewer.viewReport(jasperPrint, false);
} else {
JOptionPane.showConfirmDialog(this, “Erro ao preencher documento!!!”);
}
[]'s