Boa tarde pessoal.

Como o grupo não é somente para postar problemas mas sim postar também 
algumas dicas e soluções, talvez para alguem seja irrelevante mais segue 
uma dica legal de como ordenar a grid da TMS, TDBAdvGrid.
lembrando a Grid faz a ordenação automática NATIVA, basta clicar na 
coluna, mas no meu caso tive que deixar a propriedade 'Page Mode' da 
mesma habilitada e com isso ela desativa a ordenação nativa dela. Tive 
que implementar a minha. Aceito sugestões de melhoria....

Segue código.

procedure TfrmTarefas.grdTarefasClickSort(Sender: TObject; ACol: Integer);
var
   nomeField: string;
   options: TIndexOptions;
begin
   if ACol < 0 then
     exit;

   nomeField := grdTarefas.Columns[ACol].FieldName;

   cdsTarefas.IndexDefs.Update;

   if nomeCampo = (nomeField + '_DESC') then
   begin
     nomeCampo := nomeField + '_ASC';
     options := [];
   end
   else
   begin
     nomeCampo := nomeField + '_DESC';
     options := [ixDescending];
   end;

   if cdsTarefas.IndexDefs.IndexOf(nomeField) < 0 then
     cdsTarefas.AddIndex(nomeCampo,nomeField,options);

   cdsTarefas.IndexName := nomeCampo;
   cdsTarefas.First;
end;


-- 
Att.

Rodrigo Rossi
Skype: rodrigotrentinrossi
MSN: rdrg_ro...@hotmail.com
Fone: (45) 9963-1897
Cascavel - PR

Responder a