DataMuseum.dk

Presents historical artifacts from the history of:

CR80 Wang WCS documentation floppies

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CR80 Wang WCS documentation floppies

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦9c4069e29⟧ Wang Wps File

    Length: 30011 (0x753b)
    Types: Wang Wps File
    Notes: CPS/SDS/035               
    Names: »2086A «

Derivation

└─⟦a5d18cecd⟧ Bits:30006104 8" Wang WCS floppy, CR 0164A
    └─ ⟦this⟧ »2086A « 

WangText

…1d……00……00……00……00…!…0a……00……00…!…0b…!…0f…!…00…!…01…!…07… …0d… …02… 
…1f……08……1f……0d……1f……86…1                                             …02…           …02…   …02…        

…02…CPS/SDS/035

…02…850601…02……02…
SUPERVISOR VDU
DETAILED DESIGN SPECIFICATION…02…ISSUE 1…02…CAMPS








4.2.2    S̲u̲p̲e̲r̲v̲i̲s̲o̲r̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲(̲S̲F̲C̲O̲)̲

         SFCO Controls the execution of Supervisor Transactions,
         thereby controlling the functional behaviour of SVDIA
         and VODL.

         Control is imposed by issue of commands and reception
         of answers.

         SFCO is controlled by SVCO with respect to if and which
         transactions may be executed. SVCO control is imposed
         by use of commands and answers to commands.



4.2.2.1  F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         The subpackage has the functional responsibilities
         as listed below:

         -   React on SVCO control Commands

         -   Execution of f/c key entered commands

         -   Supervisor command validation

         -   Transaction Sequencing Control

         -   Transaction Accounting

         -   Transaction Interruption 

         -   Sending Request to the CAMPS System

         -   Supervisor Command Execution 

         Refer fig. 4.2.2.1-1 through 4.2.2.l-2





                      Fig. 4.2.2.1-1



                     fig. 4.2.2.1-2 


4.2.2.1.1    S̲F̲C̲O̲ ̲S̲o̲f̲t̲w̲a̲r̲e̲ ̲E̲r̲r̲o̲r̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲ ̲(̲1̲.̲0̲)̲

         a)  Q̲u̲e̲u̲e̲ ̲E̲r̲r̲o̲r̲ ̲R̲e̲p̲o̲r̲t̲i̲n̲g̲ ̲(̲1̲.̲1̲)̲

             Reports to SSC that an unexpected or erroneous
             queue element has been received. 

         b)  I̲n̲t̲e̲r̲n̲a̲l̲ ̲E̲r̲r̲o̲r̲ ̲R̲e̲p̲o̲r̲t̲i̲n̲g̲ ̲1̲.̲2̲)̲

             Reports to SSC that an unexpected (illegal) event
             has occurred during Software execution.



4.2.2.1.2    F̲/̲C̲ ̲K̲e̲y̲ ̲C̲o̲m̲m̲a̲n̲d̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲ ̲(̲2̲.̲0̲)̲

         a)  D̲i̲s̲p̲l̲a̲y̲ ̲E̲r̲r̲o̲r̲ ̲M̲e̲s̲s̲a̲g̲e̲ ̲(̲2̲.̲1̲)̲

             Reads and validates a number entered in the command
             line of the VDU Header Area. If the number is valid
             the corresponding error message is displayed otherwise
             an error message indicating the parameter error
             is displayed. 

         b) D̲i̲s̲p̲l̲a̲y̲ ̲P̲a̲r̲e̲n̲t̲ ̲M̲e̲n̲u̲ ̲(̲2̲.̲2̲)̲

             Fetches the parent Menu of the Menu currently displayed
             and displayes it in the VDU Format  Area. If the
             Menu displayed is the Supervisor Menu (ancestor)
             an error message is displayed in the responseline
             of the VDU Header Area. 

         c) S̲u̲p̲e̲r̲v̲i̲s̲o̲r̲ ̲C̲o̲m̲m̲a̲n̲d̲ ̲E̲x̲e̲c̲u̲t̲i̲o̲n̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲ ̲(̲2̲.̲3̲)̲

             These are the functions for execution of supervisor
             commands identified by command code and command
             parameters. (Refer section 4.2.2.l.4)



4.2.2.1.3    S̲V̲C̲O̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲ ̲(̲3̲.̲0̲)̲

         a)  S̲t̲a̲r̲t̲ ̲S̲F̲C̲O̲ ̲P̲r̲o̲c̲e̲s̲s̲i̲n̲g̲ ̲(̲3̲.̲1̲)̲

             SFCO Software is activated in the normal operation
             mode. This includes display of the Supervisor Menu,
             opening for f/c key input from the VDU Header Area
             and positioning of the Cursor in the command line
             of the VDU Header Area.



             Only Normal Mode Supervisor commands are executed.
             

         b) R̲e̲s̲t̲a̲r̲t̲ ̲S̲F̲C̲O̲ ̲P̲r̲o̲c̲e̲s̲s̲i̲n̲g̲ ̲(̲3̲.̲2̲)̲

             SFCO Software is activated in the restart operation
             mode. This includes display of the SENF Menu applicable
             in restart mode, opening for f/c key input from
             the VDU Header Area and positioning of the cursor
             in the command line of the VDU Header Area. Only
             Restart Mode Supervisor commands are excuted. 

         c) S̲t̲o̲p̲ ̲S̲F̲C̲O̲ ̲P̲r̲o̲c̲e̲s̲s̲i̲n̲g̲.̲ ̲(̲3̲.̲3̲)̲

             The SFCO Software is deactivated. This includes
             clearing of the VDU screen (if possible) and work
             space. After deactivation the SFCO Software will
             await a start or restart command. 

         d)  C̲l̲o̲s̲e̲ ̲S̲F̲C̲O̲ ̲P̲r̲o̲c̲e̲s̲s̲i̲n̲g̲.̲

             The SFCO Software is deactivated. This includes
             clearing of the VDU screen (if possible) and of
             work space. After deactivation SFCO cannot be activated
             again, (i.e. SFCO activation requires initialization
             or restart of the entire SVUP process.)



4.2.2.1.4    S̲u̲p̲e̲r̲v̲i̲s̲o̲r̲ ̲C̲o̲m̲m̲a̲n̲d̲ ̲E̲x̲e̲c̲u̲t̲i̲o̲n̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲ ̲2̲.̲3̲)̲

         a)  S̲u̲p̲e̲r̲v̲i̲s̲o̲r̲ ̲C̲o̲m̲m̲a̲n̲d̲ ̲V̲a̲l̲i̲d̲a̲t̲i̲o̲n̲ ̲(̲2̲.̲3̲.̲l̲)̲

             Reads the Command (Command Code, parameters and
             possible PEC) entered in the commandline of the
             VDU Header Area. Validates the command - this includes:

             1)  Command Code Validation

             2)  Parameter Syntax check, if applicable and 1)
                 above was successfull

             3)  PEC validation, if applicable and if 1) above
                 was successfull

             4)  Semantic check af parameters, if applicable
                 and 1), 2) and 3) above was successfull. 



             If validation is unsuccessfull an appropriate error
             message is displayed, identifying the error or
             in case more than one error was detected the numbers
             of the applicable errormessages are displayed in
             the responseline of the VDU Header Area. 

             On fig. 4.2.2.l-3 the commands for which parameter
             syntax check functions apply are depicted together
             with the relevant parameters. 

             Fig. 4.2.2.l-4 together with fig. 4.2.2.l-5 identifies
             the syntax check functions required. 

         b)  T̲r̲a̲n̲s̲a̲c̲t̲i̲o̲n̲ ̲E̲x̲e̲c̲u̲t̲i̲o̲n̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲ ̲(̲2̲.̲3̲.̲2̲)̲

             These are the functions for execution of transactions.
             The transaction type to be executed is indentified
             through entry of a supervisor command (refer 4.2.2.l.4
             a) above). Display of Menus on command are included
             in these functions as well. 
             Refer 4.2.2.1.5

             These are the functions issuing requests, e.g.:

         c)  S̲e̲n̲d̲ ̲C̲o̲m̲m̲a̲n̲d̲ ̲t̲o̲ ̲C̲A̲M̲P̲S̲ ̲(̲2̲.̲3̲.̲3̲)̲

             These are the functions sending commands to SSC,
             THP, SAR, LOG, SPIP and SCREP.

         d)  E̲x̲e̲c̲u̲t̲e̲ ̲C̲o̲m̲m̲a̲n̲d̲ ̲(̲2̲.̲3̲.̲4̲)̲

             These are the functions for updating of System
             tables and System parameters.


             Fig.4.2.2.1.-3 to fig. 4.2.2.1-5



4.2.2.1.5    T̲r̲a̲n̲s̲a̲c̲t̲i̲o̲n̲ ̲E̲x̲e̲c̲u̲t̲i̲o̲n̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲ ̲(̲2̲.̲3̲.̲2̲)̲

         a)  T̲r̲a̲n̲s̲a̲c̲t̲i̲o̲n̲ ̲A̲c̲c̲o̲u̲n̲t̲i̲n̲g̲ ̲(̲2̲.̲3̲.̲2̲.̲1̲)̲

             These are the functions for transaction accounting
             and logging.
             Refer 4.2.2.1.6

         b)  T̲r̲a̲n̲s̲a̲c̲t̲i̲o̲n̲ ̲S̲e̲q̲u̲e̲n̲c̲e̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲2̲.̲3̲.̲2̲.̲2̲)̲

             These are the functions for controlling the transaction
             in progress with respect to display of correct
             formats in right sequence possibly directed through
             the supervisors use af f/c keys. 
             Refer 4.2.2.1.7

         c)  T̲r̲a̲n̲s̲a̲c̲t̲i̲o̲n̲ ̲i̲n̲t̲e̲r̲u̲p̲t̲i̲o̲n̲s̲ ̲(̲2̲.̲3̲.̲2̲.̲3̲)̲

             These are the functions for interruption of a transaction
             in progress, i.e.  interruption of the transaction
             sequence control. (refer 4.2.2.l.5 b) above)
             Refer 4.2.2.l.8.



4.2.2.l.6    T̲r̲a̲n̲s̲a̲c̲t̲i̲o̲n̲ ̲A̲c̲c̲o̲u̲n̲t̲i̲n̲g̲ ̲(̲2̲.̲3̲.̲2̲.̲1̲)̲

         a)  I̲n̲i̲t̲i̲a̲l̲ ̲L̲O̲G̲ ̲d̲a̲t̲a̲ ̲c̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲(̲2̲.̲3̲.̲2̲.̲l̲.̲l̲)̲

             Assigns a transaction serial number and fetches
             the current time.

         b)  F̲i̲n̲a̲l̲ ̲l̲o̲g̲ ̲d̲a̲t̲a̲ ̲c̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲(̲2̲.̲3̲.̲2̲.̲l̲.̲2̲)̲

             Collection of log format indentification, exit
             cause, termination time and item reference (if
             applicable)

         c)   F̲o̲r̲m̲a̲t̲ ̲I̲/̲O̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲2̲.̲3̲.̲2̲.̲2̲.̲3̲)̲

             These are the functions for input/output of formats
             and data to the VDU Format Area, i.e. SVDIA communication
             functions. 



         d)  S̲y̲s̲t̲e̲m̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲T̲r̲a̲n̲s̲a̲c̲t̲i̲o̲n̲ ̲s̲e̲q̲u̲e̲n̲c̲e̲ ̲c̲o̲n̲t̲r̲o̲l̲ ̲(̲2̲.̲3̲.̲2̲.̲2̲.̲4̲)̲

             These are the functions for supervisor system control
             and includes: fetching of system information through
             TMP, identification of valid guidance- and control
             f/c keys at each stage of the transaction, identification
             of commands to be sent to the CAMPS System and
             of commands to be executed by SFCO.



4.2.2.2  S̲o̲f̲t̲w̲a̲r̲e̲ ̲S̲t̲r̲u̲c̲t̲u̲r̲e̲

         The Software Structure of SFCO is depicted on fig.
         4.2.2.2-1

         Common subpackage procedures are shown on fig. 4.2.2.2-2
         through 4.2.2.2-5



4.2.2.2.1    S̲F̲C̲O̲ ̲M̲a̲i̲n̲ ̲M̲o̲d̲u̲l̲e̲ ̲(̲1̲.̲0̲)̲

         This module inplements the functions described in 4.2.2.l.3
         SVCO Control Function (3.o)



4.2.2.2.2    F̲/̲c̲ ̲K̲e̲y̲ ̲C̲M̲D̲ ̲E̲x̲e̲c̲u̲t̲i̲o̲n̲ ̲(̲2̲.̲0̲)̲

         This module implements the functions described in section
         4.2.2.l.2 F/C Key Command Functions (2.0)



4.2.2.2.3    C̲M̲D̲ ̲V̲a̲l̲i̲d̲a̲t̲i̲o̲n̲ ̲M̲o̲d̲u̲l̲e̲ ̲(̲3̲.̲0̲)̲

         This module implements the functions described in section
         4.2.2.l.4 a) Supervisor command Validation (2.3.l)
         except for the semantic check of  parameters to table
         related commands, which are implemented in the Table
         Command Validation module.



4.2.2.2.4    T̲a̲b̲l̲e̲ ̲C̲o̲m̲m̲a̲n̲d̲s̲ ̲V̲a̲l̲i̲d̲a̲t̲i̲o̲n̲ ̲m̲o̲d̲u̲l̲e̲ ̲(̲4̲.̲0̲)̲

         Refer 4.2.2.2.3 above. 





4.2.2.2.5 E̲x̲e̲c̲u̲t̲e̲ ̲t̲a̲b̲l̲e̲ ̲C̲M̲D̲ ̲t̲r̲a̲n̲s̲a̲c̲t̲i̲o̲n̲ ̲(̲5̲.̲0̲)̲

         Implements the functions for simple Syntax check for
         table related commands entered via the VDU Format Area.
         If next table entry by design is specified semantic
         validation is performed by the module itself otherwise
         table CMD validation (4.0) is called. Then execute
         Transaction (5.0) is called. 



4.2.2.2.6    E̲x̲e̲c̲u̲t̲e̲ ̲T̲r̲a̲n̲s̲a̲c̲t̲i̲o̲n̲ ̲(̲6̲.̲0̲)̲

         Implements the functions for  Initial log data collection
         (2.3.2.l.l) 4.2.2.l.6 and calls System Sequence Control
         (7.0).



4.2.2.7      S̲y̲s̲t̲e̲m̲ ̲S̲e̲q̲u̲e̲n̲c̲e̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲7̲.̲0̲)̲

         Implements the control functions described in section
          4.2.2.l.5.  b)



4.2.2.2.8    E̲x̲e̲c̲u̲t̲e̲ ̲S̲y̲s̲t̲e̲m̲ ̲S̲e̲q̲u̲e̲n̲c̲e̲ ̲(̲8̲.̲0̲)̲

         Implements the functions described in section 4.2.2.l.7
         c) and e) apart from f/c key identification.



4.2.2.2.9     E̲x̲e̲c̲u̲t̲e̲ ̲S̲y̲s̲t̲e̲m̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲ ̲(̲9̲.̲0̲)̲

         Implements the functions described in section 4.2.2.l.7
         e) apart from f/c key identification. 



4.2.2.2.l0    T̲r̲a̲n̲s̲a̲c̲t̲i̲o̲n̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲l̲0̲.̲0̲)̲

          Implements the functions described in section 4.2.2.l.7
         a) and b) 


                  Fig. 4.2.2.2.-1 to 5 


4.2.2.3  D̲a̲t̲a̲ ̲F̲l̲o̲w̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲l̲o̲g̲i̲c̲ ̲w̲i̲t̲h̲i̲n̲ ̲S̲F̲C̲O̲.̲

         An overview of the dataflow through SFCO is given in
         Diagrams 4.2.2.3-l to 4.2.2.3 -5

         The call structure for all modules is shown in fig.
         4.2.2.3-6 through 4.2.2.3-13





4.2.2.4  M̲O̲D̲U̲L̲E̲ ̲D̲E̲S̲C̲R̲I̲P̲T̲I̲O̲N̲



4.2.2.4.l    S̲F̲C̲O̲ ̲M̲a̲i̲n̲ ̲M̲o̲d̲u̲l̲e̲



4.2.2.4.l.l F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         The SFCO Main Module is the superior controlling module
         of the SFCO subpackage. It is responsible for initiating
         stopping and closing the execution of the entire SFCO
         software on command from SVCO. When initiating of execution
         is commanded it is responsible for determining the
         mode of execution, Normal Mode or Restart Mode, for
         the output of the  proper menu and for opening of f/c
         key input.



4.2.2.4.l.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲ 

         a) SFCO-MAIN 
         b) SFCO-MAIN (R6)

         R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲

         C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲

         R6 LINK                     C    K

         R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲

         R6                          KEPT

         RO- R5, R7                  DEST



4.2.2.4.1.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲

         a)  Call VDIA and await the answer

             The procedure sends the command specified by call
             registers to VDIA, and awaits the answer. The completion
             code received by VDIA is returned to caller in
             R1.





4.2.2.4.1.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

         a)  D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲

             Refer CPS prefixes

             Refer SUP package Prefixes

             Refer SFCO subpackage prefixes

         b)  E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲

             Refer SUP package data

             Refer SFCO subpackage data

             FC ̲KEY ̲VAL ̲TABLE        C    K
             FCK ̲SET                 -    R
             HEADER ̲IFCB             C    K
             SPLIT ̲DIGIT             -    R
             SEQ ̲REC                 -    R
             INIT ̲AREA               C    K

         c)  L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲

             Refer source listing



4.2.2.4.1.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲

         The module consist of two loops an outer loop "SFCO
         ̲START", and an inner loop "SFCO ̲WORK". In the outer
         loop only commands from SVCO are awaited. If a CLOSE
         ̲SFCO commands is received an exit of the SFCO ̲START
         loop takes place and the procedure WAIT ̲SFCO ̲EVENT
         is called with CLOSED ̲STATE as parameter, when called
         with this parameter WAIT ̲SFCO ̲EVENT will never return
         control to the caller but keep waiting on events in
         its waiting point.

         The inner loop is entered where a START ̲SFCO or RESTART
         ̲SFCO has been received from SVCO. Exit from the inner
         loops to the outer loop occurs when the SVCO command
         STOP ̲SFCO is received.

         Refer figure 4.2.2.4.1-1 trough 4.2.2.4.1-4.


         LOOP SFCO ̲START

         W̲A̲I̲T̲ ̲S̲F̲C̲O̲ ̲E̲V̲E̲N̲T̲ ̲(̲R̲E̲A̲D̲Y̲ ̲S̲T̲A̲T̲E̲)̲ ̲(̲S̲V̲U̲P̲ ̲O̲P̲)̲:̲ ̲O̲K̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲0̲)̲

         CASE SVUP ̲OP. CMD OF SVCO ̲CMD ̲TYPE

             START ̲SFCO?         SFCO ̲MODE = NORMAL ̲MODE

                                 MENU ̲KEY = NORMAL ̲SEQ ̲KEY

             RESTART ̲SFCO?       SFCO ̲MODE = RESTART ̲MODE

                                 MENU ̲KEY = RESTART ̲SEQ ̲KEY

             CLOSE ̲SFCO?         S̲E̲N̲D̲ ̲S̲V̲C̲O̲ ̲A̲N̲S̲W̲E̲R̲ ̲(̲S̲V̲U̲P̲ ̲O̲P̲,̲
                                 ̲O̲K̲
                                 C̲C̲)̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲

                                 EXIT LOOP SFCO ̲START

             OTHERWISE?          T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲ ̲(̲G̲I̲V̲E̲ ̲U̲P̲)̲
                                 (̲4̲.̲1̲.̲5̲.̲2̲)̲

         END CASE

         S̲F̲C̲O̲ ̲W̲O̲R̲K̲ ̲S̲T̲A̲T̲E̲ ̲E̲N̲T̲R̲Y̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲2̲)̲

         S̲E̲N̲D̲ ̲S̲V̲C̲O̲ ̲A̲N̲S̲W̲E̲R̲ ̲(̲ ̲S̲V̲U̲P̲ ̲O̲P̲,̲ ̲C̲O̲N̲D̲I̲T̲I̲O̲N̲)̲

         CONDITION EQ OK ̲CC?    S̲F̲C̲O̲ ̲W̲O̲R̲K̲ ̲L̲O̲O̲P̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲3̲)̲

         END LOOP SFCO ̲START

         W̲A̲I̲T̲ ̲S̲F̲C̲O̲ ̲E̲V̲E̲N̲T̲(̲C̲L̲O̲S̲E̲D̲ ̲S̲T̲A̲T̲E̲)̲(̲S̲V̲U̲P̲ ̲O̲P̲)̲:̲O̲K̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲0̲)̲











                    Figure 4.2.2.4.1-1


         S̲F̲C̲O̲ ̲W̲O̲R̲K̲ ̲S̲T̲A̲T̲E̲ ̲E̲N̲T̲R̲Y̲

         SEQ ̲TABLE ̲ID = SVUP ̲SYS ̲SEQ ̲TABLE

         F̲E̲T̲C̲H̲ ̲S̲E̲Q̲ ̲R̲E̲C̲(̲S̲E̲Q̲ ̲T̲A̲B̲L̲E̲ ̲I̲D̲,̲M̲E̲N̲U̲ ̲K̲E̲Y̲.̲F̲O̲R̲M̲A̲T̲,̲M̲E̲N̲U̲ ̲K̲E̲Y̲.̲C̲O̲D̲E̲
                                        (4.2.2.6-23)

         CALL ̲SVDIA ̲AND ̲WAIT (4.2.2.4.1.3.a)

         CASE CONDITION OF CO ̲CMD ̲CC

             OK ̲CC?  SPLIT ̲DIGIT = HEADER ̲IFCB

                     FCK ̲SET = (DERM,CMD,MENU)

                     R̲E̲Q̲U̲E̲S̲T̲ ̲F̲C̲ ̲K̲E̲Y̲ ̲I̲N̲P̲U̲T̲(̲4̲.̲2̲.̲2̲.̲6̲.̲6̲)̲

             SPLIT ̲FAILED ̲CC?

             OTHERWISE? T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲ ̲U̲P̲)̲(̲4̲.̲1̲.̲5̲.̲2̲)̲

         END CASE

Figure 4.2.2.4.1-2…86…1         …02…   …02…   …02…   …02…                …02…                    
      
         SFCO WORK LOOP

         LOOP SFCO ̲WORK

         W̲A̲I̲T̲ ̲S̲F̲C̲O̲ ̲E̲V̲E̲N̲T̲(̲W̲O̲R̲K̲ ̲S̲T̲A̲T̲E̲)̲(̲S̲V̲U̲P̲ ̲O̲P̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲0̲)̲

         CASE SVUP ̲OP.OP ̲ID(2) OF SENDER ̲ID ̲TYPE

             SVCO ̲ID?  CASE SVUP ̲OP.CMD OF SVCO ̲CMD ̲TYPE

                        STOP ̲SFCO

                        CLOSE ̲SFCO?     P̲R̲E̲P̲A̲R̲E̲ ̲W̲O̲R̲K̲ ̲S̲T̲A̲T̲E̲ ̲E̲X̲I̲T̲
                                 (̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲4̲)

                                 S̲E̲N̲D̲ ̲S̲V̲C̲O̲ ̲A̲N̲S̲W̲E̲R̲(̲S̲V̲U̲P̲ ̲O̲P̲,
                                 C̲O̲N̲D̲I̲T̲I̲O̲N̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲)̲

                                 SVUP ̲OP.CMD EQ STOP ̲SFCO?

                                 EXIT LOOP SFCO ̲START

                                 EXIT LOOP SFCO ̲WORK

             OTHERWISE? T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲ ̲U̲P̲)̲
                                 (4.1.5.2)

                       END CASE

         FC ̲KEY ̲ID? C̲A̲S̲E̲ ̲F̲C̲ ̲K̲E̲Y̲ ̲C̲M̲D̲ ̲E̲X̲E̲C̲(̲)̲:̲W̲O̲R̲K̲ ̲S̲T̲O̲P̲ ̲C̲L̲O̲S̲E̲
                                 (4.2.2.4.2)

                     WORK? SPLIT ̲DIGIT=HEADER ̲IFCB

                           R̲E̲Q̲U̲E̲S̲T̲ ̲F̲C̲ ̲K̲E̲Y̲ ̲I̲N̲P̲U̲T̲(̲4̲.̲2̲.̲2̲.̲6̲.̲6̲)̲

                     STOP?     EXIT LOOP SFCO ̲WORK

                     CLOSE?    EXIT LOOP SFCO ̲START

             END CASE

         END CASE

         END LOOP SFCO ̲WORK

                    Figure 4.2.2.4.1-3


         PREPARE WORK STATE EXIT

             D̲E̲L̲E̲T̲E̲ ̲F̲C̲ ̲K̲E̲Y̲ ̲I̲N̲P̲U̲T̲ ̲R̲E̲Q̲U̲E̲S̲T̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲7̲)̲

             CALL SVDIA AND WAIT (4.2.2.4.3.a)

             CASE SFCO ̲OP.PARA1 OF CO ̲CMD ̲CC

                 OK ̲CC,SPLIT ̲FAILED ̲CC? CONDITION=SFCO ̲OP.PARA1

                 OTHERWISE? T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲ ̲U̲P̲)̲(̲4̲.̲1̲.̲5̲.̲2̲)̲

         END CASE


















                    Figure 4.2.2.4.1-4


4.2.2.4.2    E̲x̲e̲c̲u̲t̲i̲o̲n̲ ̲o̲f̲ ̲F̲/̲C̲ ̲k̲e̲y̲ ̲e̲n̲t̲e̲r̲e̲d̲ ̲c̲o̲m̲m̲a̲n̲d̲s̲



4.2.2.4.2.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         Fetches and validates f/c keys. Commands entered by
         function keys are:

         1)  Move cursor to command line for entry of command
             (logical f/c key: CMD)

         2)  Move cursor to command line for entry of Error
             Message No (logical f/c key:DERM)

         3)  Display parent Menu (logical f/c key:MENU)

         4)  Display Error Message (logical f/c key:ERR ̲MSG,
             Physical f/c key: ENTER)

         5)  Execute entered supervisor CMD (logical f/c key
              CMD ̲ENTER, physical f/c key:ENTER)

         The module is responsible for the proper execution
         of f/c key commands as listed above.



4.2.2.4.2.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         a)  FC ̲KEY ̲CMD ̲EXEC():WORK ̲STOP ̲CLOSE

         b)  FC ̲KEY ̲CMD ̲EXEC(R6):WORK ̲STOP ̲CLOSE

         R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲s̲

         C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲

         R6      LINK                C    D

         R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲

         R0 - R7                     DEST


4.2.2.4.2.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲



4.2.2.4.2.3.1 E̲X̲E̲P̲T̲I̲O̲N̲ ̲V̲D̲U̲ ̲1̲

         This procedure awaits a STOP or CLOSE command from
         SVCO by call of EXEPTION ̲VDU (4.2.2.6.11) and returns
         to calling module.



4.2.2.5.2.3.2 D̲i̲s̲p̲l̲a̲y̲ ̲I̲l̲l̲e̲g̲a̲l̲ ̲C̲o̲n̲d̲i̲t̲i̲o̲n̲

         This procedure displays the error message indicated
         and sets the curser in the command line. Procedures
         DISPLAY ̲RESP ̲MSG (4.2.2.6.15) and SET ̲CURSOR (4.2.2.6.14)
         are called.



4.2.2.4.2.3.3 F̲e̲t̲c̲h̲ ̲a̲n̲d̲ ̲E̲x̲e̲c̲u̲t̲e̲ ̲M̲e̲n̲u̲

         This procedure executes the sequence specified by call
         (SEQ ̲FORMAT, SEQ ̲REC), displaying the menu of high
         level (parent menu).

             SEQ ̲TABLE ̲ID            C    K
             SEQ ̲REC                 C    R
             SVUP ̲SYS ̲SEQ            C    K
             FC ̲KEY                  C    R
             FC ̲SET                  C    R
             FC ̲KEY ̲VAL ̲TABLE        C    K
             ERR ̲NO                  C    R
             FORMAT ̲CMD              C    R

         c)  L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲

             Refer source listing



4.2.2.4.2.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Refer fig. 4.2.2.4.2-1



   FC ̲KEY ̲CMD ̲EXEC

   C̲A̲S̲E̲ ̲F̲E̲T̲C̲H̲ ̲A̲N̲D̲ ̲V̲A̲L̲ ̲K̲E̲Y̲(̲)̲(̲F̲C̲ ̲K̲E̲Y̲,̲C̲C̲)̲:̲E̲X̲C̲ ̲N̲O̲R̲M̲A̲L̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲1̲2̲)̲

      EXC?   E̲X̲C̲E̲P̲T̲I̲O̲N̲ ̲V̲D̲U̲ ̲1̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲2̲.̲3̲.̲1̲)̲

      NORMAL?    CASE ANALYSE ̲ERROR(CC,2,ILL,LEG):(FVK1,FVK2)

                 FVK1? RETURN (WORK)

                 FVK2?

             END CASE

   END CASE

   CASE FC ̲KEY OF

      DERM,CMD?  FC ̲KEY EQ CMD? CONV ̲ENTER = CMD ̲ENTER

                 CONV ̲ENTER = ERR ̲MSG

                 FCK ̲SET = (ENTER)

                 RETURN (WORK)

      MENU?      F̲E̲T̲C̲H̲ ̲AND EXECUTE MENU (4.2.2.4.2.3.3)

      ERR ̲MSG?       D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲E̲S̲S̲A̲G̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲2̲-̲2̲)̲

      CMD ̲ENTER? S̲U̲P̲V̲ ̲C̲O̲M̲M̲A̲N̲D̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲2̲-̲3̲)̲

   END CASE



                 Figure 4.2.2.4.2-1


   DISPLAY ERROR MESSAGE

   CASE E̲X̲E̲C̲U̲T̲E̲ ̲D̲E̲R̲M̲ ̲C̲M̲D̲ ̲(̲C̲C̲)̲ ̲:̲ ̲E̲X̲C̲ ̲N̲O̲R̲M̲A̲L̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲3̲)̲

      EXC?   EXCEPTION VDU ̲1̲(̲4.2.2.5.2.3.1)

      NORMAL? CC = LEG? FCK ̲SET = (CMD,DERM,MENU)

             CASE S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲ ̲(̲C̲M̲D̲ ̲P̲O̲S̲)̲ ̲:̲ ̲E̲X̲C̲ ̲N̲O̲R̲M̲A̲L̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲4̲)̲

                 EXC? E̲X̲C̲E̲P̲T̲I̲O̲N̲ ̲V̲D̲U̲ ̲1̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲2̲.̲3̲.̲1̲)̲

                 NORMAL?

             END CASE

   END CASE

   RETURN (NORMAL)










                 Figure 4.2.2.4.2-2


  SUPV COMMAND ANALYSIS

      CASE V̲A̲L̲I̲D̲A̲T̲E̲ ̲C̲M̲D̲ ̲(̲)̲ ̲(̲C̲C̲)̲:̲ ̲E̲X̲C̲ ̲N̲O̲R̲M̲A̲L̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲)̲

          EXC?    EXCEPTION ̲VDU ̲1 (4.2.2.4.2.3.1)

          DONE?   CASE CC OF

                      REGRET? CASE S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲(̲C̲M̲D̲ ̲P̲O̲S̲)̲:̲E̲X̲C̲
                      ̲N̲O̲R̲M̲A̲L̲
                                                    
 (̲4̲.̲2̲.̲2̲.̲6̲.̲1̲4̲)̲)̲

                                 EXC? EXECEPTION ̲VDU
                                      ̲1 
                                      (4.2.2.4.2.31)

                                 NORMAL? FCK ̲SET =(DERM,CMD,MENU)

                                       RETURN (WORK)

                              END CASE

                      ILL?

                        D̲I̲S̲P̲L̲A̲Y̲ ̲I̲L̲L̲E̲G̲A̲L̲ ̲C̲O̲N̲D̲I̲T̲I̲O̲N̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲2̲.3.2)

                      LEG?

                  END CASE

      END CASE

      LOOP FORMAT ̲CMD

          CASE E̲X̲E̲C̲ ̲T̲R̲A̲N̲S̲ ̲(̲ ̲ ̲)̲:̲W̲O̲R̲K̲ ̲S̲T̲O̲P̲ ̲C̲L̲O̲S̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲5̲)̲

              W̲O̲R̲K̲?̲ ̲C̲H̲E̲C̲K̲ ̲I̲F̲ ̲F̲O̲R̲M̲A̲T̲ ̲C̲M̲D̲ ̲E̲N̲T̲E̲R̲E̲D̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲2̲-̲4)̲

              STOP? RETURN (STOP)

              CLOSE? RETURN (CLOSE)

          END CASE

      END LOOP FORMAT ̲CMD

                Figure 4.2.2.4.2-3



  CHECK IF FORMAT CMD ENTERED

  EXIT ̲LAB = WORK

  FORMAT ̲CMD EQ FALSE?   ̲ ̲E̲X̲I̲T̲ ̲L̲O̲O̲P̲ ̲F̲O̲R̲M̲A̲T̲ ̲C̲M̲D̲

  CASE V̲A̲L̲I̲D̲A̲T̲E̲ ̲F̲O̲R̲M̲A̲T̲ ̲C̲M̲D̲ ̲(̲ ̲)̲ ̲(̲C̲C̲)̲:̲ ̲E̲X̲C̲ ̲N̲O̲R̲M̲A̲T̲(̲4̲.̲2̲.̲2̲.̲4̲.̲9̲)̲

      EXC? EXEWCUTION VDU 1 (4.2.2.4.2.3.1)

      NORMAL? CASE CC OF

                  ILLEGAL: D̲I̲S̲P̲L̲A̲Y̲ ̲I̲L̲L̲E̲G̲A̲L̲ ̲C̲O̲N̲D̲I̲T̲I̲O̲N̲
                                      (̲4̲.̲2̲.̲2̲.̲4̲.̲2̲.̲3̲.̲1̲)̲

                  LEGAL:   EXIT LOOP FORMAT CMD

                  TABLE ̲END: F̲E̲T̲C̲H̲ ̲A̲N̲D̲ ̲E̲X̲E̲C̲U̲T̲E̲ ̲M̲E̲N̲U̲ ̲
                                      (̲4̲.̲2̲.̲2̲.̲4̲.̲2̲.̲3̲.̲3̲)̲

                              ̲ ̲ ̲E̲X̲I̲T̲ ̲L̲O̲O̲P̲ ̲F̲O̲R̲M̲A̲T̲ ̲C̲M̲D̲

              END CASE


      RETURN (EXIT ̲LAB)

















                Figure 4.2.2.4.2-4


4.2.2.4.3 S̲u̲p̲e̲r̲v̲i̲s̲o̲r̲ ̲C̲o̲m̲m̲a̲n̲d̲ ̲V̲a̲l̲i̲d̲a̲t̲i̲o̲n̲ ̲M̲o̲d̲u̲l̲e̲



4.2.2.4.3.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

          Validates a supervisor command entered in the
          command line of the VDU Header Area. Validation
          includes command code validation, Parameter
          Validation and PEC validation

          Parameter Validation and PEC validation is
          only carried out if the command code validation
          is succesfull. Parameter Validation consist
          of two parts: a simple syntax check and a full
          semantic check. The full semantic check is
          only carried out if both the simple syntax
          check for all parameters and the PEC validation
          are successful.



4.2.2.4.3.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

          C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

          a)  VALIDATE ̲CMD ( )

                  (CC:EXT ̲ILL ̲LEG ̲TYPE):EXC ̲NORMAL

          b)  VALIDATE ̲CMD ̲(R7,R6), EXC ̲NORMAL

          R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲s̲

          C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲

          R7      CC: EXIT ̲ILL ̲LEG ̲TYPE   -   R

          R6      LINK                    -   K

          R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲

          R0 - R6                         DEST

          R7   CC                         RETURN





4.2.2.4.3.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲



4.2.2.4.3.3.1 A̲d̲d̲ ̲E̲r̲r̲o̲r̲

          Functional specification:

          This procedure adds an error code to the error list
          and updates the error count. It returns a CC of illegal.



4.2.2.4.3.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

          a)  D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲

              Refer CPS prefixes

              Refer SUP package prefixes

              Refer SFCO subpackage prefixes

          b)  E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲

              Refer SUP package data

              Refer SFCO subpackage data

              ERR ̲NO                  -   R

              ERR ̲LIST                -   R

              IOC ̲HEADER ̲LINE         -   R

              SUPV ̲CMD ̲REC            -   R

              CMD ̲PARAM ̲TABLE         -   R

              SFCO ̲TMP ̲PARAM1         -   R

              SFCO ̲TMP ̲KEY1           -   D

              SFCO ̲MODE               C   R

          c)  L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲

              Refer source listing





4.2.2.4.3.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲.̲

          The Module has two exits: EXC and NORMAL. An EXC exit
          is performed when a VDU interface procedure called
          returns with this result, otherwise a NORMAL Exit is
          performed. In case of a NORMAL exit the completion
          code (CC)indicates the result of the command validation:
          Regret (REGRET) means that the command line was empty,
          i.e. the supervisor cancels his request for a supervisor
          command execution. Illegal (ILL) means that the command
          was erroneous and legal (LEG) means that the entered
          command was valid.

          If the command was illegal ERR-NO contains the number
          of errors found and the array ERR the numbers of the
          Response Messages corresponding to the errors.

          For exat requirements to command parameter validation
          refer CPS/230/ICD/0002.





4.2.2.4.4 T̲a̲b̲l̲e̲ ̲c̲o̲m̲m̲a̲n̲d̲ ̲V̲a̲l̲i̲d̲a̲t̲i̲o̲n̲ ̲M̲o̲d̲u̲l̲e̲



4.2.2.4.4.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

          Checks for table related commands whether the table-
          entry specified by the parameter exists, and if not,
          whether a new entry may be created.



4.2.2.4.4.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

           C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

           a)TABLE ̲CMD ̲VAL

              (SUPV ̲CMD:TABLE ̲CMD ̲TYPE):ERROR ̲OK

           b) TABLE ̲CMD ̲VAL(RO,R6):ERROR ̲OK

           R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲c̲e̲n̲t̲i̲o̲n̲s̲

           C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲

           R0   SUPV ̲CMD             C    D

           R6   LINK                 C    K

           R̲e̲t̲u̲r̲n̲ ̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲

           R0 - R5, R7               DEST

           R6                        KEPT



4.2.2.4.4.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲

          a)  L̲O̲O̲K̲U̲P̲ ̲E̲M̲P̲T̲Y̲ ̲E̲N̲T̲R̲Y̲(̲T̲A̲B̲L̲E̲ ̲:̲ ̲T̲A̲B̲L̲E̲ ̲I̲D̲)̲

              LOOKUP ̲EMPTY ̲ENTRY checks via the table attributes
              for the table specified whether a new entry in
              the table may be created or not. Refer fig. 4.2.2.4.4-1

          b)  A̲d̲d̲ ̲E̲r̲r̲o̲r̲ ̲(̲N̲u̲m̲b̲e̲r̲)̲

              This procedure adds an errer code to the error
              list and updates the error count. It always sets
              EXIT ̲LAB to error.



          c)  C̲O̲N̲V̲E̲R̲T̲ ̲P̲A̲R̲A̲M̲E̲T̲E̲R̲ ̲T̲W̲O̲

              This procedure converts contents of the key and
              stores result same place. Number of characters
              are taken from command line.

          d)  C̲a̲l̲l̲ ̲T̲M̲P̲ ̲(̲P̲o̲i̲n̲t̲e̲r̲ ̲t̲o̲ ̲T̲M̲P̲ ̲P̲a̲r̲a̲m̲)̲(̲R̲e̲c̲o̲r̲d̲s̲ ̲F̲o̲u̲n̲d̲)̲

              Tis procedure callls TMP ̲REQUEST in standard case
              (no errors allowed)

          e)  U̲n̲l̲o̲c̲k̲ ̲U̲s̲e̲r̲ ̲T̲a̲b̲l̲e̲

              This procedure calls TMP ̲UNLOCK ̲TABLE for USER
              ̲PROFILE ̲TABLE. If an error occurs, TEP ̲INT ̲ERR
              is called with continue.

          f)  C̲o̲m̲p̲a̲r̲e̲ ̲P̲a̲r̲a̲m̲ ̲A̲r̲r̲a̲y̲ ̲(̲N̲O̲ ̲O̲F̲ ̲C̲H̲A̲R̲;̲ ̲N̲O̲ ̲O̲F̲ ̲E̲N̲T̲R̲I̲E̲S̲,̲
              ̲P̲O̲I̲N̲T̲E̲R̲ ̲T̲O̲ ̲A̲R̲R̲A̲Y̲)̲(̲E̲n̲t̲r̲y̲ ̲f̲o̲u̲n̲d̲ ̲o̲r̲ ̲0̲)̲

              This procedure compares the parameter, saved in
              WORK ̲BUFFER with a specified array.



4.2.2.4.4.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

          a)  D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲

              Refer CPS prefixes

              Refer SUP package prefixes

              Refer SFCO subpackage prefixes.

          b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲

              Refer SUP package data

              Refer SFCO subpackage data

              SFCO ̲TMP ̲RECORD1       C    R

              SFCO ̲TMP ̲KEY1          C    R

              EMPTY ̲ENTRY            -    R

              ERR ̲LIST               C    R

              ERR ̲NO                 C    R




         c)  L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲

             Refer source listing.



4.2.2.4.4.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Semantic validation of table commands are executed
         as specified in CPS/230/ICD/0002. For the UPUP command
         synchronization of access to a userprofile between
         SSC and SUP are obtained by the TMP procedures LOCK
         ̲TABLE/ UNLOCK ̲TABLE and the two fields SIGN and LOCK
         in the User Profile.



4.2.2.4.5    E̲x̲e̲c̲u̲t̲e̲ ̲T̲r̲a̲n̲s̲a̲c̲t̲i̲o̲n̲ ̲M̲o̲d̲u̲l̲e̲



4.2.2.4.5.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         Determines if the transaction is of the type which
         requires logging, i.e. not a menu display, and if,
         performs transaction initiating accounting. Blanks
         the command line and displays the current Terminal
         Function in the  VDU Header Area, if applicable. Invokes
         the proper function for execution of the transaction
         type in question.



4.2.2.4.5.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         Call Specification

         a) EXEC ̲TRANS (  ) : WORK ̲STOP ̲CLOSE 
         b) EXEC ̲TRANS (R6):  WORK ̲STOP ̲CLOSE

         R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲s̲

         C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲

          R6  LINK                   C    K

          R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
          
          R0 - R5, R7                DEST

          R6                         KEPT





4.2.2.4.5.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲

          a) T̲E̲R̲M̲I̲N̲A̲T̲E̲ ̲T̲R̲A̲N̲S̲ ̲(̲ ̲ ̲)̲:̲ ̲ ̲S̲T̲O̲P̲ ̲C̲L̲O̲S̲E̲

             If the CC VDU ̲SPLIT ̲FAILED is received from the
             Format Handler during initiating of the transaction,
             TERMINATE ̲TRANSACTION is called and is responsible
             for awaiting the SVCO command to come and for the
             proper termination of the process.



4.2.2.4.5.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

          a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲

             Refer CPS prefixes

             Refer SUP package prefixes

             Refer SFCO subpackage prefixes

          b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲

             Refer SUP package data

             Refer SFCO subpackage data

             SEQ ̲TABLE ̲ID            C    R
             SUPV ̲CMD ̲REC            C    K
             SEQ ̲KEY                 C    R
             TRANSACTION ̲ID          C    R
             SPLIT ̲DIGIT             C    R
             VDU ̲HD ̲AREA             -    R
             VALIDATION ̲RESULT       -    R

          c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲

             Refer source listing



4.2.2.4.5.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲ 

          The Module has three exits: WORK, STOP, CLOSE. A WORK
          Exit is performed, when the transaction executed is
          normally terminated, i.e. under control of the supervisor.
          A STOP or Close exit is performed if the transaction
          is somehow interrupted by the system with a STOP-SFCO
          respectively a CLOSE-SFCO command from SVCO as a result.






4.2.2.4.6    S̲y̲s̲t̲e̲m̲ ̲c̲o̲n̲t̲r̲o̲l̲ ̲S̲e̲q̲u̲e̲n̲c̲e̲ ̲M̲o̲d̲u̲l̲e̲



4.2.2.4.6.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         The System Sequence is responsible for the control
         of execution of system sequences as specified by the
         relevant sequence files.

         After a normal execution of a system sequence, one
         of the following actions shall take place:

         N̲o̲r̲m̲a̲l̲ ̲A̲c̲t̲i̲o̲n̲s̲:

         TCON:   A new system sequence shall be executed.

         TFCK:   A supervisor command via a f/c key shall be
                 awaited, defining the next system sequence
                 to be executed.

         TEND:   The transaction is terminated and a return
                 to the caller shall take place.

         A̲b̲n̲o̲r̲m̲a̲l̲ ̲A̲c̲t̲i̲o̲n̲s̲:

         TSTOP:  A SVCO STOP command is received.

         TCLOSE: A SVCO CLOSE command is received.

         TEXC:   A VDU ̲SPLIT ̲FAILED CC is received from the
                 format handler.

         TRPT:   A F/C KEY INTERRUPT command is received.



4.2.2.4.6.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         a) SYS ̲SEQ (  ): WORK ̲STOP ̲CLOSE 
         b) SYS ̲SEQ (R6): WORK ̲STOP ̲CLOSE 

         R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲s̲

         C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲ 

         R6 LINK                     C    K

         R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲

         R0 - R5, R7                 DEST






4.2.2.4.6.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲

         None



4.2.2.4.6.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

         a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲-

             Refer CPS prefixes

             Refer SUP package prefixes

             Refer SFCO subpackage prefixes

         b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲

             Refer SUP package data

             Refer SFCO subpackage data

             SEQ ̲TABLE ̲ID            C    K
             SVUP ̲OP                 -    R

         c)  L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲

             Refer source listing



4.2.2.4.6.6 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲

         The Module has three exits: WORK, STOP, CLOSE. A WORK
         exit is performed when a transaction is normally terminated,
         i.e. under control of the supervisor. A STOP or CLOSE
         exit is performed when the termination of the transaction
         occurs due to a SVCO command. 


 LOOP SEQ ̲EXEC

 E̲X̲E̲C̲ ̲ ̲S̲Y̲S̲ ̲S̲E̲Q̲ ̲(̲W̲O̲R̲K̲1̲ ̲S̲T̲A̲T̲E̲)̲ ̲(̲S̲E̲Q̲ ̲S̲T̲A̲T̲E̲,̲S̲V̲U̲P̲ ̲O̲P̲)̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲7̲)̲

 CASE SEQ ̲STATE OF  

     TCON? -F̲E̲T̲C̲H̲ ̲S̲E̲Q̲ ̲R̲E̲C̲ ̲(̲S̲E̲Q̲ ̲T̲A̲B̲L̲E̲ ̲ ̲I̲D̲,̲ ̲N̲U̲L̲L̲,̲ ̲N̲U̲L̲L̲)̲
     ̲
                                               (̲4̲.̲2̲.̲2̲.̲6̲.̲2̲3̲)̲

     TFCK? -C̲A̲S̲E̲ ̲T̲R̲A̲N̲S̲ ̲C̲T̲R̲L̲ ̲(̲ ̲ ̲)̲ ̲(̲S̲V̲U̲P̲ ̲O̲P̲)̲:̲ ̲W̲O̲R̲K̲ ̲S̲T̲O̲P̲
     ̲C̲L̲O̲S̲E̲
                                                (̲4̲.̲2̲.̲2̲.̲4̲.̲8̲)̲

                 WORK? F̲E̲T̲C̲H̲ ̲S̲E̲Q̲ ̲R̲E̲C̲ ̲(̲S̲E̲O̲ ̲ ̲T̲A̲B̲L̲E̲ ̲ ̲ ̲I̲D̲,̲
                 ̲N̲U̲L̲L̲,̲ ̲N̲U̲L̲L̲
                                                (̲4̲.̲2̲.̲2̲.̲6̲.̲2̲3̲)̲

                 STOP? S̲V̲U̲P̲ ̲E̲X̲C̲E̲P̲T̲I̲O̲N̲(̲S̲E̲Q̲ ̲S̲T̲O̲P̲)̲ ̲(̲4̲.̲2̲.̲2̲)̲

                     EXIT ̲LAB = STOP 

                     EXIT ̲LOOP SEQ ̲EXEC

                 CLOSE?   S̲V̲U̲P̲ ̲E̲X̲C̲E̲P̲T̲I̲O̲N̲(̲S̲E̲Q̲ ̲C̲L̲O̲S̲E̲)̲
                 ̲(̲4̲.̲2̲.̲2̲)̲

                          EXIT ̲LAB = CLOSE 

                     EXIT LOOP SEQ ̲EXEC

             END CASE 

     TEND?  D̲E̲L̲E̲T̲E̲ ̲F̲C̲ ̲K̲E̲Y̲ ̲I̲N̲P̲U̲T̲ ̲R̲E̲Q̲U̲E̲S̲T̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲7̲)̲

             EXIT ̲LAB = WORK 

             EXIT LOOP SEQ ̲EXEC 

     OTHERWISE?  E̲X̲C̲E̲P̲T̲I̲O̲N̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲6̲-̲2̲)̲

 END CASE 

 END LOOP SEQ ̲EXEC

 EXIT ̲LAB EQ WORK?

 S̲E̲N̲D̲ ̲ ̲ ̲S̲V̲C̲O̲ ̲A̲N̲S̲W̲E̲R̲ ̲(̲S̲V̲U̲P̲ ̲O̲P̲,̲ ̲O̲K̲ ̲C̲C̲)̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲l̲)̲

 RETURN (EXIT-LAB)

                 Fig. 4.2.2.4.6-1


 E̲X̲C̲E̲P̲T̲I̲O̲N̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ 

 CASE  SEQ ̲STATE OF 

     TCLOSE? S̲V̲U̲P̲ ̲E̲X̲C̲E̲P̲T̲I̲O̲N̲ ̲(̲S̲E̲Q̲ ̲C̲L̲O̲S̲E̲)̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲2̲4̲)̲

             EXITLAB = CLOSE 

             EXIT LOOP SEQ ̲EXEC 

     TSTOP?  S̲V̲U̲P̲ ̲E̲X̲C̲E̲P̲T̲I̲O̲N̲ ̲ ̲(̲S̲E̲Q̲ ̲C̲L̲O̲S̲E̲)̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲2̲4̲)̲

             EXIT ̲LAB = STOP 

             EXIT LOOP SEQ ̲EXEC 

     TEXC?   C̲A̲S̲E̲ ̲E̲X̲C̲E̲P̲T̲I̲O̲N̲ ̲V̲D̲U̲ ̲(̲3̲)̲ ̲S̲V̲U̲P̲ ̲O̲P̲)̲:̲ ̲ ̲S̲T̲O̲P̲
             ̲C̲L̲O̲S̲E̲
                                               (̲4̲.̲2̲.̲2̲.̲6̲.̲l̲l̲)̲

                 STOP?  S̲V̲U̲P̲ ̲E̲X̲C̲E̲P̲T̲I̲O̲N̲ ̲(̲S̲E̲Q̲ ̲S̲T̲O̲P̲)̲ ̲(̲4̲.̲2̲.̲2̲)̲

                        EXIT ̲LAB = STOP 

                        EXIT LOOP SEQ ̲EXEC 

                 CLOSE? S̲V̲U̲P̲ ̲E̲X̲C̲E̲P̲T̲I̲O̲N̲ ̲(̲S̲E̲Q̲ ̲C̲L̲O̲S̲E̲)̲ ̲(̲4̲.̲2̲.̲2̲)̲

                           EXIT ̲LAB = CLOSE 

                           EXIT LOOP SEQ ̲EXEC 

             END CASE 

     TRPT?  T̲R̲A̲N̲S̲A̲C̲T̲I̲O̲N̲ ̲I̲N̲T̲E̲R̲R̲U̲P̲T̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲6̲-̲3̲)̲

             EXIT LOOP SEQ ̲EXEC 

     OTHERWISE?  T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲ ̲ ̲(̲G̲I̲V̲E̲ ̲U̲P̲)̲ ̲(̲4̲.̲l̲.̲5̲.̲2̲)̲

 END CASE






                Fig. 4.2.2.4.6-2 


 T̲R̲A̲N̲S̲A̲C̲T̲I̲O̲N̲ ̲I̲N̲T̲E̲R̲R̲U̲P̲T̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ 

 F̲E̲T̲C̲H̲ ̲S̲E̲Q̲ ̲R̲E̲C̲ ̲(̲S̲E̲Q̲ ̲T̲A̲B̲L̲E̲ ̲ ̲ ̲I̲D̲,̲ ̲N̲U̲L̲L̲,̲ ̲N̲U̲L̲L̲)̲ ̲(̲4.2.2.6.23)

 LOOP INTRPT ̲SFQ ̲EXEC 

 E̲X̲E̲C̲ ̲S̲Y̲S̲ ̲S̲E̲Q̲ ̲(̲W̲O̲R̲K̲5̲ ̲S̲T̲A̲T̲E̲)̲ ̲(̲S̲E̲Q̲ ̲S̲T̲A̲T̲E̲,̲ ̲S̲V̲U̲P̲ ̲O̲P̲)̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲7̲)̲

 CASE SEQ ̲STATE O

     TCON?     F̲E̲T̲C̲H̲ ̲S̲E̲Q̲ ̲R̲E̲C̲ ̲ ̲(̲S̲E̲Q̲ ̲T̲A̲B̲L̲E̲ ̲I̲D̲,̲ ̲N̲U̲L̲L̲,̲N̲U̲L̲L̲)̲
                                               ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲2̲3̲)̲

     TEND?     EXIT ̲LAB = WORK 

               EXIT LOOP INTRPT ̲SEQ ̲EXEC

     TCLOSE?   S̲V̲U̲P̲ ̲E̲X̲C̲E̲P̲T̲I̲O̲N̲(̲S̲E̲Q̲ ̲C̲L̲O̲S̲E̲)̲ ̲(̲4̲.̲2̲.̲2̲)̲

               EXIT ̲LAB = CLOSE 

               EXIT LOOP INTRPT ̲SEQ ̲EXEC 

     TSTOP?    S̲V̲U̲P̲ ̲E̲X̲C̲E̲P̲T̲I̲O̲N̲(̲S̲E̲Q̲ ̲S̲T̲O̲P̲)̲ ̲(̲4̲.̲2̲.̲2̲)̲

               EXIT ̲LAB = STOP 

               EXIT LOOP INTRPT ̲SEQ ̲EXEC 

     TEXC?   C̲A̲S̲E̲ ̲E̲X̲C̲E̲P̲T̲I̲O̲N̲ ̲V̲D̲U̲ ̲(̲2̲)̲ ̲S̲V̲U̲P̲ ̲O̲P̲)̲:̲ ̲S̲T̲O̲P̲ ̲C̲L̲O̲S̲E̲
                                                (̲4̲.̲2̲.̲2̲.̲6̲.̲1̲1̲)̲

                 STOP?  S̲V̲U̲P̲ ̲E̲X̲C̲E̲P̲T̲I̲O̲N̲ ̲(̲S̲E̲Q̲ ̲S̲T̲O̲P̲)̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲2̲4̲)̲

                        EXIT ̲LAB = STOP 

                        EXIT LOOP INTRPT ̲SEQ ̲EXEC

                 CLOSE? S̲V̲U̲P̲ ̲E̲X̲C̲E̲P̲T̲I̲O̲N̲(̲S̲E̲Q̲ ̲C̲L̲O̲S̲E̲)̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲2̲4̲)̲

                        EXIT ̲LAB = CLOSE 

                        EXIT LOOP  INTRPT ̲SEQ ̲EXEC 

             END CASE 

     OTHERWISE? T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲ ̲ ̲(̲G̲I̲V̲E̲ ̲U̲P̲)̲ ̲(̲4̲.̲l̲.̲5̲.̲2̲)̲

 END CASE 

 END LOOP INTRPT ̲SEQ ̲EXFC 

                 Fig. 4.2.2.4.6-3