时实错误:3021 ,BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录
怎么解决vb运行中的一个时实错误:3021 ,BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。感谢大家支持!程序如下:
Adodc1.Recordset.MoveFirst
Do While Adodc1.Recordset.EOF = False
Adodc2.RecordSource = "select * from kucunbiao where ylnumber='" & Adodc1.Recordset.Fields("ylnumber") & "'"
Adodc2.Refresh
If Adodc2.Recordset.Fields("amount") - Adodc1.Recordset.Fields("amount") < 0 Then
MsgBox ("编号" + Adodc1.Recordset.Fields("ylnumber") + "的商品库存不足")
Exit Sub
End If
Adodc1.Recordset.MoveNext
Loop
Adodc1.Recordset.MoveFirst
Do While Adodc1.Recordset.EOF = False
Adodc2.RecordSource = "select * from kucunbiao where ylnumber='" & Adodc1.Recordset.Fields("ylnumber") & "'"
Adodc2.Refresh
Adodc2.Recordset.Fields("amount") = Adodc2.Recordset.Fields("amount") - Adodc1.Recordset.Fields("数量")
Adodc2.Recordset.Update
Adodc1.Recordset.MoveNext
Loop
这是商品出库程序,运行时在If Adodc2.Recordset.Fields("amount") - Adodc1.Recordset.Fields("amount") < 0 显示如题问题,请大家帮忙看看,多谢!
[解决办法]
...
Adodc2.Refresh
If Adodc2.Recordset.EOF Then
MsgBox "No such record"
Exit Sub
End If
If Adodc2.Recordset.Fields("amount") - Adodc1.Recordset.Fields("amount") < 0 Then
...