Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-01-2007
ddd_ddd ddd_ddd is offline
Miembro
 
Registrado: sep 2005
Posts: 60
Poder: 19
ddd_ddd Va por buen camino
Como filtrar un dblookupcombobox

tengo la tabla alumno, que tiene 3 campos: clave (autoincremento), nombre (char[15]) y direccion(char[40]).

Escribo un nombre de un alumno en una maskedit1, y a un lado tengo un boton bitbtn1 que sirve para buscar en la tabla alumno, las direcciones de los alumnos que se llamen como yo puse en la maskedit1. Las direcciones las quiero en un dblookupcombobox. hasta el momento solo puedo hacer que me muestre todas las direcciones que tengo en la tabla.
en el dblookupcombobox, listsourse:=datasource1, listfield:=domicilio, keyfield:=clave.
Responder Con Cita
  #2  
Antiguo 23-01-2007
ddd_ddd ddd_ddd is offline
Miembro
 
Registrado: sep 2005
Posts: 60
Poder: 19
ddd_ddd Va por buen camino
aclaracion

exactamente lo que quiero son las direcciones de los alumnos, pero no de todos los alumnos, solo de los que se llaman con el nombre que yo puse en la maskedit1
Responder Con Cita
  #3  
Antiguo 23-01-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
la propiedad ListSource puede apuntar a un TQuery, en dicha consulta puedes restringir los datos mediante la claúsula where.

Código Delphi [-]
query1.sql.text := 'select clave, domicilio from alumnos where nombre like ' + quotedstr('%'+maskedit1.text+'%');
query1.open;

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.

Última edición por Lepe fecha: 24-01-2007 a las 11:31:40.
Responder Con Cita
  #4  
Antiguo 24-01-2007
ddd_ddd ddd_ddd is offline
Miembro
 
Registrado: sep 2005
Posts: 60
Poder: 19
ddd_ddd Va por buen camino
sigo en blanco

como hago para que listsource apunte a un tquery? paso por paso porque soy lento
gracias
Responder Con Cita
  #5  
Antiguo 24-01-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Supongo que estas usando el BDE (porque no dices otra cosa), pues en la paleta BDE de delphi tienes el TQuery, coloca uno en tu ventana.

- Asigna la propiedad Database o DatabaseName (una de las dos nada más)

- En su propiedad SQL escribe:
Código SQL [-]
select clave, domicilio from alumnos

- Añade un TDatasource a tu ventana, en su propiedad dataset elije el Query1. Su propiedad AutoEdit a false (ya que no se modificará los datos).

- En el lookupListBox, en su propiedad ListSource, elije el Datasource que acabas de añadir, modifica los camos keyfield, listfield a voluntad.

- Y ahora usa el código que puse en el botón que quieras. (he editado el mensaje para completarlo)

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #6  
Antiguo 25-01-2007
ddd_ddd ddd_ddd is offline
Miembro
 
Registrado: sep 2005
Posts: 60
Poder: 19
ddd_ddd Va por buen camino
Perfecto

Funciona de maravilla, me salvaste la vida.
Una ultima pregunta, ahora ya me muestra solo los nombres que yo queria pero ahora como recupero la clave del alumno que escogió?
leí algo sobre las propiedades datasource y datafield del dblookupcombobox, pero la verdad no estan explicadas paso a paso, podrias decirme como se usan?
gracias
Responder Con Cita
  #7  
Antiguo 25-01-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Si en la propiedad Keyfield has puesto el campo "clave" con la propiedad KeyValue obtienes el valor de ese campo, en el registro elegido.

También podrías acceder con query1.fieldbyname('clave').AsXXXXX ya que el registro activo será el que tengas elegido en el dblookup. Aunque normalmente se usa la primera opción.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #8  
Antiguo 25-01-2007
ddd_ddd ddd_ddd is offline
Miembro
 
Registrado: sep 2005
Posts: 60
Poder: 19
ddd_ddd Va por buen camino
Thumbs up

Todo perfecto, muchas gracias, funciona excelente
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como filtrar un SqlDataSource? JuanErasmo .NET 1 07-12-2006 17:39:56
filtrar con DBLookupComboBox y DBLookupListBox akon Conexión con bases de datos 2 29-10-2005 07:18:17
Como filtrar los 10 mejores robero espinoza SQL 3 20-08-2004 08:36:16
como filtrar una tabla andre navarrete Varios 5 11-08-2004 06:17:19
filtrar con DbLookupComboBox Walterdf Conexión con bases de datos 7 11-08-2003 16:17:33


La franja horaria es GMT +2. Ahora son las 16:04:19.


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