Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Problemas con DBGrid (https://www.clubdelphi.com/foros/showthread.php?t=57970)

nunez_mvp 03-07-2008 17:04:47

Problemas con DBGrid
 
Hola amigos

mi problema es el siguiente. Necesito realizar busquedas desde un dbedit.

Lo que quiero es que al insertar letras en el dbedit haya un DBGrid que vaya presentando solo los resultados de los nombres que contienen esa(s) letra(s).

Espero puedan ayudarme.

Saludos y Gracias...........

look 03-07-2008 17:31:16

talvez te sirve:)

http://delphi.about.com/od/usedbvcl/l/aa050499.htm

saludos :cool:

nunez_mvp 03-07-2008 19:20:18

Gracias por tus intenciones, pero la verdad es que el link que me has dado está en ingles y no entiendo mucho y ademas necesito cargar el o los nombres en un DBGRID.

Pero gracias de todas formas.

Asi que no se si tienen alguna otra sugerencia.

felipe88 03-07-2008 20:03:47

Cita:

Empezado por look (Mensaje 298011)

Al parecer el gusto por las respuestas es asi http://translate.google.com/translat...F8&sl=en&tl=es

Como la vez:cool:

nunez_mvp 03-07-2008 21:13:41

La verdad no me ha servido de mucho. Agradezco sus intenciones pero me gustaria que alguien me explicara como hacerlo.

Saludos...........

enecumene 03-07-2008 21:27:40

Hola, lo puedes hacer usando filtros y/o LIKE:
Código Delphi [-]
procedure TForm1.Edit1Change(Sender: TObject);
var
   Filtro : String;
begin
   If (Edit1.Text <> '') then
   begin
      ADOTable1.Filtered := False;
      If RadioButton1.Checked = True then Filtro := 'campo1 Like ''' +Edit1.Text+ '*'''
         else If RadioButton3.Checked = True then Filtro := 'campo2 Like '''  +Edit1.Text+   '*'''
          else If RadioButton2.Checked = True then Filtro := 'campo3 Like '''  +Edit1.Text+   '*'''
            else If RadioButton4.Checked = True then Filtro := 'campo4 Like '''  +Edit1.Text+   '*''';
      ADOTable1.Filter := Filtro;
      ADOTable1.Filtered := True
   end
   else ADOTable1.Filtered := False;
end;

Eso lo tengo en el evento OnChange de un TEdit.

Saludos.

nunez_mvp 04-07-2008 15:08:13

Hola a todos

A ver, parece que no me he explicado bien. Lo que necesito es cargar desde una tabla (ACCESS) llamada clientes los nombres que contengan la(s) letra(s) que se vayan escribiendo en un DBEDIT que tengo para realizar busquedas. La idea sería que si escribo la letra (J) en el DBEDIT entonces me vaya presentando en el DBGRID solo aquellos nombres que tengan la letra (J), de manera que, al escribir (U) se vaya acortando la lista solo con los nombres que lleven estas dos letras (JU) y asi sucesivamente.

Espero puedan ayudarme nuevamente.

Saludos y Gracias..............

felipe88 04-07-2008 15:40:48

El la pagina de nuestro compañero Neftali esta este ejemplo que el mismo desarrollo sobre las busquedas incrementales. Ojala te sirva :)



PD: Eduarcol si pasas por aca, ya encontraste la plastilina :confused::D

eduarcol 04-07-2008 17:01:07

a ver creo que no te estas esforzando, comenzando con el hecho de que para lo que quieres es necesario un TEdit, no un TDbEdit, porque de lo contrario el registro activo siempre coincidira ya que este lo modifica.

Luego como te explican anteriormente, en el evento onchange del TEdit disparas algun filtro o relanzas la consulta con un like dependiendo que componente de conexion tengas para la tabla y el dbgrid.


PD: Felipe, eso es lo que me quedaba de plastilina, de pronto si lo moldean mejor ;)

felipe88 04-07-2008 17:11:21

Cita:

Empezado por eduarcol (Mensaje 298284)
PD: Felipe, eso es lo que me quedaba de plastilina, de pronto si lo moldean mejor ;)

Mas claro no pudo estar ;)...

nunez_mvp 05-07-2008 14:13:23

Gracias sus consejos me han sido de gran utilidad, especialmente el de la pagina de Neftali.

Saludos........................

Marwuinh 14-10-2008 15:52:16

Bdgrid
 
Buenos dias, me estoy iniciando el la programacion y ya tengo una pregunta.

Tengo una base de datos hecha con DATABASEDESSKTOP paralax 7 y uso un componente TABLE, y un DATASOURSE vinculados a ella. La tabla esta ordenada d la siguiente forma:

Cedula:
Nombre y Apellido:
Direccion:
etc:

Lo que quiero es buscar una cedula y que filtre la informcion de esa persona en un dbgrid, luego al hacer la busqueda de otra cedula diferente, me la muestre justo debjo de la primera busqueda que se muestra en el DBgrid. Les agradezco su ayuda


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

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