auto kick (1 Viewer)

RpbertS

Registered User.
Local time
Today, 00:40
Joined
Feb 14, 2000
Messages
93
anyone have a sample dbase showing how to autokick someone if they have been inactive for 10 minutes?

thanks
please send to wallyg135@yahoo.com
 

ElsVanMiert

Registered User.
Local time
Today, 00:40
Joined
Dec 14, 2000
Messages
152
From the ACCESS ONLINE ENCYCLOPEDIA (www.unsoftwareag.com) article M29:

How can I close my application if nobody works with it ?
Specially in multi-user-applications it might be important to close open forms or the application of users that do not work with it for a certain time .

Following a function that has to be integrated in the Timer Event of a permanently open (hidden) form. This function controls the idle time of the application: How long does the focus stay on the same control of the same form. If this time exceeds the IDLEMINUTES constant, then the function fExitApplication is called.

NOTE: The TimerInterval setting indicates how often (in milliseconds) the application checks for user inactivity. A setting of 1000 equals 1 second.
You can remotely log off users in a network environment with PowerUp Solution N2!


Sub Form_Timer()
' IDLEMINUTES determines how much idle time to wait before
' running the IdleTimeDetected subroutine.
Const IDLEMINUTES = 5
Static PrevControlName As String
Static PrevFormName As String
Static ExpiredTime
Dim ActiveFormName As String
Dim ActiveControlName As String
Dim ExpiredMinutes
On Error Resume Next


' Get the active form and control name.
ActiveFormName = Screen.ActiveForm.Name
If Err Then
ActiveFormName = "No Active Form"
Err = 0
End If


ActiveControlName = Screen.ActiveControl.Name
If Err Then
ActiveControlName = "No Active Control"
Err = 0
End If
' Record the current active names and reset ExpiredTime if:
' 1. They have not been recorded yet (code is running
' for the first time).
' 2. The previous names are different than the current ones
' (the user has done something different during the timer
' interval).
If (PrevControlName = "") Or (PrevFormName = "") _
Or (ActiveFormName <> PrevFormName) _
Or (ActiveControlName <> PrevControlName) Then
PrevControlName = ActiveControlName
PrevFormName = ActiveFormName
ExpiredTime = 0


Else
' ...otherwise the user was idle during the time interval, so
' increment the total expired time.
ExpiredTime = ExpiredTime + Me.TimerInterval
End If


' Does the total expired time exceed the IDLEMINUTES?
ExpiredMinutes = (ExpiredTime / 1000) / 60


If ExpiredMinutes >= IDLEMINUTES Then
' ...if so, then reset the expired time to zero...
ExpiredTime = 0
' ...and call the IdleTimeDetected subroutine.
Call fExitApplication
End If
End Sub
 

RpbertS

Registered User.
Local time
Today, 00:40
Joined
Feb 14, 2000
Messages
93
thanks for that link its really good.

I have a problem however.

I set the timer interval in the properties section of the form to 5000 (for testing)
pasted that code into the ontimer event and Iget a sub or function not defined error.

any ideas?

thanks
 

Users who are viewing this thread

Top Bottom