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 08-06-2012
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
Lo que te recomiendo es que en un datamodule tengas las consultas, fuera del form, para que sean independientes y poder llamar de distintos forms un datamodule.
Entonces en el datamodule creas un procedimiento que sea cargar TIPOSSALAS donde cerrar el dataset, lo limpias y cargas la consulta base.
Cita:
QUERYSALA.SQL.Add('SELECT * FROM SALA')
Desde el form pasas los parametros para filtrar y filtras el dataset en el datamodule de la misma forma que lo haces en el form.
Cita:
QUERYSALA.SQL.Add('WHERE TIPO_SALA='+quotedstr(elParametroDelFiltro)+'AND ESTADO='+quotedstr('LIBRE'));
La idea es aislar las consultas del formulario para ahorar volver a codificar cuando lo necesites en otra parte del sistema.
Responder Con Cita
  #2  
Antiguo 08-06-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.107
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Lo del timer no solamente es una chapuza, es que además ese no es el problema, ni la solución.
Responder Con Cita
  #3  
Antiguo 08-06-2012
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 problema se produce por que usas el mismo query para el DBLookupComboBox y para realizar la consulta. De ese modo, cuando asignas la cadena SQL de la consulta (en el evento OnClick) se sobreescribe la primera cadena que alimentaba al combo.

Te sugiero dos alternativas:
La primera es usar dos componentes query, uno para el DBLookupComboBox y otro para la consulta (a mi criterio la mejor opción).
La otra es poner el código que asignaste al evento OnTimer al finalizar la consulta. O también salvar previamente la consulta original en una variable y asignarla al query una vez finalizada (que es lo mismo).
Código Delphi [-]
procedure TForm4.BOTONBUSCARSALAClick(Sender: TObject);
var
  ..
  ConsultaOriginal: string;
begin
  ConsultaOriginal:= QUERYTIPOSALA.SQL.Text; // salvar cadena anterior
  //...
  // las operaciones que desees con QUERYTIPOSALA...
  //...
  QUERYTIPOSALA.Close;
  QUERYTIPOSALA.SQL.Text:= ConsultaOriginal; 
  QUERYTIPOSALA.Open;
end;
Pero como dice Casimiro, usar un TTimer no soluciona nada.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
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
como hacer que un DBLookupComboBox muestre un historico de nombres seleccionados? mematanlimon OOP 4 28-01-2010 18:00:35
Problema al hacer consulta SQL pabliyo SQL 6 29-01-2008 10:56:17
Problemas con consulta y DBLookUpComboBox SEBACOHEN SQL 1 30-01-2007 05:15:18
Consulta sobre tablas y DBLookupCombobox silviodp Conexión con bases de datos 6 29-11-2006 03:14:02
Sincronizar DBLookupComboBox con Tquery al hacer locate en la tabla ronalg Conexión con bases de datos 1 27-05-2006 15:58:06


La franja horaria es GMT +2. Ahora son las 00:31:53.


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