Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Recorrer resultado de query. (https://www.clubdelphi.com/foros/showthread.php?t=76155)

darkone2k4 12-10-2011 16:21:34

Recorrer query en busca de registro + completo
 
salu2 amigos.

Necesito recorrer el resultado de una búsqueda realizada con un tquery en busca de los datos más completos, ej:

Código:

Campo1........Campo2........Campo3........Campo4
AAAAA ........      ........XXXXX ........
      ........BBBBB ........XXXXX ........YYYYY
AAAAA ........BBBBB ........XXXXX ........CCCCC

En el ejemplo, el registro más completo sería el último.

Qué me sugieren para realizar lo que necesito?

Desde ya, muchas gracias.

microbiano 12-10-2011 16:45:51

Ummm no se para que quieres recorrer la consulta, no es mejor sacar esa informacion desde la consulta inicial, se me ocurre algo como
Código SQL [-]
select * from tabla
where campo1+campo2+campo3+campo4 is not null

esto si utilizasa sqlserver, ummm para acces no tengo ni idea

pero creo que lo hace asi
Código SQL [-]
select * from tabla
where campo1&campo2&campo3&campo4 is not null

se me ocurre ;-)

darkone2k4 12-10-2011 16:51:42

lo que pasa es que en la query se aplica una busqueda inicial donde un campo cumpla una condición y luego, de ese resultado, se debe reaqlizar la búsqueda del registro más completo..

Voy a probar lo que indicas.

gracias.

microbiano 12-10-2011 16:52:57

ahora si lo que quieres recorrer es la consulta umm pues puede ser asi:


Código Delphi [-]
with Quick_reporte_lic do
            begin
              while not Quick_reporte_lic.Qry_1.Eof do
                begin                                   
                  variable1 :=Qry_1.FieldByName ('licitacion').AsString;
                  variable2 :=Qry_1.FieldByName ('claves').AsInteger;
                  variable3:=Qry_1.FieldByName ('piezas').AsInteger;
                  variable3:=Qry_1.FieldByName ('piezas').AsInteger;                  
                  Next;
                 if (variable1<>'') or (variable2<>'')   or (variable3<>'') or (variable4<>'') then 
                      begin
                            ///entra si todas las variables estan llevas
                      end;  

                end;  
            end;

darkone2k4 12-10-2011 17:24:35

gracias nuevamente.

probaré el código que me has dado.

salu2.

AzidRain 12-10-2011 19:45:02

Es lo mismo que hacer una sola query, solo agrégale las condiciones que debe cumplir el campo por el que comienzas, asi no tienes que hacer otro query y además es más rápido. Que trabaje el motor de BD no tú. :)


La franja horaria es GMT +2. Ahora son las 08:34:42.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi