Duvida Ireport Jasper

27/08/2007

1

Galera montei meu relatorio no ireport jah testei usando a conexão com o banco, esta funcionando corretamente, como parametro estou passando um HashMaps com os valores (´COD_LIST´,1) bom é o seguinte minha duvida é como eu mostro o relatorio no java?

jah copiei o .jasper criado pelo ireport do relatorio para pasta principal do programa, montei um botão chamado imprimir mas como proceder para que ele seja visualizado? obrigado


Responder

Posts

13/08/2008

Nilodp

criar uma nova classe
ai na tela no botao vc instancia essa classe e chama o relatorio

[b:412ba65f09]ESSA É A CLASSE[/b:412ba65f09]

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package Relatorios;

import banco.EnderecoBanco;
import com.mysql.jdbc.Connection;
import java.sql.DriverManager;
import java.util.HashMap;
import javax.swing.JOptionPane;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.view.JasperViewer;

/**
*
* @author Danilo
*/
public class RelatorioCidadeTodas {
private Connection con;
private EnderecoBanco banco;

public void geraRelarorio() {
banco = new EnderecoBanco();
try {
Class.forName(´com.mysql.jdbc.Driver´);
con=(Connection) DriverManager.getConnection(banco.getLine(),
//´root´,´root´);
´administrador´,´SUASENHA´);
JasperReport relatorio = (JasperReport) JRLoader.loadObject(´C:/Relatorios/RcidadeTodas.jasper´);
//HashMap parametros = new HashMap();
//parametros.put(´filtro´, ´SP´);
JasperPrint impressao = JasperFillManager.fillReport(relatorio, null, con);
//ve aqui eu coloquei o parametro false depois da impressao pra nao fechar o sistema
JasperViewer visualizador = new JasperViewer(impressao, false);
visualizador.setVisible(true);

} catch (Exception e) {
JOptionPane.showMessageDialog(null, ´Erro ao encontrar o caminho do relátorio´, ´ERRO!´, JOptionPane.ERROR_MESSAGE);
}
}

public void RelatorioFiltro(String uf){
banco = new EnderecoBanco();
try {
Class.forName(´com.mysql.jdbc.Driver´);
con=(Connection) DriverManager.getConnection(banco.getLine(),
//´root´,´root´);
´administrador´,´2j79662´);
JasperReport relatorio = (JasperReport) JRLoader.loadObject(´C:/Relatorios/Rcidade.jasper´);
HashMap parametros = new HashMap();
parametros.put(´filtro´, uf);
JasperPrint impressao = JasperFillManager.fillReport(relatorio, parametros, con);
//ve aqui eu coloquei o parametro false depois da impressao pra nao fechar o sistema

JasperViewer visualizador = new JasperViewer(impressao, false);
visualizador.setVisible(true);

} catch (Exception e) {
JOptionPane.showMessageDialog(null, ´Erro ao encontrar o caminho do relátorio´, ´ERRO!´, JOptionPane.ERROR_MESSAGE);
}
}

}


---------------------------------------------

ISSO AQUI É O BOTÃO QUE VAI CHAMAR ESSA CLASSE

RelatorioCidadeTodas r = new RelatorioCidadeTodas();
r.RelatorioFiltro(Euf.getSelectedItem().toString());

Agora so modificar ;)


Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira