Gente Beleza... resolvi o Meu problema!!
fiz o seguinte!
private static Connection conn; // @jve:decl-index=0:
public static void conectar() {
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost/estoque", "root", "");
}
catch (Exception e) {
e.printStackTrace();
}
}
@SuppressWarnings("unchecked")
public static JasperPrint gerarEmpresa() {
JasperPrint rel = null;
try
{
conectar();
Map map = new HashMap();
String query = "SELECT "+
"moviment_conta_pagar.`CODIGO` AS moviment_conta_pagar_CODIGO, "+
"moviment_conta_pagar.`CHEQUE_DIV` AS moviment_conta_pagar_CHEQUE_DIV, "+
"moviment_conta_pagar.`DATA_PAG` AS moviment_conta_pagar_DATA_PAG, "+
"moviment_conta_pagar.`CANCELADO` AS moviment_conta_pagar_CANCELADO, "+
"moviment_conta_pagar.`DATA_PREVISTA` AS moviment_conta_pagar_DATA_PREVISTA, "+
"moviment_conta_pagar.`DEB_CRED` AS moviment_conta_pagar_DEB_CRED, "+
"moviment_conta_pagar.`HISTORICO` AS moviment_conta_pagar_HISTORICO, "+
"moviment_conta_pagar.`NUM_CHEQUE` AS moviment_conta_pagar_NUM_CHEQUE, "+
"moviment_conta_pagar.`PAGO` AS moviment_conta_pagar_PAGO, "+
"moviment_conta_pagar.`VALOR_PAGO` AS moviment_conta_pagar_VALOR_PAGO, "+
"moviment_conta_pagar.`CONTA` AS moviment_conta_pagar_CONTA, "+
"moviment_conta_pagar.`DUPLICATA` AS moviment_conta_pagar_DUPLICATA, "+
"moviment_conta_pagar.`TIPOMOVI` AS moviment_conta_pagar_TIPOMOVI, "+
"cad_conta.`CODIGO` AS cad_conta_CODIGO, "+
"cad_tipo_mov.`CODIGO` AS cad_tipo_mov_CODIGO, "+
"cad_tipo_mov.`DESCRICAO` AS cad_tipo_mov_DESCRICAO, "+
"duplicatas_nota_pagar.`CODIGO` AS duplicatas_nota_pagar_CODIGO, "+
"duplicatas_nota_pagar.`BOLETO` AS duplicatas_nota_pagar_BOLETO, "+
" duplicatas_nota_pagar.`CANCELADO` AS duplicatas_nota_pagar_CANCELADO, "+
"duplicatas_nota_pagar.`NUM_DOC` AS duplicatas_nota_pagar_NUM_DOC "+
"FROM "+
"`cad_conta` cad_conta INNER JOIN `moviment_conta_pagar` moviment_conta_pagar ON cad_conta.`CODIGO` = moviment_conta_pagar.`CONTA` "+
"INNER JOIN `cad_tipo_mov` cad_tipo_mov ON moviment_conta_pagar.`TIPOMOVI` = cad_tipo_mov.`CODIGO` "+
"INNER JOIN `duplicatas_nota_pagar` duplicatas_nota_pagar ON moviment_conta_pagar.`DUPLICATA` = duplicatas_nota_pagar.`CODIGO`" +
"WHERE " +conta()+" && "+pago()+" && moviment_conta_pagar.`CANCELADO` = 'S'"+
" ORDER BY " +
"moviment_conta_pagar.`DATA_PAG` ASC ";
map.put("SQ", query);
rel = JasperFillManager.fillReport("src/relatorios/Relatorio_movimentacao.jasper", map, conn);
}
catch (JRException e) {
JOptionPane.showMessageDialog(null, "Erro: "+e);
e.printStackTrace();
}
return rel;
}
private static String conta(){
String contaa;
if(txt_conta.getText().equals("")){
contaa = " 1 = 1 ";
}else{
contaa = " cad_conta.`CODIGO` = "+Integer.parseInt(txt_conta.getText());
}
return contaa;
}
private static String pago(){
String pagoo;
if(radio_todas.isSelected()){
pagoo = "1 = 1";
}else if(radio_pago.isSelected()){
pagoo = "moviment_conta_pagar.`PAGO` = 'S' or moviment_conta_pagar.`PAGO` = 's'";
}else {
pagoo = "moviment_conta_pagar.`PAGO` = 'N' or moviment_conta_pagar.`PAGO` = 'n'";
}
return pagoo;
}
e no botão
JasperViewer.viewReport(gerarEmpresa());
até ai blz
no meu Jtable eu fiz o seguinte.. conforme eu vou inserindo os registro no jtable
eu faço uma clausula
que se um determinado campo da minha tabela for NULL eu mando aparecer um texto
e no ireport como faço isso???
ele simplismente não aparece os resultados que o campo é null
segue a expressão que estou usando no Ireport
($F{moviment_conta_pagar_CHEQUE_DIV} == "cheque")?
$F{moviment_conta_pagar_NUM_CHEQUE}
:
($F{moviment_conta_pagar_DUPLICATA} == null)?
"entrada/Transf"
:
$F{duplicatas_nota_pagar_NUM_DOC}
ajudem ai