Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-08-2004
arual arual is offline
Miembro
 
Registrado: jul 2004
Ubicación: Málaga
Posts: 21
Poder: 0
arual Va por buen camino
Búsquedas en tablas

Buenas tardes!!!

Tengo una aplicación que rellena campos según un número de teléfono, es decir, lo típico, se pide un número de teléfono y a partir de éste se rellenan el resto de las edit.

Pero me encuentro con un problema, al no ser el número de teléfono la clave, puedo tener a varias personas con el mismo número de teléfono pero con distinto nombre.

Entonces, cuando rellenan el campo del teléfono hago:

procedure TPres1.PTlfExit(Sender: TObject);
begin
With Inicio.Personas do
begin
First;
if Locate('Tlf',PTlf.text,[]) then
begin
RELLENO LOS EDIT
AQUÍ TENDRÍA QUE COMPROBAR SI EXISTEN MÁS PERSONAS CON ESE NÚMERO DE TELÉFONO Y ACTIVAR UN BOTÓN QUE HE LLAMADO BSIGUIENTE.
BSiguiente.enabled:=True;
end;
end;
end;

No sé cómo comprobar si existen más personas con ese número de teléfono, es decir, tendría que buscar después de ese registro, pero no sé avanzar el puntero.

Admeás, me falta el procedimiento de cuando le de al botón de siguiente, pero cómo avanzo el puntero de la tabla para que me busque a aprtir del que ya ha encontrado?? (poniendo 'next' me sigue encontrando el mismo)

muchas gracias

P.D.: Perdón por las mayúsculas, pero las he utilizado por claridad. Gracias.
Responder Con Cita
  #2  
Antiguo 02-08-2004
Avatar de marto
marto marto is offline
Miembro
 
Registrado: may 2003
Ubicación: Barcelona, Catalunya
Posts: 882
Poder: 22
marto Va por buen camino
Wop!

¿Por qué no en lugar de hacer un locate no filtras la tabla? Así solamente tendrías los registros con el teléfono en cuestión, de manera que al hacer el Next conseguirías el efecto que propones.

Otra cosa, para mayor claridad, es mejor que pongas tu código entre tags [delphi], sino, da dolor de cabeza leerselo
__________________
E pur si muove
Responder Con Cita
  #3  
Antiguo 02-08-2004
Avatar de ruina
ruina ruina is offline
Miembro
 
Registrado: jun 2004
Posts: 196
Poder: 20
ruina Va por buen camino
no es dificil, simplemente debes poner una condición en el filter y llamar a FindFirst - FindNext.

No es necesario que la propiedad Filtered este a true (aunque con eso conseguirias ver en un grid solo aquellos telefonos que cumplen la condición)

seria algo asi:
Código Delphi [-]
Inicio.Personas.Filter:='Tlf = '+QuotedStr(PTlf.text);
Inicio.Personas.FindFirst;
 
...
...//boton siguiente 
Inicio.Personas.FindNext;
__________________
todo el mundo debe creer en algo... yo creo que voy a tomarme otra copa.

Última edición por marto fecha: 02-08-2004 a las 17:53:42.
Responder Con Cita
  #4  
Antiguo 02-08-2004
arual arual is offline
Miembro
 
Registrado: jul 2004
Ubicación: Málaga
Posts: 21
Poder: 0
arual Va por buen camino
Muchas Gracias, con eso del findFirst me funciona, no lo conocía, muchas gracias otra vez.
Responder Con Cita
  #5  
Antiguo 02-08-2004
Avatar de marto
marto marto is offline
Miembro
 
Registrado: may 2003
Ubicación: Barcelona, Catalunya
Posts: 882
Poder: 22
marto Va por buen camino
Wop!

cuando uses los tags tienes que cerrarlos al estilo xml, en este caso, [/delphi], he editado tu mensaje, para que se vea correctamente
__________________
E pur si muove
Responder Con Cita
  #6  
Antiguo 02-08-2004
Avatar de ruina
ruina ruina is offline
Miembro
 
Registrado: jun 2004
Posts: 196
Poder: 20
ruina Va por buen camino
Cita:
Empezado por marto
Wop!

cuando uses los tags tienes que cerrarlos al estilo xml, en este caso, [/delphi], he editado tu mensaje, para que se vea correctamente
¿no he puesto el de cierre?
valla, lo siento .. y gracias por la corrección marto ^_^
__________________
todo el mundo debe creer en algo... yo creo que voy a tomarme otra copa.
Responder Con Cita
  #7  
Antiguo 02-08-2004
arual arual is offline
Miembro
 
Registrado: jul 2004
Ubicación: Málaga
Posts: 21
Poder: 0
arual Va por buen camino
Y otra preguntilla mas...

Cómo se pueden hacer los filtros por más de un campo?

Gracias
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 21:27:54.


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
Copyright 1996-2007 Club Delphi