boa noite pessoal,
tenho um relatorio que nao consigo chamar via aplicaçao JAR, qdo mando a aplicação rodar direto no netbeans funciona 100% a geracao do relatório.
Mas se mandar criar o JAR e depois executa-lo simplestamente tal função nao faz nada, aparentemente nao da erro, acredito que ele nao esteja conseguindo achar o relatorio no pacote dentro do JAR
alguem poderia me dar uma LUZ??
package condominio.relatorios;
import condominio.DAO.Conexao;
import condominio.uteis.Conversao;
import java.util.HashMap;
import javax.swing.JDialog;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.view.JasperViewer;
public class ChamadaRelConsumos {
public static final Conexao conexao = new Conexao(); //Objeto para conexão com o banco
String caminhoExe = System.getProperty("user.dir");
public static final String diretorio = System.getProperty("user.dir")+ "/src/condominio/relatorios/";
public void relListConsumos(String nomeFunc, String dataIni, String dataFim, String codControleConsumo){
//Relatório de ListagemCadastroPessoas por data
//Nome do <relatorio>.jasper
String nomeRelatorio = diretorio+"ListagemConsumosAgrupado.jasper";
Conversao conv = new Conversao();
String sql = "select DATE_FORMAT(l.dataLeitura, '%d/%m/%Y') as dataLeitura, " +
"cc.nomeControle, c.nomeCondominio, " +
"lm.descMedidor, " +
"l.leituraAnterior, " +
"l.leituraAtual, " +
"l.qdadeConsumo, " +
"cc.unidadeMedida, " +
"l.valorConsumo, " +
"(select sum(l1.qdadeConsumo) from leituraconsumo l1 " +
" WHERE l1.idLeituraConsumo <= l.idLeituraConsumo and l1.idControleConsumo " +
" in ("+ codControleConsumo+") and l1.idControleConsumo=l.idControleConsumo) as acumulado " +
"from configuracao c, leituraconsumo l " +
" left join cadControleConsumo cc on (l.idControleConsumo=cc.idcontroleconsumo)" +
" left join cadLocalMedicao lm on (l.idLocalmedicao=lm.idLocalMedicao)" +
" WHERE l.dataLeitura >= '" + conv.dataGravar(dataIni) + "' AND " +
"l.dataLeitura <= '" + conv.dataGravar(dataFim) + "' and l.idControleConsumo in ("+ codControleConsumo+")";
sql +=" order by l.idControleConsumo, l.dataleitura";
try{
HashMap parametros = new HashMap();
//Passagem dos parametros
parametros.put("comando", sql);//Data no formado yyyy-MM-dd
parametros.put("nomeFunc", nomeFunc);//Passa o nome do Funcionario Logado para o Relatorio
//Cria um objeto para impressão do relatório, passando diretório, parametros, conexão
JasperPrint impressao = JasperFillManager.fillReport(nomeRelatorio, parametros, conexao.conectaJasper());
//Cria a visualização do relatório em tela
JasperViewer viewer = new JasperViewer(impressao,false);
//define como visivel a tela do relatório
viewer.setZoomRatio(0.90F);//Define o tamanho do ZOOM ao abrir o relatório
//Cria um novo dialog para exibir o relatorio
JDialog dialog = new JDialog();
dialog.setContentPane(viewer.getContentPane());
dialog.setSize(viewer.getSize());
dialog.setModal(true);
dialog.setTitle("Relatório de Consumos");
dialog.setLocationRelativeTo(null);
dialog.setVisible(true); //exibe o mesmo
}catch(Exception e){
System.out.println(e);
}
}
}