Ver Mensaje Individual
  #17  
Antiguo 27-11-2012
Avatar de jafera
jafera jafera is offline
Miembro
 
Registrado: may 2007
Ubicación: Llagostera (Girona)
Posts: 582
Reputación: 18
jafera Va por buen camino
Yo lo que hago es el proceso siguiente:

Código Delphi [-]
 
procedure TF_BuscarMecanic.DBGridBuscarTitleBtnClick(Sender: TObject;
  ACol: Integer; Field: TField);
var c: string;
begin
        Edit1.Text :='';
        c:=Field.FieldName;
        ComboBox1.Text:=c;
        OrdenarGrid.Close;
        if Sw_1 = 0 then
        begin
                OrdenarGrid.SQL[0]:= 'SELECT NOM, ID_MECANIC FROM H0001';
                OrdenarGrid.SQL[1]:= 'WHERE BAIXA_EMPRESA IS NULL';
                OrdenarGrid.SQL[2] :='ORDER BY '+ c + ' ASC';
                Sw_1:=1;
        end
        else
        if Sw_1 = 1 then
        begin
                OrdenarGrid.SQL[0]:= 'SELECT NOM, ID_MECANIC FROM H0001';
                OrdenarGrid.SQL[1]:= 'WHERE BAIXA_EMPRESA IS NULL';
                OrdenarGrid.SQL[2] :='ORDER BY '+ c + ' DESC';
                Sw_1:=0;
        end;
        OrdenarGrid.Open;
        OrdenarGrid.FieldByName(ComboBox1.Text).Index := 0;
        DBGridBuscar.SetFocus;
end;

Donde Sw_1 es una variable Integer y privada del form, lo tengo combinado con un ComboBox para poder hacer la selección desde ambos componentes.

Nota: Utilizo firebird 1.5.

Saludos

Josep
Responder Con Cita