使用vb6.0中的数据环境时,设计了一个命令,返回的是数据集,假设为rstable
然后在窗体上定义了一个按钮,事件触发如下dim rs as adodb.recordset
set rs=rstable
with rs
.addnew
....
end with
可是系统报错:不能在一个已经关闭的对象上进行操作
可是在另一个窗体上同样的语句又能使用?这是不是vb的bug
是不是说明数据环境虽然好用,可是不稳定,还是我在设置上有什么错?
请指点
然后在窗体上定义了一个按钮,事件触发如下dim rs as adodb.recordset
set rs=rstable
with rs
.addnew
....
end with
可是系统报错:不能在一个已经关闭的对象上进行操作
可是在另一个窗体上同样的语句又能使用?这是不是vb的bug
是不是说明数据环境虽然好用,可是不稳定,还是我在设置上有什么错?
请指点
改成dim rs as new adodb.recordset试试
set rs=数据环境名.rstable
with rs
if not (.state and adStateOpen) then rs.open
.addnew
....
end with
GetCatalogItem是deccommand这段代码在类模块中 OrderAccess.OrderModifyPublic Sub GetCatalogItem(rsCatalog As ADODB.Recordset)
deOrderAccess.rsGetCatalogItem.Open
Set rsCatalog = deOrderAccess.rsGetCatalogItem
deOrderAccess.rsGetCatalogItem.Close
End Subform中
Dim oOrderModify As OrderAccess.OrderModify
Dim rsCatalog As ADODB.RecordsetPrivate Sub Form_Load()
Set oOrderModify = New OrderAccess.OrderModify
oOrderModify.GetCatalogItem rsCatalog
rsCatalog.Open
End Sub
set rs=rstable
if rs.state=1 then
with rs
.addnew
....
end with
endif
-----------//主要可能是你的rstable作用域的问题吧