Most likely i am overlooking something very simple, i am trying to archive a past entry into a new table then update the past entry to the current one, the archiving works correctly but when i update the old entry, it updates the record but also creates a new entry in the table with some of the same values but with a different primary key of 0. This is what the code looks like, any help would be greatly appreciated.
Dim Db As Database
Dim RstPermitYear As Recordset
Dim RstPermit As Recordset
Set Db = CurrentDb
Set RstPermit = Db.OpenRecordset("MotorcyclePermit Query", dbOpenDynaset)
RstPermit.FindFirst "[RenewalID] = " & Forms!NewRenewal!RenewalID
If IsNull(McPermitNumber Or McPermitYear) Then
MsgBox "Please Enter Permit Number and Permit Year", , "Missing Field"
GoTo Exit_OkButton_Click
End If
With RstPermit
.FindFirst "[RenewalID] = " & Forms!NewRenewal!RenewalID
If .NoMatch = True Then
.AddNew
!RenewalID = Forms!NewRenewal!RenewalID
!StaffID = Forms!NewRenewal!StaffID
!McPermitYear = McPermitYear
!McPermitNumber = McPermitNumber
!McLicNumber = McLicNumber
.Update
GoTo Exit_OkButton_Click
Else
Set RstPermitYear = Db.OpenRecordset("MotorcyclePermitYear", dbOpenDynaset)
RstPermitYear.AddNew
RstPermitYear!RenewalID = Forms!NewRenewal!RenewalID
RstPermitYear!StaffID = Forms!NewRenewal!StaffID
RstPermitYear!McPermitYear = RstPermit!McPermitYear
RstPermitYear!McPermitNumber = RstPermit!McPermitNumber
RstPermitYear.Update
.Edit
!McPermitYear = McPermitYear
!McPermitNumber = McPermitNumber
!McLicNumber = McLicNumber
.Update
End If
End With
Dim Db As Database
Dim RstPermitYear As Recordset
Dim RstPermit As Recordset
Set Db = CurrentDb
Set RstPermit = Db.OpenRecordset("MotorcyclePermit Query", dbOpenDynaset)
RstPermit.FindFirst "[RenewalID] = " & Forms!NewRenewal!RenewalID
If IsNull(McPermitNumber Or McPermitYear) Then
MsgBox "Please Enter Permit Number and Permit Year", , "Missing Field"
GoTo Exit_OkButton_Click
End If
With RstPermit
.FindFirst "[RenewalID] = " & Forms!NewRenewal!RenewalID
If .NoMatch = True Then
.AddNew
!RenewalID = Forms!NewRenewal!RenewalID
!StaffID = Forms!NewRenewal!StaffID
!McPermitYear = McPermitYear
!McPermitNumber = McPermitNumber
!McLicNumber = McLicNumber
.Update
GoTo Exit_OkButton_Click
Else
Set RstPermitYear = Db.OpenRecordset("MotorcyclePermitYear", dbOpenDynaset)
RstPermitYear.AddNew
RstPermitYear!RenewalID = Forms!NewRenewal!RenewalID
RstPermitYear!StaffID = Forms!NewRenewal!StaffID
RstPermitYear!McPermitYear = RstPermit!McPermitYear
RstPermitYear!McPermitNumber = RstPermit!McPermitNumber
RstPermitYear.Update
.Edit
!McPermitYear = McPermitYear
!McPermitNumber = McPermitNumber
!McLicNumber = McLicNumber
.Update
End If
End With