Brow, como já foi dito, só funciona com ClientDataSet. Portanto, ... !

 

Sds.

 

De: [email protected] [mailto:[email protected]] Em
nome de Allan GabrielAM
Enviada em: sexta-feira, 20 de agosto de 2010 18:19
Para: [email protected]
Assunto: Re: [delphi-br] Ordenar clicando no título do dbgrid

 

  

Olá, no caso estou usando Ibquery + DataSource + IbqUpdateDataSet, funciona
mesmo assim? não testei pois estou sem o delphi nesse final de semana pois
estou viajando.
Grato
Rafael.


----- Original Message ----- 
From: Fabricio Colombo 
To: [email protected] <mailto:delphi-br%40yahoogrupos.com.br>  
Sent: Friday, August 20, 2010 5:59 PM
Subject: Re: [delphi-br] Ordenar clicando no título do dbgrid

Eu utilizo o código abaixo. Desse modo ele ordena de forma crescente e
decrescente. E com o Rubem falou, tem que usar o ClientDataSet.

procedure TForm1.DBGrid1TitleClick(Column: TColumn);
var
enum_IndexOption: TIndexOptions;
str_IndexAsc,
str_IndexDesc,
str_IndexName: String;
begin
if (Column.Field.FieldKind = fkData) then
begin
str_IndexAsc := Concat('asc_',Column.FieldName);
str_IndexDesc := Concat('desc_',Column.FieldName);

str_IndexName := '';
enum_IndexOption := [];

if (ClientDataSet1.IndexName = str_IndexAsc) then
begin
str_IndexName := str_IndexDesc;
enum_IndexOption := [ixDescending];
end
else if (ClientDataSet1.IndexName = str_IndexDesc) then
begin
str_IndexName := str_IndexAsc;
end
else
begin
str_IndexName := str_IndexAsc;
end;

ClientDataSet1.IndexDefs.Clear;

ClientDataSet1.IndexDefs.Add(str_IndexName,Column.FieldName,enum_IndexOption
);
ClientDataSet1.IndexName := str_IndexName;
end;
end;




 



[As partes desta mensagem que não continham texto foram removidas]

Responder a