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