Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-10-2005
dcidt dcidt is offline
Miembro
 
Registrado: sep 2005
Posts: 11
Poder: 0
dcidt Va por buen camino
mostrar datos en un DBComboBox

Hola gracias por su colaboracion.
Estoy con delphi5 y MySql, uso componentes Zeos para acceder a mi BD.
ya logro insertar datos usando el mySalDatabase, MySqlquery y el Datasource
El problema es el siguiente;
quiero mostrar eun DBCombobox los datos de una tabla (ej los nombres de todos los empleados de mi tabla Empleados).
con que componentes tengo q enlazar el dbcombobox, y donde tengo q poner la consulta. gracias.
Responder Con Cita
  #2  
Antiguo 26-10-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
No creo que el dbcombobox sea el control adecuado. El dbcombobox sirve para editar el campo de una tabla tomando el dato de un conjunto fijo de valores que especificas en su propiedad Items. Estos valores son los que se mostrarían en el combo.

Quizá te convenga más un dblookupcombobox. Funciona igual que el dbcombobox pero los valores los toma de una tabla que especificas mediante sus propiedades ListSource, ListField y KeyField.

ListSource es un DataSource que apunta a la tabla origen (empleados en este caso), ListField es el nombre del campo que quieres mostrar en el combo (p. ej. nombre) y KeyField es el nombre del campo o campos que enlazas con la tabla que estás editando. Normalmente será la llave primaria.

En las propiedades DataSource y DataField del dblookupcombo enlazas con la tabla a editar, digamos ventas. En DataSource ponel el datasource que apunte a ventas y en DataField el nombre del campo que hace el enlace con la tabla empleados- la llave foránea.

// Saludos
Responder Con Cita
  #3  
Antiguo 26-10-2005
dcidt dcidt is offline
Miembro
 
Registrado: sep 2005
Posts: 11
Poder: 0
dcidt Va por buen camino
y no tengo q especificar la consulta en algun lado?, lo que quiero es q mi query sea dinamico y no estatico para no usar un query por cada consulta. gracias por responder tan rapido
Responder Con Cita
  #4  
Antiguo 27-10-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por dcidt
y no tengo q especificar la consulta en algun lado?,
Sí, pero ¿qué con eso?


Cita:
Empezado por dcidt
lo que quiero es q mi query sea dinamico y no estatico para no usar un query por cada consulta
¿Qué tiene que ver esto con el problema en sí?

Lo siento, pero no te estoy entendiendo.

// Saludos
Responder Con Cita
  #5  
Antiguo 27-10-2005
dcidt dcidt is offline
Miembro
 
Registrado: sep 2005
Posts: 11
Poder: 0
dcidt Va por buen camino
mira, este codigo utilizo para mostrar los nombres de los empleados pero en un DBGrid.

Código Delphi [-]
 DataBase.ZMySqlQuery1.Sql.Clear;
 DataBase.ZMySqlQuery1.Sql.Add('select nombre from Empleados');
 DataBase.ZMySqlQuery1.Open;
ahora quiero saber si esta consulta puedo colocarla en algun lugar del DBCombobox o para q me filtre los empleados ahi. gracias

Última edición por dec fecha: 27-10-2005 a las 00:35:18. Razón: ¡¡Encerrad el código fuente entre las etiquetas [DELPHI] ... [/DELPHI]!!
Responder Con Cita
  #6  
Antiguo 31-10-2005
pyanqn pyanqn is offline
Miembro
 
Registrado: oct 2005
Posts: 54
Poder: 19
pyanqn Va por buen camino
Question Me podes ayudar con mi DBLookupCombobox?

El tema es así: Tengo que mostrar en el combo2 en cuestrion, un nombre, digamos el de una organización, "Pepito", este nombre esta en una tabla Organizacion, y cuando selecciono en otro combo1, y elijo Juancito, quiero que se altualice el combo2 y me muestre "Pepito", y si elijo "Juancito" en combo1 que aparezca la organizacion correspondiente a juncito, y así.

Intente hacer:
Combo2.text:= el campo en el dataset que esta ligado al combo1
pero no se puede asignar nada, sale un error de solo lectura. La propiedad ReadOnly del combo está a false.

Ademas, lo que le intentaba asignar a combo2 es la clave foranea en combo1(bueno la tabla a la que apunta el combo1).

Otra que se me ocurre, filtar buscando a "Pepito"... en la tabla de organizacion y luego, que se muestre en el combo2 "pepito", pero!!!!
Responder Con Cita
  #7  
Antiguo 06-01-2007
gama_blind gama_blind is offline
Registrado
 
Registrado: ene 2007
Posts: 8
Poder: 0
gama_blind Va por buen camino
Unhappy es lo mismo que quiero hacer aver si me explico bien...

Cita:
Empezado por gama_blind
Buen dia a mi me sucede lo mismo cuando quiero que sa dinamico el Query(DBTables), me refiero a dinamico por ejemplo en un DBLookupcombobox meto un Query y lo que quiero que despligue depende de lo que seleccione en el DBLookupcombobox ya que selecciono ejecuta lo siguiente....

ca:= IntToStr(QSMCActivos['ID_CURSO'])
QSMCActivosAL.Close;
QSMCActivosAL.SQL.Clear;
cad:='SELECT DISTINCT AL.ID_ALUMNO,AL.NOMBRE_ALUMNO,AL.APP_ALUMNO,AL.AMM_ALUMNO,TAL.DESCRIPCION_TIPO_ALUMNO,IC.ID_CURSO,IC .CALIFICACION_CURSO ';
cad:= cad + ' FROM ALUMNOS AL, TIPO_ALUMNOS TAL, INTEGRANTES_CURSOS IC ';
cad:= cad + ' WHERE AL.ID_ALUMNO=IC.ID_ALUMNO ';
cad:= cad + ' AND AL.T_ALUMNO=TAL.T_ALUMNO';
cad:= cad + ' AND IC.ID_CURSO IN '+ ca +' ORDER BY APP_ALUMNO;';
//showMessage(cad);exit;

try
begin
QSMCActivosAL.SQL.Add(cad);
QSMCActivosAL.ExecSQL;
QSMCActivosAL.Active := False;
QSMCActivosAL.Active := True;
end
except
end;

en el momento que ejecuta QSMCActivosAL.Active := True; ahi es donde me sale el error...
espero y te sirva algo,, el problema aqui es que en ciertos modulos de mi sistema si me funciona y en otros me sale error de Error [Oracle][ODBC]restricted data type attribute violation

Cita:
Empezado por gama_blind
MMTA EL PROBLEMA EN MI CASO ES QUE UN CAMPO DE MI TABLA ESTA VACIO (CALIFICACION_CURSO),,, LLENE TODOS LOS CAMPOS DE MI TABLA Y ME LO DESPLEGO SIN PROBLEMAS...
SABEN COMO PUEDO VALIDAR QUE EL EL dbGRID ME ACEPTE CAMPOS VACIOS? O ES PROBLEMA DE ORACLE?

Última edición por gama_blind fecha: 06-01-2007 a las 12:35:30.
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 20:33:31.


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