![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#2
|
|||
|
|||
|
Saludos
Hola que tal, creo que se podría construir la consulta de forma dinámica levantando el filtro de el stringlist, por ejemplo supongamos que en el stringlist almacenas los campos clave, que para el ejemplo vamos a decir que son integer:
// Retorna un string con la consulta a ejecutar function Crea_Filtro:string; var x:integer; aux:string; begin aux:=''; if (strlis.count>0) then begin aux:='campoclave='+strlis[0]+')'; if (strlis.count>1) then for x:= 1 to (StrLis.count-1) do begin aux:=aux+' or (campoclave='+strlis[x]+')'; end; end; result:=aux; end; function Crea_Consulta:string; var aux:string; begin result:='Select * from Tabla'; aux:=''; aux:=Crea_Filtro; if (length(aux)>0) then begin result:=result+' where '+aux; end; end; Por lo que la función Crea_Consulta te retorna la consulta que debes ejecutar, o sea haces algo así como: .. DataSet.close; // por si lo tenías abierto de antes DataSet.SQL.clear; DataSet.SQL.text:=Crea_Consulta; DataSet.open; .. Saludos y cruzo los dedos para que funcione (no lo probé) ![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Select registros master según nº de líneas de detalle | fidel | SQL | 17 | 10-04-2007 03:32:03 |
| Limitar los registros que devuelve una consulta | roman | Conexión con bases de datos | 1 | 03-09-2004 09:08:45 |
| limitar uso de memoria en w2000 | OmarPerez | Windows | 0 | 07-01-2004 21:12:52 |
| Limitar registros con Query | marcial | SQL | 4 | 10-12-2003 08:02:42 |
| Limitar Insercion de registros version prueba | FernanGil | Varios | 4 | 01-10-2003 20:35:31 |
|