Essa dica é velha e, ao mesmo tempo, dispendiosa. Ela faz com que o dataset
(no caso, a consulta qyConsulta) seja fechado e depois aberto com uma nova
cláusula SQL ORDER BY. Isso gera idas-e-voltas ao servidor, gerando tráfego
de rede desnecessário, denegrindo até mesmo o desempenho da aplicação.

A melhor prática é ter os dados carregados e ordenados localmente em um
ClientDataSet associado ao datasource usado pelo DBGrid. Tem dicas à botão
na Internet falando sobre como ordenar um ClientDataSet. O próprio Bruno
Lichot tem exemplos que abordam isso. É só procurar nas mensagens antigas da
lista, em http://br.groups.yahoo.com/group/delphi-br/messages.

Sds.

P.S.: Lembrando sempre que o que se ordena não é o componente de exibição, e
sim a fonte dos dados do mesmo, OK? ;)

-----Mensagem original-----
De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em
nome de Nazareno Neto
Enviada em: sexta-feira, 20 de agosto de 2010 15:34
Para: delphi-br@yahoogrupos.com.br
Assunto: Re: [delphi-br] Ordenar clicando no título do dbgrid

  qyConsulta.Close;
  qyConsulta.SQL[3]:=' Order By '+TABELA+Column.FieldName;
  qyConsulta.Open;

Em 20 de agosto de 2010 16:17, Allan GabrielAM <
alla...@americamoveiseletro.com.br> escreveu:

>
>
> Olá, procurei no histório da lista e não encontrei, preciso fazer que o
> sistema entenda que ao clicar no título da coluna de um dbgrid ele ordene
> por ela, alguém poderia me dar uma ajuda?, uso Delphi7 + FireBird 2.03 +
> IBX.
>
> Atenciosamente,
> Rafael
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
Nazareno Neto
Desenvolvedor Delphi e Firebird

Skype: nazareno.nobrega
http://www.delphisistemas.com.br
nazarenon...@delphisistemas.com.br
nazareno.nobr...@gmail.com



Responder a