Bom dia…
Eu tenho alguns relatórios na minha aplicação…quando rodo elas pelo eclipse funciona perfeitamente…
Mas quando eu gero o .jar ele abre o relatório e não preenche nenhum “campo” dele…
alguem sabe o q pode estar acontecendo !?
segue o codigo que chamo o relatorio:
public void gerar(int idTarefa){
String sql = "";
try{
Statement stm = BD.connection.createStatement();
//Código SQL que ira retornar a consulta e que vc vai passar para o relatório
//sql = "SELECT * FROM pendencia WHERE id_tarefa = "+idTarefa+"";
sql = "SELECT pen.id_pendencia, pen.id_pessoa, pen.descricao, pen.id_usuario_adicionou, pen.data_hora_adicionou, pen.data_hora_programado, pen.data_hora_resolveu, pen.id_sub_tema, pen.id_tarefa, pen.os, pen.tipo_pessoa, pen.contato, usu.id_usuario, usu.nome_usu, op.id, op.nome, st.id_sub_tema, st.descricao_tema FROM pendencia pen, usuario usu, outras_pessoas op, sub_tema st WHERE pen.id_tarefa = "+idTarefa+" AND pen.id_usuario_adicionou = usu.id_usuario AND pen.id_sub_tema = st.id_sub_tema AND pen.id_pessoa = op.id order by id_pendencia;";
ResultSet rs = stm.executeQuery(sql);
/* implementação da interface JRDataSource para DataSource ResultSet */
JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);
/* Preenche o relatório com os dados. */
java.net.URL jasperUrl = getClass().getResource("Reports.jasper");
JasperReport jr = (JasperReport) JRLoader.loadObject( jasperUrl );
JasperPrint jasperPrint = JasperFillManager.fillReport(jr, null, jrRS);
JasperViewer viewer = new JasperViewer(jasperPrint, false);
viewer.setExtendedState(JasperViewer.MAXIMIZED_BOTH);//Coloca em maximizado
viewer.setTitle("Histórico - Tarefa nº " + idTarefa);//Coloca um título no relatório
viewer.setVisible(true);
}
catch(Exception erro){
erro.printStackTrace();
}
}
Desde já agradeço!