Private Sub sysNetworkNumber_BeforeUpdate(Cancel As Integer)
'declared variables
Dim PrevSysConID, SndPrevSysConID As Long, sysHop2 As Integer
If CurrentProject.AllForms("frmSearchSchools").IsLoaded Then
If Me.sysNetworkNumber < 0 Or Me.sysNetworkNumber > 63 Then
Beep
Forms!frmSearchSchools!lblMessage2.Caption = "Network Number is out of range, the Network Number must be greater than or equal to 0 or less than or equal to 63! "
Cancel = True
Me!sysNetworkNumber.Undo
Forms!frmSearchSchools!cmdUpdateRecord.Enabled = False
Else
Forms!frmSearchSchools!cmdUpdateRecord.Enabled = True
Forms!frmSearchSchools!lblMessage2.Caption = ""
End If
sysHop1 = DLookup("[hpHop1]", "tblHoppingPatterns", "[hpNetworkID] = " _
& [Forms]![frmSearchSchools]![frmSubSystem]![sysNetworkNumber])
'Calculates hop spacing for an existing account
sysHopSpacing = Abs([sysHop1] - DLookup("[sysHop1]", "tblSystemConfiguration", "[sysAccountID]=" & _
[Forms]![frmSearchSchools]![accAccountID] & " And [sysSystemConfigID]=" & Nz(DMax("[sysSystemConfigID]", "tblSystemConfiguration", "[sysAccountID]=" & _
[Forms]![frmSearchSchools]![accAccountID] & " And [sysSystemConfigID] <" & [sysSystemConfigID]), 0)))
If Me.sysHopSpacing < 4 And Me.sysHopSpacing > 0 Then
Beep
If MsgBox("The hop spacing is less than 4, please select another network number. Do you want to view the hopping list? ", _
vbYesNo + vbQuestion, "Select Another Network Number!") = vbYes Then
DoCmd.OpenForm "frmFrequencyList"
End If
Cancel = True
Me.sysNetworkNumber.Undo
Forms!frmSearchSchools!lblMessageHop2.Caption = "Hop spacing is less than 4, please select another network number! "
Forms!frmSearchSchools!cmdUpdateRecord.Enabled = False
Else
Forms!frmSearchSchools!cmdUpdateRecord.Enabled = True
Forms!frmSearchSchools!lblMessageHop2.Caption = ""
End If
Else
If Me.sysNetworkNumber < 0 Or Me.sysNetworkNumber > 63 Then
Beep
Forms!frmTempestCoordination!lblMessage.Caption = "Network Number is out of range, the Network Number must be greater than or equal to 0 or less than or equal to 63! "
Cancel = True
Me!sysNetworkNumber.Undo
Forms!frmTempestCoordination!cmdAddNew.Enabled = False
Else
Forms!frmTempestCoordination!cmdAddNew.Enabled = True
Forms!frmTempestCoordination!lblMessage.Caption = ""
End If
sysHop1 = DLookup("[hpHop1]", "tblHoppingPatterns", "[hpNetworkID] = " _
& [Forms]![frmTempestCoordination]![frmSubSystem]![sysNetworkNumber])
'calculates hop spacing for a new account
sysHopSpacing = Abs([sysHop1] - DLookup("[sysHop1]", "tblSystemConfiguration", "[sysAccountID]=" & _
Forms!frmTempestCoordination!accAccountID & " And [sysSystemConfigID]=" & Nz(DMax("[sysSystemConfigID]", "tblSystemConfiguration", "[sysSystemConfigID] <" & Me.sysSystemConfigID), 0)))
'previous record
PrevSysConID = Nz(DMax("[sysSystemConfigID]", "tblSystemConfiguration", "[sysAccountID]=" & _
Forms!frmTempestCoordination!accAccountID & " And [sysSystemConfigID] <" & [sysSystemConfigID]), 0)
'next previous record
SndPrevSysConID = Nz(DMax("[sysSystemConfigID]", "tblSystemConfiguration", "[sysAccountID]=" & _
Forms!frmTempestCoordination!accAccountID & " And [sysSystemConfigID] <" & PrevSysConID), 0)
'3rd network subtracted from the first
sysHop2 = Abs([sysHop1] - Nz(DLookup("[sysHop1]", "tblSystemConfiguration", "[sysAccountID]=" & _
Forms!frmTempestCoordination!accAccountID & " And [sysSystemConfigID]=" & SndPrevSysConID), 0))
If Me.sysHopSpacing < 4 And Me.sysHopSpacing > 0 Then
Beep
If MsgBox("The hop spacing is less than 4, please select another network number. Do you want to view the hopping list? ", _
vbYesNo + vbQuestion, "Select Another Network Number!") = vbYes Then
DoCmd.OpenForm "frmFrequencyList"
End If
Cancel = True
Me.sysNetworkNumber.Undo
Forms!frmTempestCoordination!lblMessageHop.Caption = "Hop spacing is less than 4, please select another network number! "
Forms!frmTempestCoordination!cmdAddNew.Enabled = False
Else
Forms!frmTempestCoordination!cmdAddNew.Enabled = True
Forms!frmTempestCoordination!lblMessageHop.Caption = ""
End If
End If