Order By

Não deixe de perguntar, solucione aqui suas dúvidas...

Order By

Mensagempor barberino » Ter Dez 20, 2011 2:20 pm

Olá estou com um problema preciso ordenar uma tabelha utilizando 2 campos, o primeiro é o
Status(true ou false) e o segundo é o Nome(String), onde essa ordenação será necessaria para a
inicialização de um campo combo.

Fiz da seguinte forma, sobrescrevi o método findForCombo chamando uma consulta utilizando o ordey by, mas não funcionou. Segue o código

Método do Service
@Override
public List<Contrato> findForCombo(String... extraFields) {
return contratoDAO.buscaOrdedanaParaOS();
}

Método do DAO
public List<Contrato> buscaOrdedanaParaOS(){
return query().orderBy("encerrado") //boolean
.orderBy("campocombo") //String
.list();
}
barberino
 
Mensagens: 36
Data de registro: Qua Dez 07, 2011 11:03 am

Re: Order By

Mensagempor rogelgarcia » Ter Dez 20, 2011 8:45 pm

Olá barberino,

Para ordenar por dois campos, voce deve usar apenas um orderBy, exemplo:

.orderBy("campo1, campo2")

Você tem que verificar onde você deseja que essa ordenação aconteça.. talvez não seja o findForCombo que está sendo chamado, é interessante colocar um breakpoint e debugar para ver se é o método correto.


Você pode tentar anotar a sua classe de DAO com @OrderBy("campo1") e ver se a query que está chamando usa o @OrderBy (apenas queries criadas pelo next farão a leitura do @OrderBy, se a query for criada por você, voce terá que chamar o método orderBy explicitamente)
rogelgarcia
Administrador
 
Mensagens: 674
Data de registro: Qua Jul 08, 2009 9:02 am

Re: Order By

Mensagempor barberino » Qua Dez 21, 2011 9:26 am

Olá,

Mais simples do que imaginava, coloquei @DefaultOrderBy especificando os campos na classe do DAO e funcionou, muito obrigado.

:D
barberino
 
Mensagens: 36
Data de registro: Qua Dez 07, 2011 11:03 am

Re: Order By

Mensagempor rogelgarcia » Qua Dez 21, 2011 7:25 pm

Beleza...

Acabei passando o nome errado da anotação... ainda bem que percebeu que era @DefaultOrderBy a anotação correta..

Até mais
rogelgarcia
Administrador
 
Mensagens: 674
Data de registro: Qua Jul 08, 2009 9:02 am


Retornar para Dúvidas

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 1 visitante

cron