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 Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-03-2007
Avatar de kuan-yiu
[kuan-yiu] kuan-yiu is offline
Miembro Premium
 
Registrado: jun 2006
Ubicación: Galicia. España.
Posts: 1.017
Poder: 19
kuan-yiu Va camino a la fama
Sincronía entre 2 TDBLookupComboBox con la misma TQuery

Hola a tod@s.
Tengo un par de TDBLookupComboBox en un formulario de altas/modificación que utilizan la misma consulta.
Código SQL [-]
select codigo, siglas, nombre
from empresa
order by nombre
Ambos tienen el mismo "ListSource" y "KeyField" (codigo), pero uno muestra las siglas y otro el nombre en "ListField".
Yo pensé que ambos estarían sincronizados: que al seleccionar las siglas aparecería el nombre o que al seleccionar el nombre aparecerían las siglas, pero no es así. Funcionan de un modo totalmente independiente.

¿Como se consigue ese efecto? ¿Debo utilizar otro componente?
Responder Con Cita
  #2  
Antiguo 30-03-2007
Avatar de Cañones
Cañones Cañones is offline
Miembro
 
Registrado: ene 2007
Ubicación: La Paz Entre Ríos
Posts: 354
Poder: 18
Cañones Va por buen camino
Me parece que si utilizas un ClienDataSet para proveerle los datos van a funcionar sincronizados, porque el registro activo es uno, en cambio con el TQuery navega por la consulta, creo que es asi.
Espero que te sirva.
Saludos.
Responder Con Cita
  #3  
Antiguo 30-03-2007
Avatar de kuan-yiu
[kuan-yiu] kuan-yiu is offline
Miembro Premium
 
Registrado: jun 2006
Ubicación: Galicia. España.
Posts: 1.017
Poder: 19
kuan-yiu Va camino a la fama
Disculpa, se me olvidaron un par de datos.
Tengo Delphi7 y Oracle9i.

Utilizo un DataSource para eso, ¿en que se diferencia del ClienDataSet?
Responder Con Cita
  #4  
Antiguo 30-03-2007
Avatar de LordRiper
LordRiper LordRiper is offline
Miembro
 
Registrado: mar 2007
Posts: 22
Poder: 0
LordRiper Va por buen camino
En el evento OnChange de cada uno le reseteas el Value al otro, solo recuerda desactivar el OnChange del combo al que le vas a cambiar el texto, porque sino se cicla...
__________________
-- Salim Giacoman --
Torreon, Coahuila, Mx
giacoman_salim@hotmail.com


“Entre más aprendo, más quiero saber.
Entre más sé, más quiero aprender"
Responder Con Cita
  #5  
Antiguo 02-04-2007
Avatar de kuan-yiu
[kuan-yiu] kuan-yiu is offline
Miembro Premium
 
Registrado: jun 2006
Ubicación: Galicia. España.
Posts: 1.017
Poder: 19
kuan-yiu Va camino a la fama
Los TDBLookupComboBox no tienen el evento "OnChange". El TDataSource con el que enlazo la TQuery con ellos tiene el evento "OnDataChange" pero no me resulta fácil usarlo para rellenar esos componentes porque el formulario lo tengo por una parte y las consultas las tengo en un "DataModule".
Responder Con Cita
  #6  
Antiguo 02-04-2007
Avatar de kuan-yiu
[kuan-yiu] kuan-yiu is offline
Miembro Premium
 
Registrado: jun 2006
Ubicación: Galicia. España.
Posts: 1.017
Poder: 19
kuan-yiu Va camino a la fama
En espera de encontrar una solución más satisfactoria tengo esto:
Código Delphi [-]
procedure TfFactProvExt.DBlcbSiglasClick(Sender: TObject);
begin
  if (flagEmpresa) then
    begin
      flagEmpresa := FALSE;
      DBlcbEmpresa.KeyValue := DBlcbSiglas.KeyValue;
      flagEmpresa := TRUE;
    end;
end;

procedure TfFactProvExt.DBlcbEmpresaClick(Sender: TObject);
begin
  if (flagEmpresa) then
    begin
      flagEmpresa := FALSE;
      DBlcbSiglas.KeyValue := DBlcbEmpresa.KeyValue;
      flagEmpresa := TRUE;
    end;
end;
No me gusta demasiado pero por lo menos me permite seguir avanzando con el resto de las cosas.
Responder Con Cita
  #7  
Antiguo 02-04-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Entendería el uso de 2 controles si cada uno tuviese una ordenación, por ejemplo, el combo de siglas ordenado alfabéticamente por siglas y lo mismo para el DBLookUpCombo de nombres.

Si los dos LookupCombo tienen el mismo ListSource, que está ordenado por nombre, ¿por qué no usas un solo Lookupcombo? La propiedad Listfield a:

siglas;nombre

Así mostrará las dos cosas dentro del mismo Combo.

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 03-04-2007
Avatar de kuan-yiu
[kuan-yiu] kuan-yiu is offline
Miembro Premium
 
Registrado: jun 2006
Ubicación: Galicia. España.
Posts: 1.017
Poder: 19
kuan-yiu Va camino a la fama
Es una cuestión de comodidad para el operario, a petición suya. Tiene que seleccionar la empresa y quiere poder hacerlo usando ambos campos: las siglas en la mayoría de los casos y el nombre en situaciones muy contadas.
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
TDBLookupComboBox chipsoni Conexión con bases de datos 6 09-06-2006 00:52:06
DropDownRows y TDBLookUpComboBox ZRR Firebird e Interbase 2 01-11-2005 16:01:20
ADO y TDBLookUpComboBox miquellg Conexión con bases de datos 7 19-08-2005 09:45:52
¿Existe algún problema si quiero utilizar 2 TQuery para la misma base de datos ? nuri SQL 4 28-07-2005 09:40:54
DropDown con TDBLookupComboBox AGAG4 Varios 1 28-09-2004 22:20:25


La franja horaria es GMT +2. Ahora son las 10:49:48.


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