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 Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-05-2004
pkbza pkbza is offline
Miembro
 
Registrado: may 2004
Posts: 48
Poder: 0
pkbza Va por buen camino
Question Actualizar un DBLookupComboBox

Hola a todos, tengo un pequeño problema(soy nuevo en Delphi): tengo un DBLookupComboBox enlazado a una Tabla que es de una BD MySQL. Cuando modifico dicha tabla los cambios no se refejan en el DBLookupComboBox. ¿Como lo puedo hacer?, de antemano gracias.

pkbza

Última edición por pkbza fecha: 06-05-2004 a las 20:11:36.
Responder Con Cita
  #2  
Antiguo 06-05-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 26
delphi.com.ar Va por buen camino
Tienes que refrescar el dataset que carga el combo, por ejemplo:
Código Delphi [-]
Query1.Refresh;

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #3  
Antiguo 10-05-2004
pkbza pkbza is offline
Miembro
 
Registrado: may 2004
Posts: 48
Poder: 0
pkbza Va por buen camino
Gracias

Gracias me ha funcionado, saludos, suerte y q sane Diego.
Responder Con Cita
  #4  
Antiguo 24-07-2017
Phacko Phacko is offline
Miembro
 
Registrado: jul 2004
Posts: 157
Poder: 20
Phacko Va por buen camino
tengo un problema parecido...

Que tal???

Disculpen si no es la forma de preguntar, pero no he querido hacer otro hilo para una pregunta muy similar.
Resulta que tengo el control DBLookUpComboBox enlazado a una tabla, selecciono una línea en el DBLookUpComboBox y los demás controles automáticamente accesan al mismo registro, todo bien, pero el problema está en que si cambio manualmente de registro (con un botón por ejemplo) el DBLookUpComboBox no se actualiza automáticamente, enlacé el control con las propiedades ListSource, Listfield y Keyfiel.

Gracias. Ya me diran si es que debo habrir un nuevo hilo.
Responder Con Cita
  #5  
Antiguo 24-07-2017
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Phako.

Si no entendí mal tu consulta bastaría con que asignaras la clave primaria a la propiedad KeyValue del TDBLookupComboBox cuando cambias la fila, por ejemplo:
Código Delphi [-]
...
procedure TForm1.FormCreate(Sender: TObject);
begin
  DataSource1.OnDataChange := DataSource1DataChange; 
end;

procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);
begin
  DBLookupComboBox1.KeyValue := Query1.FieldByName('PRIMARY_KEY').Value;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Query1.Next  
end;
...
El evento OnDataChange lo podes configurar en tiempo de diseño; lo hice en tiempo de ejecución para clarificar el ejemplo.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 25-07-2017
Phacko Phacko is offline
Miembro
 
Registrado: jul 2004
Posts: 157
Poder: 20
Phacko Va por buen camino
No era exactamente eso el problema

Gracias por tu respuesta.

El hecho es que no tengo ninguna consulta, únicamente el control enlazado, al seleccionar de la lista un elemento los demás controles se actualizan al registro que corresponde, pero si el cambio lo realizo con otro control todos los controles cambian normalmente a excepción del DBLookUpComboBox que se mantiene con la selección anterior. Parece que el control DBLookUpComboBox cambia el registro en el DataSource pero no al revés o es que es necesario hacer una consulta.

Gracias.
Responder Con Cita
  #7  
Antiguo 25-07-2017
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

El componente TDataSource necesariamente debe estar conectado a un TDataSet o descendiente. En el ejemplo usé una consulta pero podría haber sido cualquier otro componente de datos.

Si deseas que el TDBLookupComboBox se actualize al desplazarte por las filas de una tabla, tendrás que ajustar la propiedad KeyValue cuando se produzca dicha acción como te indiqué en el mensaje anterior, por ejemplo.

No alcanzo a entender como has configurado las siguientes propiedades en el TDBLookupComboBox:
  • ListSource: TDataSource vinculado con la tabla poseedora de la columna a mostrar.
  • ListField : Columna cuyo valor será mostrado como lista en el control.
  • (opcionales)
  • DataSource: TDataSource vinculado al origen de datos lookup.
  • DataField : Nombre de la columna vinculante del DataSet especificado en la propiedad DataSource.
Sería interesante que nos explicaras como has configurado las anteriores para entender mejor la situación.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #8  
Antiguo 17-08-2017
Phacko Phacko is offline
Miembro
 
Registrado: jul 2004
Posts: 157
Poder: 20
Phacko Va por buen camino
Algo simple

Gracias Ecfisa, una disculpa por tardar tanto, tuve que tomar vacaciones forzadas. Explico. Únicamente enlace el DBLookUpComboBox con sus propiedades ListSource al DataSource, ListField al campo que quiero listar y KeyField a la clave primaria (única), si en la propiedad DataSource doy el DS que utlilizo me da error.
Así es como el control DBLookUp da la lista con los valores en el campo.

Espero que sea entendible. Gracias
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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 10:56:21.


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