我的程序有两个窗口,我写了段代码,想让form1的dbgrid1显示form2的adoquery1传过来的数据,可是运行后dbgrid里却没有显示任何数据,怎么回事?
implementation
uses unit1;
{$R *.dfm}procedure TForm2.Button1Click(Sender: TObject);
var adoquery1:tadoquery;
adoconnection1:tadoconnection;
adodatasource1:tdatasource;
begin
try
   adoconnection1:=tadoconnection.Create(self);
   adoconnection1.ConnectionString:='Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=腾飞系统;Data Source=HOME1\SQL2000';
   adoquery1:=tadoquery.Create(self);
   adoquery1.Connection:=adoconnection1;
   adodatasource1:=tdatasource.Create(self);
   with adoquery1 do
   begin
      close;
      sql.Clear;
      sql.Add('select * from 请购单 where 日期>=:startdate and 日期<=:enddate');
      parameters[0].Value:=edit1.Text;
      parameters[1].Value:=edit2.Text;
      open;
   end;
   adodatasource1.DataSet:=adoquery1;
except
   adoquery1.Free;
   adodatasource1.Free;
   adoconnection1.Free;
end;
try
   form1:=tform1.Create(application);
   form1.ShowModal;
   form1.DBGrid1.DataSource:=adodatasource1;
   form1.DBGrid1.Columns[0].FieldName:='请购单号';
   form1.DBGrid1.Columns[1].FieldName:='日期';
   form1.DBGrid1.Columns[0].FieldName:='请购人';
   form1.DBGrid1.Columns[0].FieldName:='备注';
   form1.DBGrid1.Columns[0].FieldName:='状态';
except
   form1.Free;
end;
end;