Fórum ORDER BY não funciona no clientdataset #292263

19/08/2005

0

Tenho uma aplicação usando IBX + CLIENTDATASET na qual faço a ordenação dos registros pelo proprio SQL (order by), ocorre que o aplicativo funciona normalmente em S.O. (Win 98, Win XP Home, Win XP Pro, Win 2003) mas não esta se comportando da mesma maneira no Win 2000 Server onde é o ambiente do cliente. Neste S.O. os registros não ficam ordenados de acordo com o order by que esta no sql select.

Alguem saberia o porque não funciona da mesma forma que nos outros S.O. ?

Sei que é possível ordenar o proprio CDS pelo IndexFieldNames ou criar um indice fixo no CDS, mas gostaria de saber o por que do comportamento diferente neste sistema operacional.

Obrigado.


Andreaskaquino

Andreaskaquino

Responder

Posts

19/08/2005

Beppe

Oi!

Pode passar mais informações sobre as propriedades dos comps?


Responder

Gostei + 0

19/08/2005

Andreaskaquino

Estou usando os seguintes comp...

IBTransaction (AutoStopAction = saCommit)

IBQuery (UniDirectional = True)

DataSetProvider (
Options = [poCascadeDeletes,poCascadeUpdates]
UpdateMode = upWhereKeyOnly)

ClientDataSet

Dentro dos parenteses, estão as propriedades que foram modificadas o resto ficou com o default trazido pelo Delphi.

Grato


Responder

Gostei + 0

19/08/2005

Kenio_c

O ClientDataSet Possui uma propriedade chamada IndexFieldNames, digite o nome do campo q vc deseja ordenar, o componente faz o resto


Responder

Gostei + 0

19/08/2005

Andreaskaquino

Usei o CDS.IndexFieldNames := ´NOME DO CAMPO´ mas não ordenou corretamente, somente criando os indices no IndexDefs e utilizando o nome do indice ordenou corretamente.

A minha pergunta é quanto a diferença entre as duas formas de se fazer, qual a vantagem de se utilizar um ou outro ???

Grato,


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar