Ver Mensaje Individual
  #1  
Antiguo 31-07-2010
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
Cambio de campo en una consulta

Buenas tardes de nuevo

Primero de todo Delphi 6 y Firebird 1.5, es que a veces se me pasa comentarlo.

A ver si alguien me ilumina otra vez, pues debo tener la bombilla fundida.
Tengo un form de busqueda con un JVdbgrid, un combobox, un edit y una IBSQL.
De entrada el form cuando se inicia hace la primera consulta la cual esta programada en el IBSQL.

El problema lo tengo si introduzco algun caracter en el edit para que busque un registro concreto y despues voy al combobox y cambio el criterio (campo) de busqueda que me lanza un error de index out of bounds.

La linea que falla creo que es la comentada // ya que si la pongo sin comentar falla y asi no, pero claro no da error pero tampoco hace el order by.

Código Delphi [-]
 
procedure TF_BuscarCamio.ComboBox1Select(Sender: TObject);
begin
        Edit1.Text :='';
        OrdenarGrid.Close;
        //OrdenarGrid.SQL[2] := 'ORDER BY '+ ComboBox1.Text;
        OrdenarGrid.Open;
        OrdenarGrid.FieldByName(ComboBox1.Text).Index := 0;
        DBGridBuscar.SetFocus;
end;
procedure TF_BuscarCamio.Edit1Change(Sender: TObject);
begin
        OrdenarGrid.Close;
        OrdenarGrid.SQL.Clear;
        OrdenarGrid.SQL.Add('select * from BOM0001 where upper('+Combobox1.text+') like ''%'+AnsiUpperCase(Edit1.Text)+'%'' order by '+Combobox1.text+'');
        OrdenarGrid.Open;
end;

Si a alguien no le falla el generador y tiene luz.....

Gracias de nuevo

Josep
Responder Con Cita