ADODataSet2 : cannot perform this operation on a closed dataset.procedure TForm2.DBGridEh1DblClick(Sender: TObject);
begin
ADODataSet2.Active:=False;
ADODataSet2.Parameters.ParamByName('CNo').Value:= ADODataSet1.FieldByName'CNo').Value; //说ADODataSet2关无法运行这行
ADODataSet2.Active:=True;
ADODataSet2.Open;
ADODataSet2.Edit;
Form1.ShowModal;
end;
不过程序仍然能运行,我原来也这样;
begin
ADODataSet2.Active:=False;
ADODataSet2.Parameters.ParamByName('CNo').Value:= ADODataSet1.FieldByName'CNo').Value; //说ADODataSet2关无法运行这行
ADODataSet2.Active:=True;
ADODataSet2.Open;
ADODataSet2.Edit;
Form1.ShowModal;
end;
不过程序仍然能运行,我原来也这样;
解决方案 »
- 请教各位高手???
- 一个关于MDI多窗体的问题。急用!
- 如何将一个表中的一些记录拷贝到另一个表中?
- 求救!
- 年末升级了,第三次放分,忍痛再放200分
- 想转行做游戏开发,真的喔
- 一个关于超级链接的问题-----请教各位大虾
- 如何把纯文本文件导入到SQL SERVER数据库的表中
- 可以在ListBox中高亮度显示文本?
- 怎么用左dbimage无法显示ACCESS97数据库中的BMP图片?
- 在DELPHIBOX上下载了一个自制安装文件的源码,上面有讲制作资源文件RES,怎么个做发?
- 求关于 DBgridEH3 控件 的下位选择功能的设置 (图) ??????????????????????????????
晕,是在这句前面加上open
同志
后面
got it?
ADODataSet1.open;
ADODataSet2.open;
ADODataSet2.Parameters.ParamByName('CNo').Value:=ADODataSet1.FieldByName'CNo').Value;
ADODataSet1.open;
ADODataSet2.open;
还是不行啊
这句就不起作用了,
ADODataSet2.Parameters.ParamByName('CNo').Value:=ADODataSet1.FieldByName'CNo').Value;是不是delphi7 的bug阿,晕....
ADODataSet1.open;
ADODataSet2.Parameters.ParamByName('CNo').Value:=ADODataSet1.FieldByName'CNo').Value;
ADODataSet2.open;
begin
ADODataSet1.open;
ADODataSet2.close;
Adodataset2.commandText:='select * from report where CNo = :CNo';
ADODataSet2.Parameters.ParamByName('CNo').Value:=
ADODataSet1.FieldByName('CNo').Value;
ADODataSet2.Open;
ADODataSet2.Edit;
Form1.ShowModal;
end;
用 if ADODataSet1.RecordCount > 0 then
或者 if not ADODataSet1.IsEmpty then
ADODataSet2.Parameters.ParamByName('CNo').Value:= ADODataSet1.FieldByName'CNo').Value; //说ADODataSet2关无法运行这行
ADODataSet2.Active:=True;
ADODataSet2.Open;
ADODataSet2.Edit;
Form1.ShowModal;
先看你写的代码 ,其实很简单为什么会报错:在数据集关闭的时候无法操作
问题显而意见,你是否将ADODATASET1打开