Hi All,
Web technologies work the way where server know almost nothing about where is browser and what is user doing there. Is it active? Is it closed? It is online? Is computer sleeping? We don’t know if there browser does not inform us.
Just for example – if you lost internet connection, should we treat this as online or inactive?
In Acumatica Online/Offline is just a flag in users table. If users logs in, Acumatica rises this flag, if users is not active for some time, Acumatica clears this flag. This flag is automatically managed by Acumatica but in some cases it may be not in the consistency with real users stat.
So unfortunately there is no fully accurate mechanism to find online users.
However I can suggest you a way – Define a Generic Inquiry and Dashboards that finds the active users based on the last activity.
Lets do the following:
- Define the criteria by yourself – what is online users. For example define that online user is user who had activity within past 20 mins.
- Than create a GI where you select users, join LoginTrace table, group by username. LoginTrace table stores the activities from users – Login, Screen opening and so on.
- Calculate the Age as a formula between last activity time and current time.
- Add filter by Age using your 20 mins rule.
Here you you can find Inquiry and Results:
This will approximately will give you number on online users. However it may be not 100% accurate if user does all work on one screen. Than you may try to use other tables like Performance Monitoring or Audit History.
Generic Inquiry Example:
Hope it helps!
Thanks Sergey, these blogs are always much appreciated!