ADODataSet2 : cannot perform this operation on a closed dataset.procedure TForm2.DBGridEh1DblClick(Sender: TObject);
begin
ADODataSet2.Active:=False;
ADODataSet2.Parameters.ParamByName('CNo').Value:= //说ADODataSet2关无法运行这行
ADODataSet1.FieldByName('CNo').Value;
ADODataSet2.Active:=True;
ADODataSet2.Open;
ADODataSet2.Edit;
Form1.ShowModal;
end;
begin
ADODataSet2.Active:=False;
ADODataSet2.Parameters.ParamByName('CNo').Value:= //说ADODataSet2关无法运行这行
ADODataSet1.FieldByName('CNo').Value;
ADODataSet2.Active:=True;
ADODataSet2.Open;
ADODataSet2.Edit;
Form1.ShowModal;
end;
begin
ADODataSet2.Active:=False;
ADODataset2.Parameters.Refresh;
ADODataSet2.Parameters.ParamByName('CNo').Value:= 'abc'; //说ADODataSet2关无法运行这行
ADODataSet1.FieldByName('CNo').Value;
ADODataSet2.Active:=True;
ADODataSet2.Open;
ADODataSet2.Edit;
Form1.ShowModal;
end;
ADODataSet1.FieldByName('CNo').Value; 这两行是同一行的,加了ADODataset2.Parameters.Refresh; 告诉我找不到'CNO'了谢谢
前面加上open
ADODataSet1.FieldByName('CNo').Value;
前面加上 ADODataSet2.Open;也是ADODataSet2 : cannot perform this operation on a closed dataset.并且指向ADODataSet2.Open;那行 晕....
begin
adodataset1.open;
ADODataSet2.close;
Adodataset2.commandText:='....';
ADODataSet2.Parameters.ParamByName('CNo').Value:=ADODataSet1.FieldByName('CNo').Value;
ADODataSet2.Open;
ADODataSet2.Edit;
Form1.ShowModal;
end;
不过程序仍然能运行,我原来也这样;