![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Ayuda con DBComboBox por favor..
Hola a todos.
Quiero hacer que en un combo box salgan todos los valores de una determinada columna de una tabla. Para ilustrarlo mejor, supongamos que tengo dos tablas: Empleados, y Departamentos. Empleados tiene un campo llamado Departamento que hace referencia a la clave primaria de Departamentos... y quiero que en el combo box me salgan los departamentos, para poder seleccionar uno de ellos. Siempre lo he hecho de dos formas (ninguna de las dos me gusta, y creo que tiene que haber una forma mejor...): 1.- Los cargo a mano... En lugar de un componente DB, uso un ComboBox normal. Lo que hago es recorrer la tabla departamentos, y voy a mano agregando los valores a la propiedad Items. No me parece nada práctico, y tampoco creo que sea muy eficiente... 2.- Uso un DBLookUpComboBox... Creo un campo LookUp en la tabla Empleados, y asocio el control a dicho campo. La pregunta es: Hay alguna forma de hacerlo mejor? Porque intuitivamente cuando ví el componente DBComboBox, pensé que éste cargaba todos los valores de una determinada columa de una tabla... pero veo que no... Existe algún control que haga eso (los cargue automáticamente) y que además pueda por ejemplo filtrar o ser asociado como esclavo a otra tabla, o algo así? Muchas gracias de antemano. Un cordial saludo. |
#2
|
|||
|
|||
Ayuda con DBComboBox
Hola:
Me parece que la herramienta mas poderosa es el DBLookComboBox ya que asociado con un DataSource a un Procedimiento almacenado o una Query donde puedes filtrar los valores que quieras y utilizas las propiedades ListSource para asociarla con el DataSource, ListField con lo quieres mostrar y KeyField con el valor a manipular. Este componente tiene una propiedad keyvalue que te da el valor del keyfield y text que te da el valor del ListField. Saludos Luis Garcia _____________________________ La mejor manera de decir es hacer |
#3
|
||||
|
||||
Cita:
Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#4
|
||||
|
||||
Respondiendo a tus otras preguntas, puedes crearte una rutina que dado un Dataset, lo recorra y añada a un Tstrings la columna que indiques por parámetro, vamos algo como:
para llamarlo simplemente:
El único problema es que en las inserciones y borrados, no se actualizará el combo. Un DBLookupCombobox si.
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
![]() |
|
|
![]() |
|