Filtro de datas Ireport + java (1º post) [Resolvido]

Boa tarde.
Como primeiro post, gostaria de elogiar o melhor forum de java do brasil!
Estou começando a desenvolver em java e estou tendo um problema na parte de relatórios quando se trata de datas, tenho uma consulta no ireport que funciona normal quando está assim:

SELECT NUMPEDIDO,NUMPEDIDOTESTE,DATAPEDIDO,DATAENTREGA,CODIGOCLIENTE,OBSERVACAOI + OBSERVACAOII AS [OBSERVACAO],CODIGOVENDEDOR
FROM dbo.T_PEDIDO WHERE DATAPEDIDO BETWEEN ‘19/06/2011’ AND ‘22/06/2011’ ORDER BY DATAPEDIDO

Porém no relatorio aparece pra mim as datas em formato americano, o que não é util nessa aplicação.
Se eu colocar assim(transformar em varchar).

SELECT NUMPEDIDO,NUMPEDIDOAFV,
CONVERT(CHAR,DATAPEDIDO,103) AS DATAPEDIDO,
CONVERT(CHAR,DATAPEDIDO,103) AS DATAENTREGA,
CODIGOCLIENTE, OBSERVACAOI + OBSERVACAOII AS [OBSERVACAO], CODIGOVENDEDOR
FROM dbo.T_PEDIDO WHERE DATAPEDIDO BETWEEN ‘$P!{DATA_INICIAL}’ AND ‘$P!{DATA_FINAL}’ ORDER BY DATAPEDIDO

Ele não ordena corretamente, pois pra ele 20/06/2011 é menor que 21/05/2010

Minha dúvida, é: Como posso fazer esse filtro por periodo(data) em que ele ordena corretamente e só pega o periodo exato.
Quero fazer com que o periodo seja digitado em um JtextField e ele jogue esse parametro.

Grato
Marcos

Marcos,

Por que você não formata a data no campo onde ela vai ser apresentada, da um olhada na classe SimpleDateFormat.

Isso por que você passa como String, não?
Como você passa no Map, como atributos, poderá colocar como Date mesmo.

Testei o SimpleDateFormat (fui amador agora) e apareceu certo, vou testar o que o drsmachado falou na aplicação e coloco como resolvido se der certo…

Vlw

Essa era a solução mesmo!

Só alterei o formato que apareceria.

Vlw Pessoal