Sem a condição ele me manda todas as cidades normal.
o problema é so quando eu uso essa condição.
e quando eu executo la dentro do proprio ireport funciona normalmente.
isso mesmo. Ta lá em cima. select * from cad_cidades where cid_codigo = "+tf_CidCodigo.getText()+"
o que eu nao entendo é que quando eu uso a condição where nao funciona mais se eu nao usar ela funciona normalmente.
equipamentos.nomeRelatorio("C:/Arquivos de programas/Controle de Manutenção de Ferramentas/Relatorios/rel_Cidades.jasper");
equipamentos.rel_Dados_Equipamentos("select * from cad_cidades where cid_codigo = 1 ");
E como Sempre nao ta funcionando
package Relatorios;
import javax.swing.JOptionPane;
import java.util.HashMap;
import net.sf.jasperreports.engine.JRResultSetDataSource;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.view.JasperViewer;
import Utilitarios.Conexao;
public class rel_Dados_Equipamentos
{
Conexao conecta = new Conexao();
private String relatorio = "";
public void nomeRelatorio(String relatorio)
{
this.relatorio = relatorio;
}
public String relatorio()
{
return this.relatorio;
}
public void rel_Dados_Equipamentos(String sql)
{
try
{
conecta.conectaBanco();
conecta.executaSQL(sql);
if(conecta.resultset.first())
{
JOptionPane.showMessageDialog(null,"Pos...");
JRResultSetDataSource resultsets = new JRResultSetDataSource(conecta.resultset);
JasperPrint jasperPrint = JasperFillManager.fillReport(relatorio,new HashMap(),resultsets );
JasperViewer.viewReport(jasperPrint,false);
}
else
JOptionPane.showMessageDialog(null,"Nao Pos...");
}
catch(Exception erro)
{
JOptionPane.showMessageDialog(null,"Não foi possível localizar o relatório desejado.\n"+erro,"Informações do Sistema",JOptionPane.ERROR_MESSAGE);
}
}
public static void main(String args[])
{
// rel_Dados_Equipamentos();
}
}
Sera que eu preciso fazer alguma configuração no ireport nao?
HashMap param = new HashMap();
param.put("sql","<coloca aqui sua sql>");
InputStream entrada = getClass().getResourceAsStream("relatorio.jasper");
JasperReport relatorio = (JasperReport) JRLoader.loadObject(entrada);
JasperPrint imp = JasperFillManager.fillReport(relatorio,param,conexao);
JasperViewer ver = new JasperViewer(imp,false);
Ae, dentro do seu relatorio no iReport, voce adiciona um parametro com o nome de “sql” (sem aspas).
E, na sql dele (aquele icone com uma seta dando a volta num banco de dados), vc adiciona isso: