![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Hola.
Lo mas simple es usar un TDBLookupComboBox y te ahorras el uso de un form adicional. Para explicarte como configurarlo necesitaría saber:
Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#2
|
|||
|
|||
|
Cita:
|
|
#3
|
||||
|
||||
|
Cita:
Si deseas mostrar los campos ordenados por nombre te conviene usar un Query de los componentes que uses (TQuery, TADOQuery,TIBQuery,...) para alimentar el Combo. El TDBLookupComboBox permite la búsqueda incremental (va mostrando a medida que ingresas caracteres). Saludos. ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#4
|
||||
|
||||
|
Ya te dió eficas la solución. Recuerda que DBLookUpComboBox tiene búsqueda por la primera letra. Por otro lado si hablarmos de demasiados registros quizá te convenga más hacer un Form adicional con un campo de búsqueda donde pongan el nombre o parte de él, hacer un query con un LIKE y mostrar los resultados en un pequeño grid. Al hacer doble click en el empleado seleccionado, guardar el id y devolverlo a al form que lo invocó o un valor x definido por tí para indicar que no se seleccionó nada.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
|
#5
|
|||
|
|||
|
Gracias
Cita:
Los DataSet que tengo son un TTable para poder ingresar los datos de la actividad en la tabla ACTIVIDADES (esta todo en access). Las tablas son: EMPLEADO(#Idempleado,Nombre,Apellido,Tel,Direccion,Mail,Idtrabajo); EMPLEO(#Idempleo,Idempleado,Idtrabajo); TRABAJOS(#Idtrabajo,Descripcion); La tabla de actividades es ACTIVIDADES(#Idactividad,Detalle,Fecha,Idempleado); |
|
#6
|
||||
|
||||
|
Hola.
Todos los valores son configurables en tiempo de diseño mediante el Object Inspector, pero por razónes de claridad, voy a asignarlos por código. Código:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
TDBLookupComboBox* lcb = static_cast<TDBLookupComboBox*> (DBLookupComboBox1);
// Consulta
qyEmpleado->Close();
qyEmpleado->SQL->Clear();
qyEmpleado->SQL->Add("SELECT IDEMPLEADO, APELLIDO &' '& NOMBRE AS FULLNAME");
qyEmpleado->SQL->Add("FROM EMPLEADO ORDER BY APELLIDO &' '& NOMBRE");
qyEmpleado->Open();
// Configuracion del DBLookupComboBox
lcb->ListSource = dsEmpleado; // DataSource -> Query empleado
lcb->ListField = "FULLNAME"; // Nombre del campo apellido+nombre
lcb->KeyField = "EMPNO"; // Nombre del campo ID del empleado
lcb->DataSource = dsActividad; // DataSource -> Table actividad
lcb->DataField = "IDEMPLEADO"; // Nombre del campo (tabla actividad)
// donde se almacena el ID del empleado
}
Saludos. ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#7
|
|||
|
|||
|
Ya se soluciono. gracias por tu ayuda.
El unico tema es que no se filtra y espera a que ingrese todas las letras necesarias. Por ejemplo tengo 2 empeleados: Caruso y Cardozo, se posiciona en caruso pero sigue mostrando otros registro como perez. Que podria hacer? Al escribir la C no tendria que mostrar la P, ya al marcar la 'U' 'caru' debe desaparecer cardozo. Última edición por giulichajari fecha: 07-07-2013 a las 15:05:19. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Llevar aplicación Firebird a otro ordenador | bulc | Firebird e Interbase | 12 | 17-05-2013 09:34:59 |
| Qué debe leyendas o texto de llevar un formulario Acerca De..?? | Lizette | Varios | 24 | 01-04-2009 12:55:20 |
| como pasar dato de un formulario a otro ??? | chelejuan | Varios | 5 | 15-11-2004 09:25:44 |
| Select mostrando otro dato | el_enigma1 | SQL | 15 | 05-09-2004 00:39:53 |
| Capturar un dato de otro ordenador | José Arce | Varios | 5 | 23-01-2004 23:02:56 |
|