Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Tablas planas (https://www.clubdelphi.com/foros/forumdisplay.php?f=20)
-   -   ¿Alguien me ayuda con la busqueda? (https://www.clubdelphi.com/foros/showthread.php?t=41017)

sergiotur 05-03-2007 22:49:15

¿Alguien me ayuda con la busqueda?
 
Hola.
Tengo un par de dudas, que quizas podais aclararme.
Resulta que estoy utilizando el comando "Locate" para buscar unas coincidencias en una tabla.
El sistema es muy sencillo. Hay un "TEdit" en el cual yo escribo el nombre a buscar, y al clickar en un botón, hace la busqueda.
Debajo del "TEdit" y el "TButton" hay un DBGrid que me muestra los registros de la tabla.

He utilizado el siguiente codigo:

- Table1.Locate('nombre', Edit1.Text, []);

En principio funciona bien, ya que al hacer click, efectivamente el foco en el DBGrid se va al registro donde esta la coincidencia, pero me gustaria hacerlo de otra manera...

La idea es que "filtre" los registros de la tabla y muestre (en el DBGrid) solamente los registros de la tabla que contengan la coincidencia...

¿Esto es posible?
A ver si podeis orientarme en la direccion correcta...

Gracias y salu2.

LucianoRey 05-03-2007 23:21:34

Hola yo hice algo parecido , espero te sirva

Código:

if Edit8.Text <> '' then
  begin
  DataModule1.QMae.Filtered:=True;
  DataModule1.QMae.Filter:='Nombre = '+QuotedStr(Edit8.Text+'*');
  end

.

lgarcia 06-03-2007 15:02:29

Ayuda con la busqueda
 
Hola:

Al principio uno siempre quiere mostrarle al usuario todos los datos pero me parece que al final lo que debemos mostrar es lo que el usuario va a buscar, asi que te recomendaria que al comienzo el DBGrid este vacio y que cuando el ponga el criterio de seleccion tu crees la consulta y les muestre solo los registros que coincidan con su seleccion, eso implica menos manipulacion de datos y mas rapidez. Espero haberme hecho explicar.

Saludos
Luis Garcia

LucianoRey 06-03-2007 20:52:34

Totalmente de acuerdo contigo lgarcia, solo le pegue el pedazo de codigo que me sirve para lo que pidio, me falto el consejo. Saludos.


La franja horaria es GMT +2. Ahora son las 18:49:18.

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