Question : Run-time error 3021 "Either BOF or EOF is true, or the current record has been deleted.


i am trying to move records from one database table to another database table ( But same structure in both table )

code is attached
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
''''''''''Connection For Mover.MDB file for transfering data from Trant.MDb to Mover.MDB
    If RecvKKL_Cnn.State = 1 Then RecvKKL_Cnn.Close
        RecvKKL_Cnn.Open "Provider=Microsoft.Jet.OLEDB.3.51;Data Source=" & App.Path & "\Mover.mdb;Jet OLEDB:Database Password=xxxxxxxx"


    If RecvLCL.State = 1 Then RecvLCL.Close
        RecvLCL.Open "select * from B_Detail WHERE LsNo = " & Text1(18).text & " and Check = 1", con, adOpenKeyset, adLockOptimistic
        
    If RecvKKL.State = 1 Then RecvKKL.Close
        RecvKKL.Open "Select * from B_Detail", RecvKKL_Cnn, adOpenKeyset, adLockOptimistic
        
        If RecvLCL.RecordCount > 0 Then
        
            While Not RecvLCL.EOF
                
                RecvKKL!bno = RecvLCL!bno
                RecvKKL!Mode = RecvLCL!Mode
                RecvKKL!bdate = RecvLCL!bdate
                
                RecvLCL.MoveNext
            Wend
        End If

Answer : Run-time error 3021 "Either BOF or EOF is true, or the current record has been deleted.

I think you need to add a new record each time, and then update it before adding the next one.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
''''''''''Connection For Mover.MDB file for transfering data from Trant.MDb to Mover.MDB
    If RecvKKL_Cnn.State = 1 Then RecvKKL_Cnn.Close
        RecvKKL_Cnn.Open "Provider=Microsoft.Jet.OLEDB.3.51;Data Source=" & App.Path & "\Mover.mdb;Jet OLEDB:Database Password=xxxxxxxx"


    If RecvLCL.State = 1 Then RecvLCL.Close
        RecvLCL.Open "select * from B_Detail WHERE LsNo = " & Text1(18).Text & " and Check = 1", con, adOpenKeyset, adLockOptimistic
        
    If RecvKKL.State = 1 Then RecvKKL.Close
        RecvKKL.Open "Select * from B_Detail", RecvKKL_Cnn, adOpenKeyset, adLockOptimistic
        
        If RecvLCL.RecordCount > 0 Then
        
            While Not RecvLCL.EOF
                RecvKKL.AddNew '<---------
                RecvKKL!bno = RecvLCL!bno
                RecvKKL!Mode = RecvLCL!Mode
                RecvKKL!bdate = RecvLCL!bdate
                RecvKKL.Update '<----------
                RecvLCL.MoveNext
            Wend
Random Solutions  
 
programming4us programming4us