The code below matches machine numbers from two diff tables, after it finds a match I want it to compare if the time difference, if less than 60 seconds and if the Transaction = 7 or 8 or 9 or 10. If all the criteria is met then move the records to another table. For some reason it is matching the machine number but not matching the time. Please help
Private Sub Command5_DblClick(Cancel As Integer)
On Error GoTo error_Handling
Dim db As Database
Dim rst As Recordset
Dim rstOpen As Recordset
Dim rstFirst As Recordset
Dim rstExcept As Recordset
Dim rstSecond As Recordset
Dim intAnswer As Integer
Dim trap_error As Integer
intAnswer = MsgBox(" Did you Run the 2 Bart Report ?", vbYesNo)
If intAnswer = vbNo Then
MsgBox " Process Terminated. . GO TO Bart and Run Auxil2 and AuxilOpen , Thank You"
DoCmd.CancelEvent
Else
Set db = CurrentDb
Set rst = db.OpenRecordset("auxil1", dbOpenDynaset)
Set rstOpen = db.OpenRecordset("Auxil_Logic_Open"![Wink ;) ;)](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Set rstFirst = db.OpenRecordset("table6"![Wink ;) ;)](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Set rstExcept = db.OpenRecordset("tableExcept"![Wink ;) ;)](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Set rstSecond = db.OpenRecordset("table789"![Wink ;) ;)](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
error_Handling:
If Err = 3021 Then
trap_error = MsgBox(" The tables maybe empty!!, OR No Match found ", vbOKOnly, "Custom Error Handler"![Wink ;) ;)](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
If trap_error = vbOK Then
Exit Sub
Else
End If
End If
rstOpen.MoveFirst
rst.MoveFirst
Do While Not rst.EOF
rst.FindFirst "Number=" rstOpen!Number
If Not rstOpen.NoMatch
If rst!Trans_Number = 7 Or 8 Or 9 Or 10 And (DateDiff("s", rst!Tx_Time, rstOpen!Tx_Time) < 10 Then
With rstSecond
.AddNew
!Number = rstOpen!Number
!Denom = rstOpen!Denom
!Location = rstOpen!Location
!Emp_Name = rstOpen!Emp_Name
!Tx_Date = rstOpen!Tx_Date
!Tx_Time = rstOpen!Tx_Time
!Trans_Number = rstOpen!Trans_Number
!Trans_Desc = rstOpen!Trans_Desc
.Update
End With
With rstSecond
.AddNew
!Number = rst!Number
!Denom = rst!Denom
!Location = rst!Location
!Emp_Name = rst!Emp_Name
!Tx_Date = rst!Tx_Date
!Tx_Time = rst!Tx_Time
!Trans_Number = rst!Trans_Number
!Trans_Desc = rst!Trans_Desc
.Update
End With
rst.Delete
rstOpen.Delete
End If
rstOpen.MoveNext
Loop
MsgBox "PROCESS DONE , Thank you "
End If
Private Sub Command5_DblClick(Cancel As Integer)
On Error GoTo error_Handling
Dim db As Database
Dim rst As Recordset
Dim rstOpen As Recordset
Dim rstFirst As Recordset
Dim rstExcept As Recordset
Dim rstSecond As Recordset
Dim intAnswer As Integer
Dim trap_error As Integer
intAnswer = MsgBox(" Did you Run the 2 Bart Report ?", vbYesNo)
If intAnswer = vbNo Then
MsgBox " Process Terminated. . GO TO Bart and Run Auxil2 and AuxilOpen , Thank You"
DoCmd.CancelEvent
Else
Set db = CurrentDb
Set rst = db.OpenRecordset("auxil1", dbOpenDynaset)
Set rstOpen = db.OpenRecordset("Auxil_Logic_Open"
Set rstFirst = db.OpenRecordset("table6"
Set rstExcept = db.OpenRecordset("tableExcept"
Set rstSecond = db.OpenRecordset("table789"
error_Handling:
If Err = 3021 Then
trap_error = MsgBox(" The tables maybe empty!!, OR No Match found ", vbOKOnly, "Custom Error Handler"
If trap_error = vbOK Then
Exit Sub
Else
End If
End If
rstOpen.MoveFirst
rst.MoveFirst
Do While Not rst.EOF
rst.FindFirst "Number=" rstOpen!Number
If Not rstOpen.NoMatch
If rst!Trans_Number = 7 Or 8 Or 9 Or 10 And (DateDiff("s", rst!Tx_Time, rstOpen!Tx_Time) < 10 Then
With rstSecond
.AddNew
!Number = rstOpen!Number
!Denom = rstOpen!Denom
!Location = rstOpen!Location
!Emp_Name = rstOpen!Emp_Name
!Tx_Date = rstOpen!Tx_Date
!Tx_Time = rstOpen!Tx_Time
!Trans_Number = rstOpen!Trans_Number
!Trans_Desc = rstOpen!Trans_Desc
.Update
End With
With rstSecond
.AddNew
!Number = rst!Number
!Denom = rst!Denom
!Location = rst!Location
!Emp_Name = rst!Emp_Name
!Tx_Date = rst!Tx_Date
!Tx_Time = rst!Tx_Time
!Trans_Number = rst!Trans_Number
!Trans_Desc = rst!Trans_Desc
.Update
End With
rst.Delete
rstOpen.Delete
End If
rstOpen.MoveNext
Loop
MsgBox "PROCESS DONE , Thank you "
End If