Respuesta de consulta sql
Hola
Quiero hacer una consulta sql tomando valores de un dbcombobox1 que esta enlazado a una tabla ejercicio y tengo otro dbcombobox2 enlazado a la tabla nombreperiodo.
Deseo hacer una consulta en una tabla llamada tiposperiodo enlazada a un tquery en la propiedad sql.add pongo la siguiente sentencia
procedure TForm2.FormActivate(Sender: TObject);
begin
periodo:=dbcombobox1.Text;
ejercicio:=dbcombobox2.Text;
table1.TableType:=ttdefault;
table1.TableName:='Nom10002.db';
table1.Active:=true;
table2.TableType:=ttdefault;
table2.TableName:='Nom10023.db';
table2.Active:=true;
DBlookupcombobox2.KeyField:='idtipoperiodo';
DBlookupcombobox2.ListField:='Nombretipoperiodo';
dbcombobox1.DataField:='idtipoperiodo';
dbcombobox2.DataField:='ejercicio';
query1.Close;
query1.SQL.Clear;
query1.SQL.Add('select * from nom10002 where idtipoperiodo='+dbcombobox1.Text+'and ejercicio='+dbcombobox2.Text+'');
query1.Active:=true;
query1.Open;
dbcombobox3.DataField:='idperiodo';
DBlookupcombobox1.KeyField:='idperiodo';
DBlookupcombobox1.ListField:='Numeroperiodo';
end;
El programa funciona bien pero al mostrarme la respuesta en el DBlookupcombobox1 solamente me muestra un periodo y deberían ser 12 o más depende del tipo de periodo que se seleccione en el DBlookupcombobox2
Saludos
Quiero hacer una consulta sql tomando valores de un dbcombobox1 que esta enlazado a una tabla ejercicio y tengo otro dbcombobox2 enlazado a la tabla nombreperiodo.
Deseo hacer una consulta en una tabla llamada tiposperiodo enlazada a un tquery en la propiedad sql.add pongo la siguiente sentencia
procedure TForm2.FormActivate(Sender: TObject);
begin
periodo:=dbcombobox1.Text;
ejercicio:=dbcombobox2.Text;
table1.TableType:=ttdefault;
table1.TableName:='Nom10002.db';
table1.Active:=true;
table2.TableType:=ttdefault;
table2.TableName:='Nom10023.db';
table2.Active:=true;
DBlookupcombobox2.KeyField:='idtipoperiodo';
DBlookupcombobox2.ListField:='Nombretipoperiodo';
dbcombobox1.DataField:='idtipoperiodo';
dbcombobox2.DataField:='ejercicio';
query1.Close;
query1.SQL.Clear;
query1.SQL.Add('select * from nom10002 where idtipoperiodo='+dbcombobox1.Text+'and ejercicio='+dbcombobox2.Text+'');
query1.Active:=true;
query1.Open;
dbcombobox3.DataField:='idperiodo';
DBlookupcombobox1.KeyField:='idperiodo';
DBlookupcombobox1.ListField:='Numeroperiodo';
end;
El programa funciona bien pero al mostrarme la respuesta en el DBlookupcombobox1 solamente me muestra un periodo y deberían ser 12 o más depende del tipo de periodo que se seleccione en el DBlookupcombobox2
Saludos
1 respuesta
Respuesta de gaunmanuel
1