Ver Mensaje Individual
  #1  
Antiguo 14-04-2013
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
Uso de sql en vez de locate

Buenas tardes a todos.

Alguna vez he os realizado alguna consulta sobre el metodo locate y siempre me habeis dicho que si el volumen de datos a procesar era importante, este ralentizaba bastante el tiempo de proceso, cosa que he comprobado en mis propias carnes (o datos), tambien me habeis sugerido que use una consulta sql para localizar el registro buscado y asi agilizar el proceso.

En el siguiente código, uso un form para buscar un registro y luego locate para localizarlo en la tabla general y presentarlo en el formulario correspondiente.

He estado dando vueltas en como poder implementar la busqueda por sql pero no doy en el clavo, lanzar la consulta y mostrar el resultado en el formulario.

Código Delphi [-]
 
procedure TF_Parcs.JvDBGrid1DblClick(Sender: TObject);
var cod:Integer;
begin
        cod:= Camions_ParcID.Value;
        begin
                Buscar_Camio.Close;
                Buscar_Camio.SQL.Text:='SELECT ID FROM BOM0001 WHERE ID = '+IntToStr(cod);
                Buscar_Camio.Open;
                if not Assigned(F_Camions) then
                begin
                   F_Camions:=TF_Camions.Create(nil);
                   F_ModulDades.Camions.Locate('ID', Buscar_CamioID.Value, []);  // supongo que aqui es donde iria la busqueda 
                                                                                                        // y acontinuacion la presentacion  
                end
                else
                begin
                  F_ModulDades.Camions.Locate('ID', Buscar_CamioID.Value, []);
                  F_Camions.BringToFront;
                end;
        end;
end;

Perdonad si la consulta resulta banal, pero no veo más allá de mis narices y no me aclaro de como hacerlo, con lo que si alguien me echa un cable pues estaré le eternamente agradecido.

Saludos a todos

Josep
Responder Con Cita