Em parte até concordo...
Mas se voce for ordenar só o que esta na memória, isso pode ocasionar alguns 
problemas...

vamos supor que vc tenha os campos

nome               endereço
Andrea            Rua Abilio
Adriana           Rua Jose
Andresa          Rua Mario
Luiz                Rua Abilio

Ai vc traz os dados pelo filtrado/ordenado pelo endereço Abilio Vem:
Andrea e Luiz  ou Luiz e Andrea...

Mas ai ele  ordena/filtra pelo Nome ,  quando alguem pede para ordernar ele 
também pensa que vai vir TUDO do banco na mesma ordem, então ele espera que 
venha:
Adriana, Andrea, Andresa
só que ele vai ter o que já esta na memória que é
Andrea, Luiz

Então do meu ponto de vista e do ponto de vista dos MEUS clientes é melhor 
que faça novamente uma pesquisa no banco e traga o resultado certo... 
rrsrsrsrs...
MAS... cada um com seu cada um, ou seja, cada um com seus problemas....... 
vai da necessidade do cliente...

abraços

Luiz Escobar
Analista/Desenvolvedor:
WEB - HTML/JavaScript/PHP/MySQL
WINDOWS - Delphi/MyDAC/ASSEMBLER/MySQL/xBase
DOS - Clipper/Assembler xBase
SERVIDORES - NetWare4.11, LINUX-REDHAT9, WINDOWS-2k
LINUX - LAZARUS/Kylix/MySQL;
http://www.megasistema.com.br


----- Original Message ----- 
From: Rubem Nascimento da Rocha
To: [EMAIL PROTECTED]
Sent: Friday, April 13, 2007 12:07 AM
Subject: Re: [delphi-br] Ordenação no Grid



Esta alternativa causa um grande impecilho no que tange tráfego de dados em
uma rede. Toda vez que o usuário der um clique em um título de uma coluna
que queira ordenar, ele irá trafegar uma SQL pra retornar dados, o que irá
causar o primeiro transforno: tráfego de dados desnecessário na rede. O
segundo transtorno seria o tempo de resposta para receber estes dados via
rede. Imagine 50 usuários fazendo acesso concorrente ao seu banco de dados,
e o SQL desse grid necessitar de dados que estão em concorrência no instante
em que se submete a instrução SQL para receber os dados. Resultado: lerdeza
no uso da aplicação e intenso tráfego de rede, que pode ocasionar outros
problemas a nível de disponibilidade de banda da rede.

O mais coerente é usar ClientDataSet. Associe o dataset que vc está querendo
visualizar no grid a um TDataSetProvider, e este a um TClientDataSet. Com o
ClientDataSet, vc pode ordenar os dados já carregados na própria estação
cliente, sem a necessidade de se reenviar a consulta para refazer uma ordem
que se deseje visualizar.

Informe-se a respeito disto. Neste e em outras listas de discussão sobre
Delphi, este tema está mais do que tarimbado, abordado e discutido, e a
solução é essa: ClientDataSet.

Sds.

>From: "Hudson" <[EMAIL PROTECTED]>
>Reply-To: [EMAIL PROTECTED]
>To: <[EMAIL PROTECTED]>
>Subject: Re: [delphi-br] Ordenação no Grid
>Date: Thu, 12 Apr 2007 23:51:02 -0300
>
>Ola amigo,
>
>Pra fazer isso e simples....
>
>Vai ate o evento OnTitleClick do DBGrid e faça o codigo:
>exemplo:
>
> banco.produto.Close;
> banco.produto.SQL.Clear;
> banco.produto.SQL.Add('select * from tabela order by ' +
>Column.FieldName);
> banco.produto.Open;
>
>aonde Column.FieldName representa o campo clicado...
>
>espero ter ajudado!
>
> ----- Original Message -----
> From: magnun_oliveira
> To: [EMAIL PROTECTED]
> Sent: Thursday, April 12, 2007 4:44 PM
> Subject: [delphi-br] Ordenação no Grid
>
>
> Olá fiz um master detail e coloquei os campos da tabela master em
> DBEdit's e o detail em um grid. Porem nessa tabela de Detail's eu
> tenho um campo lookpu q uso pra exibir um tipo.
>
> Preciso ordenar o DBGrid por este campo, alguem sabe como fazer isso,
> sei q IndexFieldNames nao da pra usar com lookup ...
>
> Obrigado.
>
>
>
>
>
>[As partes desta mensagem que não continham texto foram removidas]
>

__________________________________________________________
MSN Messenger: converse com os seus amigos online.
http://messenger.msn.com.br


 

Responder a