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 16-06-2008
Avatar de judit25
judit25 judit25 is offline
Miembro
 
Registrado: abr 2006
Ubicación: Bronx, NY
Posts: 122
Poder: 19
judit25 Va por buen camino
Unhappy No se ejecuta filtro a la primera vez

Buenas tardes a tod@s!!

En esta ocasion tengo un problema con un filtro en un query.

Estoy trabajando con Delphi7, Access 2003 y me conecto a la base de datos por ODBC.

Tengo un formulario donde tengo un dbgrid, un boton y unos dblookupcombobox para poder filtrar el dbgrid.

Lo que estoy intentanto hacer es que cuando seleccionen algo en uno de los dblookupcombobox y al darle al boton me va mandar a otro formulario en el cual me va a filtrar el contenido de un dbgrid que se muestra en el formulario que se llama, segun el registro que se seleccione en el dbgrid o en caso de que no seleccionen nada que tome los valores del primer registro.

El problema es que este filtro no me lo esta haciendo en la primera vez que le doy click al boton, para poder ver este filtro tengo que cerrar el formulario al que se llama y volver a darle click al boton.

Aqui les dejo el codigo que estoy utilizando:

Código Delphi [-]
procedure TFConMedidas.BBConsultarClick(Sender: TObject);
begin
//Las variables MedidaC y SizeC sin variables globales
MedidaC := DM.DSQMedida.DataSet.FieldByname('Dimension').AsString;
SizeC := DM.DSQMedida.DataSet.FieldByname('Size').AsString;
 
FConsulta1.Query1.Close();
FConsulta1.Query1.SQL.Clear;
 
FConsulta1.Query1.SQL.Add('SELECT * FROM QAro');
FConsulta1.Query1.SQL.Add(' Where (Size = :Size OR Size_2 = :Size) and (Medida = :Medida or Medida_2 = :Medida)');
FConsulta1.Query1.SQL.Add(' ORDER BY fecha_hora, letra, numero');
FConsulta1.Query1.ParamByName('Size').AsString := SizeC;
FConsulta1.Query1.ParamByName('Medida').AsString := MedidaC;

FConsulta1.DataSource2.DataSet := FConsulta1.Query1;
FConsulta1.Query1.Open();
FConsulta1.ShowModal; 
end;

Alguien podria ayudarme con este problema?

Gracias anticipadas.

Saludos
__________________
El hombre feliz no es el hombre que rie, sino aquel cuya alma llena de alegría y confianza se sobrepone y es superior a los acontecimientos.
Séneca
Responder Con Cita
  #2  
Antiguo 16-06-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
Veo dos posibles causas del error:

- Los parambyname deben colocarse antes de la sentencia SQL.
- DataSource2.Dataset esta sin asignar la primera vez q se ejecuta.

A ver si van por allá los tiros...

un saludo
Responder Con Cita
  #3  
Antiguo 16-06-2008
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Hola, ¿no te tira algún error?, ¿por qué le asigna el datatset al datasource2?, ¿no está asignado por defecto? y ¿por qué antes del open no debería ser despúes? .

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #4  
Antiguo 16-06-2008
Avatar de judit25
judit25 judit25 is offline
Miembro
 
Registrado: abr 2006
Ubicación: Bronx, NY
Posts: 122
Poder: 19
judit25 Va por buen camino
Hello
Bueno en el formulario al que estoy llamando FConsulta1 tiene asignado por defecto en el datasource2 una tabla "Table1", por esta razon es que le asigno el query por aqui.
Gracias
Saludos
__________________
El hombre feliz no es el hombre que rie, sino aquel cuya alma llena de alegría y confianza se sobrepone y es superior a los acontecimientos.
Séneca
Responder Con Cita
  #5  
Antiguo 16-06-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
creo q intercambiando el orden de las lineas del query1.open y de la asignacion del datasource lo tienes solucionado...
Responder Con Cita
  #6  
Antiguo 16-06-2008
Avatar de judit25
judit25 judit25 is offline
Miembro
 
Registrado: abr 2006
Ubicación: Bronx, NY
Posts: 122
Poder: 19
judit25 Va por buen camino
Cita:
Empezado por coso Ver Mensaje
creo q intercambiando el orden de las lineas del query1.open y de la asignacion del datasource lo tienes solucionado...
Gracias por responder, pero eso no resuelve el problema que tengo, sigue haciendo lo mismo.

Gracias
__________________
El hombre feliz no es el hombre que rie, sino aquel cuya alma llena de alegría y confianza se sobrepone y es superior a los acontecimientos.
Séneca
Responder Con Cita
  #7  
Antiguo 16-06-2008
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Hola, creo que en realidad el datasource2 debe estar asignado por defecto"FConsulta1.Query1" y no Table1 como lo tienes hazlo así y borra la línea donde la asignas. Suerte!.

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
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
con breakpoint ejecuta y sin el no lo ejecuta. pacuuy Varios 1 16-12-2007 13:41:43
no me ejecuta por que? fabian20s Varios 1 22-07-2005 21:24:01
por que no ejecuta fabian20s Gráficos 2 17-07-2005 22:10:26
Primera llamada, primera roman Noticias 12 06-07-2005 21:22:49
No se ejecuta el programa torito Varios 2 19-05-2005 18:16:57


La franja horaria es GMT +2. Ahora son las 17:01:12.


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