In order for this site to work correctly, and for us to improve the site, we need to store a small file (called a cookie) on your computer.
By continuing to use this website, you agree to our cookies and privacy policy.
  
Home page Home page Home page Home page
Pixel
Pixel Header R1 C1 Pixel
Pixel Header R2 C1 Pixel
Pixel Header R3 C1 Pixel
Pixel

What Happens At Logon

Recently when setting up a new user for an Account, a user nominated a subroutine as the RESTART Code and Command. The system hung (or to be more precise, recursively called the RESTART Code and Command ad infinitum). This prompted an investigation into the exact sequence of events at logon as an account and as a user. The Logic Flow could be represented by the following Pseudo Code

  If Logging in as Account
     If LOGON verb is specified in Account Record in System File then
       Run LOGON Verb
     else
       If a Voc entry exists with same name as @ACCOUNT then
          Run @ACCOUNT Voc Entry
       else
          If a Voc entry exists called LOGON then
            Run LOGON Voc Entry
       end
     end
  else
     If Logging in as User
       If LOGON verb is specified in User Record in System File then
          Run LOGON Verb
       else
          If a Voc entry exists with same name as @USERNAME then
            Run @USERNAME Voc Entry
       else
          If a Voc entry exists with same name as @ACCOUNT then
            Run @ACCOUNT Voc Entry
          else
            If a Voc entry exists called LOGON then
               Run LOGON Voc Entry
          end
       end
     end
  end
  If a Restart Code and Command is specified in User/Account record then
     Loop
       Run Restart Code and Command
     Repeat
  else
     Loop
       Begin Case
          Case Default System Mode = "M"
            If Default System Menu (DSM) then Call DSM else Call Main
          Case Default System Mode = "S"
            Call Interactive SQL Window
          Case 1
            Call TCL
       End Case
     Repeat
  end
(Volume 2, Issue 10, Page 5)
Pixel
Pixel Footer R1 C1 Pixel
Pixel
Pixel
Pixel