judit25
16-06-2008, 20:59:09
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:
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
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:
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