Ver Mensaje Individual
  #2  
Antiguo 02-05-2008
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Reputación: 23
BlueSteel Va por buen camino
Cool

Hola totote

si quieres ordenar por columna los datos que tienes un dBGrid, puedes utilizar el codigo que esta a continuación..

Debes utilizar el evento OnTitleClick del DBGrid...si pincho 1 vez me ordena por la columna en forma ascendente y si lo vuelvo a presionar me lo ordena en forma descendente... para controlar ese evento utilizo una variable ( Sw_1)


Código Delphi [-]
procedure DBGrid1TitleClick(Column: TColumn);
begin
     // Aqui pregunto si el titulo de la Columna es RUT
     If Column.Title.Caption='RUT' then
        Begin
             IBQ_Select.Close;
             IBQ_Select.SQL.Clear;
             If Sw_1 = 0 Then
                Begin
                     IBQ_Select.SQL.Add('Select * from "Proveedor" Order By "Pro_Rut" ASC');
                     Sw_1 := 1;
                End
             Else
                Begin
                     IBQ_Select.SQL.Add('Select * from "Proveedor" Order By "Pro_Rut" DESC');
                     Sw_1 := 0;
                End;
            IBQ_Select.Open;
        End;

bueno, el codigo anterior te ordena solo si pinchas en la columna con el titulo RUT, por lo que deberas agregar las demas columnas que necesites ordenar...

Espero que te funcione..

Salu2
__________________
BlueSteel
Responder Con Cita