时间控件两个:DateTimePicker1\DateTimePicker2(查找的时间段)
其他控件:combobox1\EDIT1各一个(Cmbobox1选择的是DBGrid的列,EDIT1是列下面的详细)怎么样用这几个控件做一相查找?然后把查找所得显示在DBGrid1
求高手帮帮忙,这段代码怎么写?谢谢A B C D(ABCD就是combobox1下拉的选择)
1 1 1 1
2 2 2 2
1 2 2 2
3 3 5 5如果我在Combobox1选择A并在EDIT1输入"1"点查找,DBGrid1显示如下
A B C D
1 1 1 1
1 2 2 2
其他控件:combobox1\EDIT1各一个(Cmbobox1选择的是DBGrid的列,EDIT1是列下面的详细)怎么样用这几个控件做一相查找?然后把查找所得显示在DBGrid1
求高手帮帮忙,这段代码怎么写?谢谢A B C D(ABCD就是combobox1下拉的选择)
1 1 1 1
2 2 2 2
1 2 2 2
3 3 5 5如果我在Combobox1选择A并在EDIT1输入"1"点查找,DBGrid1显示如下
A B C D
1 1 1 1
1 2 2 2
其他控件:combobox1\EDIT1各一个(Cmbobox1选择的是DBGrid的列,EDIT1是列下面的详细) var
vSql: String;
begin
vSql := 'select * from table where key_id is not null';
if DateTimepicker1.checked then vSql := vSql + ' and c1>=:d1';
...
if combobox1.text<>'' then vSql := vSql + ' and c2=:c2';
with adoquery1 do
begin
close;
sql.text := vSql;
if DateTimepicker1.checked then parameters.parambyname('d1').value := datetimepicker1.date;
.... if combobox1.text<>'' then parameters.parambyname('c2').value := combobox1.text;
....
Open;
end;放一个datasource设属性dataset为adoquery1dbgrid1的属性datasource设置为上面的datasource
temp1,temp2:string;
begin
temp1:=combobox1.text;
temp2:=edit1.text;
if (temp1<>'')and(temp2<>'') then
begin
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('select * from tabel(你的表名) where '+temp1+'='+''''+temp2+'''');
adoquery1.open;
end;
end;
应该就是这个样子的了