Display Users Logged in
Administrators typically use this program to identify who is accessing the system and which programs are currently running.
Exploring
Things you can do in this program include:
-
View detailed information about operators currently in the system
-
Manually log users out of the system
-
Manually log users out of the system and simultaneously terminate their associated SYSPRO processes
-
Determine the number of SYSPRO user licenses currently consumed out of the total number of licensed users
-
Display programs currently in use throughout the system for all operators
Extended functionality managing users and SYSPRO processes is included in the View Users program, but you can only access this once you have logged into SYSPRO.
This program can't be run standalone.
- accessed from the View Users function of the SYSPRO login dialog when logging in as an administrator
An unknown process is one where a Windows SYSPRO process continues to run on the Application Server even after the application has closed (i.e. the PID is no longer associated with the current user).
Terminating an unknown process typically does no harm (i.e. although the process is running on the server, the user is not actually using SYSPRO).
Elevated refers to running a program (e.g., SYSPRO) with elevated permissions as a Windows administrator. This can be done by right-clicking on the program and selecting Run as administrator from the context menu. Programs loaded by a service (e.g., Avanti Initialization Service or SYSPRO 8 Communications Service) always run elevated.
Starting
-
You can only access this program if your operator code belongs to an operator group with System administrator rights enabled.
The following configuration options in SYSPRO may affect processing within this program or feature, including whether certain fields and options are accessible.
Solving
One of these warnings is displayed when you attempt to log out an operator from SYSPRO.
Prematurely logging out an operator who is using SYSPRO can cause data corruption.
Ensure that the user you are logging out is not capturing critical data, completing a period end or currently working on important programs.
A user who has been logged out cannot load a new program or access primary functions within the main SYSPRO posting programs.
When logging out a user, the following occurs:
-
The user is removed from the SYSPRO user file (AdmCurrentUsers).
-
The LoggedInStatus flag of the AdmOperator table is updated, which ensures that the concurrent number of users is decreased (i.e. license consumption is updated correctly).
-
Details relating to the terminated user and its associated Microsoft SQL Server process are recorded in the AdmSpidHistory table.
-
Details relating to the terminated user and its associated Microsoft Windows process are recorded in the AdmPidHistory table.
If the Logout function ends process option is disabled when logging out a user, then the forced logout results in the user being logged out of SYSPRO without terminating the server-side process.
The client session remains active so that the user can complete the current transaction. However, if the user attempts to load a new program, a system message notifies them that they have been logged out by an administrator.
Any related processes are not terminated (i.e. the process remains active on the application server).
If the Logout function ends process option is enabled when logging out a user, then the following occurs:
-
Job logging is updated accordingly (if the Job logging required setup option is enabled).
-
The associated server-side executable process is terminated.
-
Any open transactions are rolled back.
-
Resources are returned to the server operating system.
The forced logout results in the user's client session remaining active, but all related processes are terminated. If the user attempts to complete a transaction or load a new program, a system message notifies them that they have been logged out by an administrator.
The following programs let you kill the associated SYSPRO process at the same time as logging out the user:
-
View Users (Program List > Utilities)
-
Display Users Logged in (accessed from the View Users function of the SYSPRO login dialog when logging in as an administrator).
Ensure that the Logout function ends process option (available from the Options menu) is enabled before selecting to log out the user. This ensures that any process associated with the user is also terminated, thereby avoiding an unknown process situation.
When performing this function, details relating to the terminated user and its associated process are recorded in the AdmSpidHistory table.
If you don't kill the associated process when logging out a user, an unknown process can occur.
You can terminate these unknown processes by using one of the following programs:
-
View Users (Program List > Utilities)
Use the End All Unknown Processes function from the Processes pane.
-
Windows Task Manager (Program List > Utilities)
Use either the End Process or End All Unknown Processes function.
You can view information about an unknown process from the Unknown Process Details pane of the View Users program. This provides details of processes linked to users who have been logged out, according to the records of the AdmSpidHistory table.
Processes cannot be terminated when logging out a user in the following scenarios:
-
The administrator runs the Desktop UI standalone (elevated) but the operator runs the Desktop UI in a client-server environment.
Refer to Terminology for a detailed explanation of elevated.This is because a process that is not running elevated cannot see the details of a process that is running elevated. -
The administrator runs the Desktop UI standalone (elevated) but the operator runs the Desktop UI in a client-server environment.
This is because a 32-bit process (Desktop UI standalone, elevated) cannot read the details of a 64-bit process (the client-server environment in this scenario). -
The administrator runs the Desktop UI standalone (not elevated) but the operator runs the Web UI.
This is because the operator process was started by the Avanti Initialization Service (it is therefore elevated) and the administrator is not running SYSPRO elevated. -
The administrator runs the Web UI but the operator runs the Desktop UI in a client-server environment.
This is because a 32-bit process (Web UI) cannot read the details of a 64-bit process (Desktop UI in a client-server environment in this scenario). -
The administrator runs the Desktop UI standalone (not elevated) but the operator runs the Desktop UI in a client-server environment.
This is because a 32-bit process (standalone) cannot read the details of a 64-bit process (Desktop UI in a client-server environment in this scenario).
The list of processes shown in the View Users program will differ depending on how you run SYSPRO, i.e., Desktop UI or Web UI, standalone or client-server, etc. when you view All processes. This is because:
-
Non-elevated processes cannot see elevated processes.
-
32-bit processes cannot read information about 64-bit processes.
-
Processes running in a container may mask processes running on the host operating system.
SQL locking typically occurs in systems with a high number of concurrent users where multiple processes are trying to exclusively access the same table, record, or page in Microsoft SQL Server at the same time. This can stall business operations for a significant amount of time.
The SQL Blocking Details pane of the View Users program displays information regarding SYSPRO processes that are causing locks as well as those being blocked by other processes for the SQL Session ID created by each logged-in SYSPRO user.
Each operator in SYSPRO is associated with a user file that reflects the state of that operator (e.g. the resources that are open by the operator).
If a network-related problem occurs (or the client computer is powered off prematurely) then this is generally detected by the application server process which shuts itself down gracefully. In some cases, however, the process on the application server continues as a runaway process.
A runaway process can consume excessive server operating system resources and slow down applications like SYSPRO.
Although ending a runaway process should alleviate the slow response time on the server, this is not a long term solution (i.e. you are dealing with the symptom and not the cause).
If a server is subjected to runaway processes on a regular basis, we strongly advise that you establish the cause of the runaway processes.
You can use SYSPRO's Client-Server Diagnostic program to establish which operators are frequently experiencing connectivity problems.
The SYSPRO 8 Communications Service cleans up the runaway processes on a per user basis.
For example:
If user-A is disconnected for some reason and the corresponding SYSPRO process is left running on the server, then the process is only cleared when user-A reconnects.
You can view the number of SYSPRO user licenses currently consumed out of the total number of licensed users by selecting the Refresh View function. The information is then displayed in the window title.
Disable the Allow concurrent use of this operator option in the Operator Maintenance program (SYSPRO Ribbon bar > Setup > Operators) to prevent an operator from consuming additional licenses when logging in to SYSPRO more than once.
The primary instance of any SYSPRO logon is the one that owns all the spawned SYSPRO instances. To avoid additional SYSPRO licenses being consumed, you must first log out of a spawned instance before logging out of a primary instance.
For example:
-
Log in to an instance of SYSPRO as your ADMIN operator and run the View Users program.
-
Log in to a second instance of SYSPRO with a different operator (e.g. TEST) and run any program.
-
Refresh the details in the View Users program on the ADMIN instance of SYSPRO.
The following instances are displayed:
- ADMIN
- TEST
-
Against your TEST instance, launch a new instance of the TEST operator by launching a program from the menu behind the currently running application.
This creates a new instance of SYSPRO for the operator TEST.
-
Refresh the details in the View Users program on the ADMIN instance of SYSPRO.
The following instances are displayed:
- ADMIN
- TEST
- TEST (1)
Note that only two licenses have been consumed.
-
Return to your first TEST instance and close the first application you opened and then close SYSPRO.
-
Refresh the details in the View Users program on the ADMIN instance of SYSPRO.
The following instances are displayed:
- ADMIN
- TEST (1)
-
Log in to a new instance of SYSPRO using operator TEST.
-
Refresh the details in the View Users program on the ADMIN instance of SYSPRO.
The following instances are displayed:
- ADMIN
- TEST (1)
- TEST
Note that three licenses are being consumed.
The reason for this is that the spawned instance of TEST (i.e. TEST1) was not closed before TEST was closed.
Using
-
Press Ctrl+F1 within a listview or form to view the Shortcut Keys available.
Referencing
Option | Description |
---|---|
Find |
This lets you search for programs based on the data files currently in use. After searching for a Single file code the program retains the criteria of the search. To clear the previous criteria, you need to search for All file codes. Before selecting this option, select the Refresh View function to ensure that information returned for the search is correct. |
Zoom |
This lets you view the files used by the program currently highlighted in the listview. This option is only available if the Program Details option is selected from the View menu. |
User Summary |
This is selected by default and displays information in the listview about the users currently logged in (e.g. Login time, Login date and Operator name). |
Program Details |
This displays information regarding the users currently logged in including the list of programs that each user is currently running. The Login time column refers to the time the user logged in for the current session and not when the program was accessed. |
Matched Programs |
If a file code is specified, then this lets you re-display the list of programs matching the file code specified using the Find option. |
Logout function ends process |
This lets you kill associated processes when logging out users. It resolves the issue of unknown SYSPRO processes on the application server. This option is disabled by default and enabling it only applies for the current run of the program. |
Refresh View |
This lets you refresh the information displayed in the listview. We recommend that you select this before using any functionality within the program. |
Who am I |
This highlights the workstation's active user (useful if several operators are using the same login). |
Logout User |
This lets you log out the currently highlighted operator. If the Logout function ends process option is enabled, this action also kills the SYSPRO process associated with the operator. Logged out users can't load a new program or access primary functions within the main SYSPRO posting programs.
Prematurely logging out an operator who is using SYSPRO can cause data corruption. The ability to log out users is dependent on the Allowed to logout users option of the Operator Groups program being enabled against your primary operator group. |
Logout All Users |
This lets you log out all operators currently logged into SYSPRO. If the Logout function ends process option is enabled, this action also kills the SYSPRO process associated with the operator. Logged out users can't load a new program or access primary functions within the main SYSPRO posting programs.
Prematurely logging out an operator who is using SYSPRO can cause data corruption. The ability to log out users is dependent on the Allowed to logout users option of the Operator Groups program being enabled against your primary operator group. |
Column | Description |
---|---|
Operator/Operator name |
This indicates the user's operator code and name. |
Company |
This indicates the company in which the operator is logged into. |
Login time/Login date |
This indicates the date and/or time that the operator logged into the system. |
Program description |
This indicates each program that the operator is currently running. |
Client/Server ID |
This indicates the identity code of the client machine. |
PID |
This indicates the process identity number. If you run the SYSPRO.EXE on your server, the message is displayed in this column. This is because you don't have full scope by default, which means that the Display Users Logged in program cannot find client instances of the SYSPRO.EXE. If you run the SYSPROClient.EXE from a client machine, then access is through the SYSPRO services which have full scope to all running processes on the server and all PIDs can be seen. |
Operator Location |
This indicates the physical location defined against the operator. |
Computer name |
This indicates the name of the computer associated with the operator. |
CMS only user |
This indicates the operator is only licensed to use the Contact Management System features of SYSPRO. |
Last activity |
This indicates the amount of time that the operator has been inactive in SYSPRO. This is calculated from when the last client session was started and not since the operator's session actually performed any activity. Elapsed time is calculated using the following:
In a WCF environment, this value is still not a true reflection of the last time the user did any work on the active session. This is because the WCF service updates the last activity date and time each time a new WCF SYSPRO client is launched, when it detects if the client session is still active. |
Machine name |
This indicates the operator's machine name. |
Client version |
This indicates the SYSPRO version on the client machine. This is represented by the version of the SYSPROCommsInterop40.dll in the client base directory. |
Session type |
This indicates the platform through which the user logged in:
|
Copyright © 2024 SYSPRO PTY Ltd.