How System Locking works

1 minute read time.

Locking the System before carrying out maintence tasks can avoid a lot of pain and hassle for System Administrator. It is tempting to add a component or even perform a meta data refresh without thinking of the consequences for any users currently logged on to the system.

But you can easily image the error messages that would occur if a user attempted to access a screen based on a view which the maintence action had just dropped and was rebuilding.

After the locking process is complete, users still trying to use the system will be logged out when they attempt to click a button that submitts data to the server.

The System Admin account should always be able to log on. The system 'lock' is recorded in the custom_sysparams table.

[code language="sql"]
select * from custom_sysparams where parm_name like '%syslocked%'
[/code]

The two parameters are

  • SysLockedByUsrID. This holds the logon name of the user that locked the system e.g. Admin
  • SysLockedTime This records when the system was locked.

The user that locked the system should always be able to log back on even if the system has timed out and needs to start up again.

If the system is 'unlocked' then the SysLockedByUsrID will be set to null.