É minha primeira postagem, e não faço ideia se a coloquei no local correto.
Estou com um pequeno problema. Tenho uma TableColumn que exibe uma Data formatada para o padrão “dd/MM/yyyy”. Digo formatado, porque no banco ela está salva como LocalDate(“yyyy/MM/dd”).
A função de ordenar a coluna está habilitada e eu já carrego a TableView com uma lista ordenada pela data que vem do banco de dados. Porém quando vou ordenar ela pela coluna, ela usa as Strings no padrão BR e ordena a lista do jeito errado.
Resumindo…
Recebo do banco assim:
2019-01-02
2019-01-15
2019-02-12
É exibido no padrão BR:
02/01/2019
15/01/2019
12/02/2019
E quando reordeno a coluna usa o padrão BR e fica assim:
02/01/2019
12/02/2019
15/01/2019
Há alguma maneira de exibir as no padrão BR e ordenar da maneira correta?
Onde Transacao é a classe que contem a data pela qual comparo e populo.
Ela vai ordenada do jeito certo. Porém, eu exibo os dados no padrão BR( 01/01/2019) usando uma String formatData.
E quando ordeno clicando na coluna. Ele ordena do jeito errado. Ele usa as String das celulas e não os dados da tabela.
J
javaflex
Em aplicações reais normalmente se ordena direto no banco, paginado, pois o volume de informações sempre cresce. Então se o usuário clicou pra ordenar, simplesmente faça um order by no banco. Mas se for um trabalho de escola esquece o que falei.
R
regiswg
Entendi. Mas não é um trabalho de escola.
É um programa que para orçamentos.
Penso que se a ferramenta está para ser usada, deve haver alguma maneira de fazer um funcionar.
Se eu mudar para exibir a data no padrão “yyyy/MM/dd”, tudo funcionar perfeitamente.
O que ta pegando, é que eu não achei a maneira de informar a coluna da tabela para usar a data dos dados e não as String exibidas.
R
Solucao aceita
regiswg1 like
Meus queridos… Consegui resolver da seguinte forma.
Eu já havia tentado via Comparator porém não tinha conseguido.
Mas o exemplo do Eduardo me deu outra ideia enquanto eu respondia ao javaflex.
Dividi a String em três campos, criei duas datas locais e fiz a comparação.
Assim tenho a data que vem do banco para trabalhar como quiser e consigo exibir ela no padrão BR.
E quando clico na coluna consigo na ordem crescente e decrescente!