Ireport[resolvido]

to achando que tem a ver com essa co nversao aqui nao é isso sera?

private String converteData(Calendar data) { // TODO Auto-generated method stub return new SimpleDateFormat("dd/MM/yyyy").format(new Date().getTime()); }

Vou postar novamente os codigos aqui pra vcs verem como estao

Classe Relatorio Cliente

[code]import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;

import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import Modelo.Cliente;

public class RelatorioCliente
{
Connection con;

private String converteData(Calendar data) {
	// TODO Auto-generated method stub
	return new SimpleDateFormat("yyyy-MM-dd").format(new Date().getTime());
}
 private static EntityManagerFactory fabricaDeEntidades = null;  
 
 private static EntityManager gerenciador = null;  

public JasperPrint gerarRelatorioCliente() 
throws Exception
{ 
	JasperPrint rel=null;

String url = "jdbc:postgresql://localhost:5432/TurmaN40";

  try { 
	Class.forName("org.postgresql.Driver");
} catch(java.lang.ClassNotFoundException e1) { 
    System.err.print("ClassNotFoundException: "); 
    System.err.println(e1.getMessage()); 
} 
try { 
    con = DriverManager.getConnection(url,"postgres", "postgres"); 
} catch(SQLException ex) { 
    System.err.print("SQLException: "); 
    System.err.println(ex.getMessage()); 

}

try	{ // Connection con = Conexao.criaConexao(); 
HashMap map= new HashMap();
Cliente sb = new Cliente();
map.put("data", converteData(sb.getData())); 
System.out.println("imprimi data"+map);
String arquivoJasper= "C:\\vidracaria\\RelatorioCliente.jasper"; 
rel=JasperFillManager.fillReport(arquivoJasper,map,con);
con.close();

}
catch (JRException e)
{ e.printStackTrace(); 
} 
return rel; 
}[/code]

to postando a classe do filtro do relatorio o botao 1 é o que chama o relatorio

																																																																																																		[code]import java.awt.*;   

import java.awt.event.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.swing.*;

import datechooser.beans.DateChooserCombo;

//import org.eclipse.nebula.widgets.datechooser.DateChooserCombo;

import Modelo.Cliente;

import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.view.JasperViewer;

//import controle.Utilitarios;

// Ctrl+Shift+F => Formata o código
// Ctrl+A e Ctrl+i => Formata a seleção

public class FiltroCliente extends JFrame {
private JLabel rotulo1;
private JTextField caixa1;
private JButton botao1;

DateChooserCombo b = new DateChooserCombo();

private static EntityManagerFactory fabricaDeEntidades = null;   

private static EntityManager gerenciador = null;   
Cliente objetoCliente;   
ImageIcon icone;   
public FiltroCliente(EntityManagerFactory fabricaDeEntidades2, EntityManager gerenciador2) throws ParseException {   
    super("Relatório Cliente");   
    Container tela = getContentPane();   
    icone = new ImageIcon("100.gif");   
    botao1 = new JButton (icone);   
    tela.setLayout(null);   
    fabricaDeEntidades=fabricaDeEntidades2;   
    gerenciador=gerenciador2;   

    rotulo1 = new JLabel("Data:");   
   
    b = new DateChooserCombo();   
       
    //botao1 = new JButton("Gerar Relatório");   
   

    // coluna, linha, largura, altura   
    rotulo1.setBounds(24, 19, 56, 20);   
    b.setBounds(75, 19, 100, 20);   

    botao1.setBounds(54, 60, 100, 20);   
       

    //rotulo2.setBounds(24, 50, 100, 20);   
    //caixa2.setBounds(75, 50, 100, 20);   

       

    tela.add(rotulo1);   
    tela.add(b);   

    //tela.add(rotulo2);   
    //tela.add(caixa2);   

    tela.add(botao1);   
   
    botao1.addActionListener(new ActionListener() {       
        
        public void actionPerformed(ActionEvent e) {       
              RelatorioCliente rep = new RelatorioCliente();       
              JasperPrint relat;       
              Cliente f = new Cliente();     
              try {       
                    f.setData(b.getSelectedDate());     
                  relat = rep.gerarRelatorioCliente();       
                  JasperViewer.viewReport(relat, false);       
              } catch (Exception e1) {       
                  e1.printStackTrace();       
              }       

//
}
});

    // setSize(largura, altura);   
    setSize(250, 150);   
    setVisible(true);   
    setLocationRelativeTo(null);   
}   

public static void main(String[] args) throws ParseException {   

    fabricaDeEntidades = Persistence   
            .createEntityManagerFactory("TurmaN40PostgreSQL");   

    gerenciador = fabricaDeEntidades.createEntityManager();   

    FiltroCliente app = new FiltroCliente(fabricaDeEntidades, gerenciador);   
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);   

}   

}

[/code]

meus getters e setters da tabela cliente que cria a tabela no banco

[code]package Modelo;

import java.util.Calendar;
import java.util.Date;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import datechooser.beans.DateChooserCombo;
@Entity
public class Cliente {
@Id
private int codcliente;
@Temporal(TemporalType.DATE)
private Calendar data;

private String NomeCompleto;

private String endereco;

private String Bairro;

private String Cidade;

private String uf;

private int cep;

private int telefone;

private String complemento;

private String email;

private String rg;

private String cpf;
@Temporal(TemporalType.DATE)
private Calendar datadenascimento;

public String getBairro() {
	return Bairro;
}

public void setBairro(String bairro) {
	Bairro = bairro;
}

public int getCep() {
	return cep;
}

public void setCep(int cep) {
	this.cep = cep;
}

public String getCidade() {
	return Cidade;
}

public void setCidade(String cidade) {
	Cidade = cidade;
}



public int getCodcliente() {
	return codcliente;
}

public void setCodcliente(int codcliente) {
	this.codcliente = codcliente;
}

public String getComplemento() {
	return complemento;
}

public void setComplemento(String complemento) {
	this.complemento = complemento;
}



public String getEmail() {
	return email;
}

public void setEmail(String email) {
	this.email = email;
}

public String getEndereco() {
	return endereco;
}

public void setEndereco(String endereco) {
	this.endereco = endereco;
}

public String getNomeCompleto() {
	return NomeCompleto;
}

public void setNomeCompleto(String nomeCompleto) {
	NomeCompleto = nomeCompleto;
}

public String getRg() {
	return rg;
}

public void setRg(String rg) {
	this.rg = rg;
}

public int getTelefone() {
	return telefone;
}

public void setTelefone(int telefone) {
	this.telefone = telefone;
}

public String getUf() {
	return uf;
}

public void setUf(String uf) {
	this.uf = uf;
}

public Calendar getData() {
	return data;
}

public void setData(Calendar data) {
	this.data = data;
}

public String getCpf() {
	return cpf;
}

public void setCpf(String cpf) {
	this.cpf = cpf;
}

public Calendar getDatadenascimento() {
	return datadenascimento;
}

public void setDatadenascimento(Calendar datadenascimento) {
	this.datadenascimento = datadenascimento;
}	

}
[/code]

e por ultimo a query que esta no relatorio

select * from Date(data) = Date($P{data}

o erro que apresenta ao clicar no botao1 do filtro cliente

net.sf.jasperreports.engine.JRException: Incompatible java.lang.String value assigned to parameter data in the RelatorioCliente dataset.
at net.sf.jasperreports.engine.fill.JRFillDataset.setParameter(JRFillDataset.java:895)
at net.sf.jasperreports.engine.fill.JRFillDataset.setFillParameterValues(JRFillDataset.java:652)
at net.sf.jasperreports.engine.fill.JRFillDataset.setParameterValues(JRFillDataset.java:603)
at net.sf.jasperreports.engine.fill.JRBaseFiller.setParameters(JRBaseFiller.java:891)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:716)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:669)
at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:63)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:402)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:234)
at RelatorioCliente.gerarRelatorioCliente(RelatorioCliente.java:58)
at FiltroCliente$1.actionPerformed(FiltroCliente.java:83)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

Certo, sabemos então que seu parâmetro no report está definido como Date e está tentando passar uma String pra ele. Dá pra resolver assim: primeiro, troque o tipo do parâmetro no report de Date para String. E na query do report faça assim:

select * from sua_tabela where seu_campo = to_date($P{data},'yyyy-MM-dd')

sim mais se eu fizer isso eu teria que troca o valor da minha tabela nao é?

o que daria pau no resto programa certo?

deu certo o filtro agora tem outra coisa essa conversao ta pegando a data atual e nao as datas anteriores q eu faço?

tipo se eu coloca la no calendario dia 15 tem q mostra dia 15 ele pega e mostra do dia 17 que seria a data atual hj q eu posso fazer pra mostra a data que foi selecionada no filtro agora?

o codigo do filtro e do relatorio ta ali acima.

private String converteData(Calendar data) { // TODO Auto-generated method stub return new SimpleDateFormat("yyyy-MM-dd").format(new Date().getTime()); }

essa conversao ta puxando a data atual do banco
e o botao que era pra selecionar e trazer é este abaixo provavel que la na classe relatorio cliente essa conversao esteja errada que eu posso fazer pra ele pegar a data que eu coloca no datechoosercombo no filtro e me traze o relatorio com ela?o erro ja parou de da eu consegui fazer com que parasse mais agora ele so esta trazendo o que registrei hj no banco ou seja a data atual.

[code] botao1.addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent e) {         
              RelatorioCliente rep = new RelatorioCliente();         
              JasperPrint relat;         
              Cliente f = new Cliente();       
              try {         
                    f.setData(b.getSelectedDate());       
                  relat = rep.gerarRelatorioCliente();         
                  JasperViewer.viewReport(relat, false);         
              } catch (Exception e1) {         
                  e1.printStackTrace();         
              }         

//
}
}); [/code]

tava escrevendo exatamente isso pra você. agora está perto. Primeiro altere seu método gerarRelatorioCliente para receber um parâmetro:

gerarRelatorioCliente(Calendar data)

no código do seu botão, na linha 09 passe a selecionada para o método:

relat = rep.gerarRelatorioCliente(b.getSelectedDate());

e a cerejinha do bolo é isso:

private String converteData(Calendar data) { return new SimpleDateFormat("yyyy-MM-dd").format(data.getTime()); }

Mudei assim da uma oolhada

[code]botao1.addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent e) {       
              RelatorioCliente rep = new RelatorioCliente();       
              JasperPrint relat;       
              Cliente f = new Cliente();     
              try {       
                    //f.setData(b.getSelectedDate());     
                    relat = rep.gerarRelatorioCliente(b.getSelectedDate());       
                  JasperViewer.viewReport(relat, false);       
              } catch (Exception e1) {       
                  e1.printStackTrace();       
              }       

//
}
}); [/code]

public JasperPrint gerarRelatorioCliente(Calendar data)

private String converteData(Calendar data) { // TODO Auto-generated method stub return new SimpleDateFormat("yyyy-MM-dd").format(data.getTime()); }

mais isso e erro mais uma vez

java.lang.NullPointerException
at RelatorioCliente.converteData(RelatorioCliente.java:25)
at RelatorioCliente.gerarRelatorioCliente(RelatorioCliente.java:55)
at FiltroCliente$1.actionPerformed(FiltroCliente.java:83)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

map.put("data", converteData(data)); 

ae consegui resolve fazendo assim \o obrigadaaa pelaa ajudaaa muito mesmo tu é o caraa valeu mesmoooo \o

O bom que este topico ja fica aberto como exemplo e pra ajuda outras pessoas obrigadaaaaa muitooooooo valeu mesmooo maior tempao parada por causa disso obrigada xD

Parabéns!!