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

⟦439acca6d⟧ Wang Wps File

    Length: 20987 (0x51fb)
    Types: Wang Wps File
    Notes: CPS/SDS/039               
    Names: »2142A «

Derivation

└─⟦11096526c⟧ Bits:30006108 8" Wang WCS floppy, CR 0171A
    └─ ⟦this⟧ »2142A « 

WangText

…00……00……00……00……00……08……02……00……00……08…
…08……07……07……0a……07……0d……07……0f……07…
…07……07……06……09……06……0d……06……0f……86…1                                             …02…           …02…   …02…        

…02…CPS/SDS/039

…02…841101…02……02…
USER VDU
DETAILED DESIGN SPECIFICATION…02…ISSUE 1…02…CAMPS









           4.2.2.4.8 VUS IN/OUT LINE ................
                         
           4.2.2.4.9 VUS CMD PENDING ................
                         
             4.2.2.4.10 VUS SEQUENCE ................
                 
             4.2.2.4.11 Execute Function ............
                 
         4.2.2.5 Common Subpackage Data .............
                     
         4.2.2.6 Common Subpackage Procedures .......
                     
           4.2.2.6.1 Lookup Parameters ..............
                         
           4.2.2.6.2 SET CURSOR .....................
                         
           4.2.2.6.3 DISPLAY VDU FIELD ..............
                         
           4.2.2.6.4 DISPLAY ERROR MSG ..............
                         
           4.2.2.6.5 TEP RELV FIRST .................
                         
           4.2.2.6.6 TEP RECV NEXT ..................
                         


4.2.2.4.8    I̲N̲S̲E̲R̲T̲/̲D̲E̲L̲E̲T̲E̲ ̲L̲I̲N̲E̲S̲



4.2.2.4.8.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 purpose of this module is to analyze the input
         from command line and signal command and parameter
         to VDIA, or alternatively, if the input is unacceptable,
         to call other modules.



4.2.2.4.8.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)  INSERT ̲DELETE ̲LINES

         b)  INSERT ̲DELETE ̲LINES (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̲

         R6      LINK                   (DEST)

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

         R0 - R7                        (DEST)



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

         N/A



4.2.2.4.8.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 source list for prefiles used.


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

             All external data defined in 4.1.7/4.2.2.5

             VUS ̲S3
             VFCO ̲PARAM ̲TABLE
             PENDING ̲FC
             BTRANS
             EXP ̲VDIA ̲CMD


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

             Refer source list


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

         If the expected F/C ̲key (Return) is entered the contents
         of command line is fetched, analyzed and a command
         is signalled to VDIA. Otherwise, other common procedures
         are called in order to display an error message and
         to reset the cursor on the command line.




         I̲N̲S̲E̲R̲T̲ ̲D̲E̲L̲E̲T̲E̲ ̲L̲I̲N̲E̲S̲

         LOOK UP PARAMETERS IN COMMAND LINE

         CASE PARAMETERS

         0? - EXIT

         1? - SYNTAX ̲VALIDATION OK ?

              DISPLAY ERROR ̲MSG ("SYNTAX ̲ERROR") 

              EXIT

              CONVERT PARAMETER TO INTEGER

              FETCH SEMAPHORE OPERATION FROM POOL

              SIGNAL INSERT/DELETE COMMAND FOR VDIA

         OTHERWISE DISPLAY ̲ERROR ̲MSG ("TOO ̲MANY ̲PARAMETERS")


























                    FIGURE 4.2.2.4.8-1


4.2.2.4.9    V̲U̲S̲ ̲C̲M̲D̲ ̲P̲E̲N̲D̲I̲N̲G̲



4.2.2.4.9.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲ ̲M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲

         This module is entered when actual fc-key is "return"
         and previous fc-key was "commnand".

         The content of the command ̲line is fetched and validated.
         Accordingly the terminal text field is updated.

         If validation is successful VUS ̲SEQUENCE is entered,
         otherwise a response text or error codes are displayed.

         The validation of the command itself (1st parameter)
         is performed by a search in the command table.

         Further parameters may be mandatory. If these are not
         present in cmd-line, VDIA is informed to display a
         request format for the missing parameters. Either this
         module or VDIA stores the converted parameters in area
         UFCO ̲VAL.



4.2.2.4.9.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)  VUS ̲CMD ̲PENDING

         b)  VUS ̲CMD ̲PENDING (R6)

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

         R6      LINK                (DEST)

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

         R0 - R7                     (DEST)





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

         V̲A̲L̲I̲D̲A̲T̲E̲ ̲C̲O̲M̲M̲A̲N̲D̲

         The command read from the command line (1st parameter)
         is validated by a call to TMP. Refer fig. 4.2.2.4.9-2.

         C̲L̲E̲A̲R̲ ̲V̲A̲L̲

         Clears area UFCO ̲VAL

         C̲O̲N̲V̲E̲R̲T̲ ̲D̲T̲G̲

         Moves DTG in header line to word boundary, then converts
         it to internal representation.

         D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲ ̲C̲O̲D̲E̲S̲

         Display the error codes in the response line directly
         below erronous parameters.

         P̲R̲E̲C̲ ̲V̲A̲L̲

         Validates and converts precedence from header line.

         S̲C̲D̲ ̲V̲A̲L̲

         Validates the originator-SCD from the header line.

         I̲T̲E̲M̲ ̲V̲A̲L̲

         Checks if the item ref. is below 65535. In case the
         item ref. is converted to internal representation.



4.2.2.4.9.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 source list.



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

             All ext. data defined in 4.1.4/4.2.2.5

             TMP ̲RECORD (m)
             D ̲TXT ̲PTR
             VDU ̲HD ̲AREA
             CURRENT ̲MODE (m)
             VDU ̲HD ̲AREA
             INIT ̲AREA
             UFCO ̲VAL (m)
             HEADER ̲LINE (m)
             UFCO ̲PARAM ̲TABLE (m
             BTRANS  
             CURRENT ̲MAIN ̲QUEUE (m)
             CURRENT ̲SUBQUEUE (m)
             RECV ̲MAIN (m)
             UFCO ̲VAL (m)
             QEL ̲INFORM (m)
             PRPM ̲NUMBER (m)
             SEQ ̲FORMAT (m)
             SEQ ̲CODE (m)


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

             Refer source list.


   VUS ̲CMD ̲PENDING

   LOOKUP PARAMETERS IN COMMAND LINE

   MORE THAN 7 OR EQUAL 0 PARAMETERS ?

         MORE THAN 7 PARAMETERS ? - DISPLAY ̲ERROR ̲MSG
         ("too many
                                                                     
                                                                     parameters")

         SET CURSOR IN CMD LINE

   V̲A̲L̲I̲D̲A̲T̲E̲ ̲C̲O̲M̲M̲A̲N̲D̲ ̲(̲.̲.̲)̲(̲C̲C̲1̲,̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲)̲

   CC1 = ERROR ? - DISPLAY ̲ERROR ̲MSG (ERROR ̲MSG)
                    CC = ERROR

   MORE THAN 1 PARAMETER ? - DISPLAY ̲ERROR ̲MSG ("too
   many parameters")
                                      CC:= ERROR

   CC = ERROR ?

   CASE COMMAND

      CMD1   if more than 1 parameter (i.e.the command
             itself) is allowed, further parameters
             are validated. If OK, CC:= Okay and keys
             for VUS ̲SEQUENCE are set. Otherwise CC:=
             error and appropriate error msg (or error
             number directly below parameter) is displayed

      CMDN

   OTHERWISE INTERNAL ̲ERROR (GIVE ̲UP)

   CC = ERROR? - SET CURSOR IN COMMAND ̲LINE

   RESET VALIDATION ̲COUNT

   VUS ̲SEQUENCE

   IF NECESSARY UPDATE TERMINAL ̲TEXT FIELD



               FIGURE 4.2.2.4.8-1


   V̲A̲L̲I̲D̲A̲T̲E̲ ̲C̲O̲M̲M̲A̲N̲D̲

   SET TMP ̲RECORD

   TMP ̲REQUEST (SEARCH IN USER ̲COMMAND ̲TABLE)

   COMMAND IN TABLE ? - 

   RETURN ERROR ̲MSG = UNKNOWN ̲COMMAND

   CC = ERROR

   EXIT

   COMMAND WITHIN CAPABILITY ?  - RETURN CC:= OK

   RETURN ERROR ̲MSG = "NO CAPABILITY FOR THIS OPERATION"

   CC = ERROR




























               FIGURE 4.2.2.4.8-2


4.2.2.4.10 V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲



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

             An entry in the sequence table is executed.
             I.e. actions specific to current state
             (format or VDU, FC ̲KEY activated, etc.)
             are executed as specified in SEQUENCE
             ̲RECORD. A part of the record is executed
             in module EXEC ̲FUNC. The TABLE ̲
             ENTRY is searched at TMP, identified by
             two keys: 

             A FORMAT ̲KEY, related to current VDU ̲FORMAT.
             
             A CODE ̲KEY, reflecting the event to be
             executed. 

             Generally, the NEXT FORMAT ̲KEY is defined
             in returned SEQUENCE ̲RECORD, but may be
             overruled by the program code. The CODE
             ̲KEY is always set up in program code (examples,
             modules:VDIA ̲CC ̲PROC,FC ̲KEY ̲PROC,ANQ ̲PROC,
             RETR ̲PROC).



4.2.2.4.10.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)  VUS ̲SEQUENCE

             b)  VUS ̲SEQUENCE (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̲

             R6      LINK        (DEST)

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

             None

             R0 - R7                   (DEST)


4.2.2.4.10.3 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 source list.

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

                 All external data defined in 4.1.4/4.2.2.5

                 SEQ ̲REC (m)
                 SPLIT ̲FAILED
                 SEQ ̲FORMAT (m)
                 SEQ ̲CODE 
                 FCK ̲SET (m)
                 CURSOR ̲RECORD (m)
             TMP ̲RECORD (m)
             CUR ̲TIME
             ACCOUNT (m)
             INPUT ̲CIF
             OUTPUT ̲CIF
             ITEM ̲REC (m)
             FF ̲HANDLE

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

         Refer source list.



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

         None



   VUS ̲SEQUENCE

   SEQ ̲FORMAT = NULL?  -  EXIT

   SET TMP ̲RECORD

   TMP ̲REQUEST (TMP ̲RECORD)(SEQ ̲TABLE)

   EXECUTIVE ̲FUNCTIONS

   SPLIT ̲FAILURE ?  - EXIT

   SET ̲CURSOR

   SPLIT ̲FAILURE ? - EXIT

   SEQ ̲TABLE. VDIA ̲COMMAND = NIL ? - EXIT

   FETCH SEMAPHORE OPERATION FROM POOL

   SIGNAL VDIA

   SEQ ̲FORMAT:= SEQ ̲TABLE. NEW ̲FORMAT


























               FIGURE 4.2.2.4.10-1


4.2.2.4.11   S̲T̲P̲ ̲R̲E̲P̲O̲R̲T̲I̲N̲G̲



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

         This module collects and reports statistical data.



4.2.2.4.11.2 M̲o̲d̲u̲l̲e̲ ̲I̲/̲F̲

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

         a)  STP ̲REPORTING (STP ̲TYPE: STATISTIC 1..STATISTIC
             2..)

         b)  STP ̲REPORTING (R0, R6)

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

         R0          STP ̲TYPE
         R6          LINK

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

         None, all destroyed.



4.2.2.4.11.3 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 source list

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

             All external data defined in 4.1.4/4.2.2.5

             ACCOUNT
             SEQ ̲REC
             CUR ̲TIME
             INIT ̲AREA

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

             Refer source list.


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

         CASE STP ̲TYPE

             TYPE 1 ? - COLLECT AND REPORT STATISTICS

             TYPE 2 ? - COLLECT AND REPORT STATISTICS

         OTHERWISE INTERNAL ̲ERROR (GIVE ̲UP)








































                   FIGURE 4.2.2.4.11-1


4.2.2.4.12   L̲O̲G̲ ̲R̲E̲P̲O̲R̲T̲I̲N̲G̲



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

         Data for logging purposes are collected and reported.



4.2.2.4.12.2 M̲o̲d̲u̲l̲e̲ ̲I̲/̲F̲

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

         a)  LOG ̲REPORTING

         b)  LOG ̲REPORTING (R6)

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

         R6          LINK

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

         None. All destroyed



4.2.2.4.12.3 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 source list.

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

             All external data are defined in 4.1.4/4.2.2.5

             VUS ̲LOG (m)
             INIT ̲AREA
             ACCOUNT
             ANQ ̲OP (m)
             VUS ̲QNAME (m)
             VUS ̲QEL ̲ATTR (m)
             SEND ̲QUEUE (m)
             VUS ̲S2

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

             Refer source list.


         L̲O̲G̲ ̲R̲E̲P̲O̲R̲T̲I̲N̲G̲

         CLEAR ̲LOG ̲COLLECT ̲AREA

         COLLECT LOG DATA

         ANSWER ̲QUEUE OPERATION PENDING ? CANCEL AND WAIT SYSCALL

         CLEAR ANSWER ̲QUEUE

         L̲O̲O̲P̲ (MAX. 2 TIMES)

             SEND ̲REQUEST (LOG ̲DATA) TO LOG ̲PACKAGE

             AWAIT REPLY IN ANSWER QUEUE

             REPLY ACCEPTABLE ? - EXIT LOOP 

             QUEUE ̲ERROR (CONTINUE)

         E̲N̲D̲ ̲L̲O̲O̲P̲


         WAS ANSWER ̲QUEUE OPERATION PENDING ?

                                    INIT ANSWER ̲QUEUE OPERATION
                                    ASSOCIATE TO SEMAPHORE S2




















                   FIGURE 4.2.2.4.12-1


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



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

         This module collects data for status purposes and reports
         to UMAM.



4.2.2.4.13.2 M̲o̲d̲u̲l̲e̲ ̲I̲/̲F̲

         a)  STATUS ̲REPORTING (STATUS ̲TYPE: STATUS OUTG 1..
                                            STATUS ̲DELV)

         b)  STATUS ̲REPORTING (R0, R6)

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

         R0  Status Type  (destr)
         R6  LINK

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

         N/A. All destroyed.



4.2.2.4.13.3 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 source list.

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

             All external data defined in 4.1.4/4.2.2.5

             SEQ ̲REC
             VUS ̲SEND ̲PARAMS (m)
             INPUT ̲CIF
             OUTPUT ̲CIF
             UMAM ̲VERSION
             INIT ̲AREA
             QEL ̲INFORM
             UFCO ̲VAL (m)
             ACCOUNT
             SEND ̲QUEUE (m)
             VUS ̲SEND ̲PARAMS (m)
             PREVIOUS ̲MAINTYPE
             VUS ̲QNAME (m)


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

         SECURITY ̲FAILURE ?  -  EXIT

         CASE STATUS ̲TYPE

             OUTGOING (PREPARATION) ?

             OUTGOING (CONTINUE PREPARATION) ?  -     collect
                                                      status
                     data
             RELEASE ?

             DELIVERY ?


         STATUS TYPE = RELEASE OR DELIVERY ?

                               SEND ̲QEL (BUFFER) TO UMAM

         SEND ̲QEL (PREPARED CIF) TO UMAM



























                   FIGURE 4.2.2.4.13-1


4.2.2.4.14 E̲x̲e̲c̲u̲t̲e̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲



4.2.2.4.14.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

             This module executes the specified function.
             



4.2.2.4.14.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)  EXECUTE ̲FUNCTION (FUNCTION:SEQ ̲FUNCTION
                 ̲TYPE)

             b)  EXECUTE ̲FUNCTION (R0, 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̲

             R0      FUNCTION            (DEST)
             R6      LINK                (DEST)

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

             None

             R0 - R7                              (DEST)



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

                 None


4.2.2.4.14.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 source list

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

                 All external data defined in 4.1.4/4.2.2.5

             INPUT ̲CIF (m)
             OUTPUT ̲CIF (m)
             BACK ̲UP ̲CIF (m)
             APPEND ̲CIF (m)
             UMAM ̲VERSION (m)
             SAR ̲VERSION (m)
             UFCO ̲VAL (m)
             INIT ̲AREA
             HEADER ̲TEXT (m)
             CIF ̲ATTR (m)
             VUS ̲RECV ̲ATTR
             QEL ̲INFORM
             SEQ ̲REC (m)
             ANQ ̲QEL
             ACCOUNT (m)
             PRPM ̲NUMBER

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



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

             A combination of common procedures and/or
             are called dependent of the required function.


         E̲X̲E̲C̲U̲T̲E̲ ̲F̲U̲N̲C̲T̲I̲O̲N̲

         CASE FUNCTION

             NO ̲FUNCTION       EXIT

             FUNCTION 1 ?  - DO FUNCTION 1

             .
             .
             .
             .
             .

             FUNCTION N ? - DO FUNCTION N


         OTHERWISE INTERNAL ̲ERROR (GIVE ̲UP)































                   FIGURE 4.2.2.4.11-1


4.2.2.4.15   T̲E̲P̲ ̲G̲E̲T̲ ̲F̲I̲R̲S̲T̲ ̲C̲I̲F̲



4.2.2.4.15.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

         The purpose of this module is to receive the first
         CIF to which a user has access in a queue.



4.2.2.4.15.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

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

         a)  TEP ̲GET ̲FIRST ̲CIF(NEW ̲CIF: QEL ̲REFERENCE)
                              (CC): ERROR ̲OK

         b)  TEP ̲GET ̲FIRST ̲CIF (R2, R3, 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                          (DEST)

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

         R2      NEW ̲CIF

         R2      CC                             ERROR ̲OK

         R0 - R1, R4 - R7                       (DEST)


4.2.2.4.15.3 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 source list.

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

             All data defined in 4.1.4/4.2.2.5

             SEQ ̲REC (m)
             INPUT ̲CIF (m)
             CURRENT ̲SUBQUEUE
             CURRENT ̲PREC (m)
             VUS ̲RECV ̲ATTR
             CIF ̲ATTR (m)

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

             Refer source list.



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

         Refer fig. 4.2.2.4.15-1


         T̲E̲P̲ ̲G̲E̲T̲ ̲F̲I̲R̲S̲T̲ ̲C̲I̲F̲

         CC2: = OKAY

         TEP ̲RECEIVE ̲FIRST (....) (QEL, CC1)

         CASE CC1

             NOT ̲OPENED ? - SEQ ̲TABLE. VDIA ̲CMD: = NIL

             QUEUE EMPTY ? - DISPLAY ̲ERROR ̲MSG ("QUEUE ̲EMPTY")

                             CALCULATE MENU

             RECEIVED ̲OK ? - INPUT ̲CIF: = QEL

                             GET TRANSACTION AND ITEM NUMBER

             RECEIVE ̲NEXT ? - CC2: = ERROR

         OTHERWISE ? INTERNAL ̲ERROR (GIVE ̲UP)

         RETURN (CC2, QEL)


























                   FIGURE 4.2.2.4.15-1


4.2.2.4.16   T̲E̲P̲ ̲G̲E̲T̲ ̲N̲E̲X̲T̲ ̲C̲I̲F̲



4.2.2.4.16.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 purpose of this procedure is to receive the next
         CIF, to which a user has access.



4.2.2.4.16.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

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

         a)  TEP ̲GET ̲NEXT ̲CIF (RECV ̲QEL: QEL ̲REFERENCE)
                              (OUT ̲QEL:  QEL ̲REFERENCE)

         b)  TEP ̲GET ̲NEXT ̲CIF (R2, R3, 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̲

         R2 RECV ̲QEL                   (DEST)
         R6 LINK                       (DEST)

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

         R2      OUT ̲QEL

         R0-R1, R3-R7                  (DEST)



4.2.2.4.16.3 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 source list.

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

             All external data defined in 4.1.4/4.2.2.5

             SEQ ̲REC (m)
             INPUT ̲CIF (m)
             CURRENT ̲SUBQUEUE
             CURRENT ̲PREC (m)
             VUS ̲RECV ̲ATTR
             CIF ̲ATTR (m)



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

             Refer source list



4.2.2.4.16.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Refer fig. 4.2.2.4.16-1


         T̲E̲P̲ ̲G̲E̲T̲ ̲N̲E̲X̲T̲ ̲C̲I̲F̲

         TEP ̲RECEIVE ̲NEXT (QEL1) (QEL2,CC)

         CASE CC

             NOT ̲OPENED ? - SEQ ̲REC.VDIA ̲COMMAND:= NIL

             QUEUE ̲EMPTY ? - DISPLAY ̲ERROR ̲MSG ("QUEUE EMPTY")

                             CALCULATE ̲MENU

             RECEIVED ̲OK ? - INPUT ̲CIF:= QEL2

                             GET TRANSACTION AND ITEM NUMBER


         OTHERWISE INTERNAL ̲ERROR (GIVE ̲UP)





























                   FIGURE 4.2.2.4.16-1


4.2.2.4.17   T̲E̲P̲ ̲R̲E̲C̲E̲I̲V̲E̲ ̲F̲I̲R̲S̲T̲



4.2.2.4.17.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

         This procedure receives the first item in the queue
         which is specified by the caller.



4.2.2.4.17.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

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

         a)  TEP ̲RECV ̲FIRST            (OUT ̲QEL: QEL ̲REFERENCE,
                                        CC: COMPLETION ̲CODE)
         b)  TEP ̲RECV ̲FIRST (R2,R3,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                  (DEST)

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

         R2      OUT ̲QEL
         R3      CC                    (RECV ̲OK,Q ̲EMPTY,NOT
                                       ̲
                                       OPENED, RECV ̲NEXT)

         R0-R1, R4-R7                  (DEST)



4.2.2.4.17.3 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 source list



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

             All external data defined in 4.1.4/4.2.2.5.

             VUS ̲RECV ̲ATTR (m)
             VUS ̲QNAME (m)
             CURRENT ̲SUBQUEUE (m)
             CURRENT ̲MAINQUEUE
             INIT ̲AREA
             SEC ̲FAILED
             CC (m)
             CURRENT ̲CLASS

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

             Refer source list.



4.2.2.4.17.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         The first QEL in a specified queue is received. If
         the user has access then the referenced CIF will be
         opened. Refer figure 4.2.2.4.17-1


         T̲E̲P̲ ̲R̲E̲C̲E̲I̲V̲E̲ ̲F̲I̲R̲S̲T̲

         DETERMINE QUEUE FROM CURRENT ̲MODE

         L̲O̲O̲P̲

         CASE

             RECEIVE ̲FIRST (QUEUE) (QEL,CC1)

             ERROR ? -   CASE ANALYZE ̲ERROR (CC1)

                            PROFILE ̲CHECK ? CC2:= RECEIVE ̲NEXT

                            QUEUE ̲EMPTY ?   CC2:= QUEUE ̲EMPTY

                            END CASE

             OKAY ? -    CALCULATE ̲FORMAT

                         IS QEL A VIEW ?

                             CASE OPEN ̲VIEW(QEL)(CC3)

                                 ERROR?- CASE ANALYSE ̲ERROR(CC3)
                                             STOPPED ?
                                             DISMANTLE QEL
                                             CC2:=STOPPED
                                         NOT ̲ACCEPTED ?
                                             SECURITY ̲FAILURE !
                                             RETURN (QEL)
                                             CC2=NOT ̲OPENED
                                         END CASE
                                 OKAY ?  CC2:=RECEIVED ̲OK

                             END CASE

                         CC2 NE STOPPED ? - EXIT L̲O̲O̲P̲

         END LOOP

         RETURN QEL AND CC2







                   FIGURE 4.2.2.4.17-1


4.2.2.4.18   T̲E̲P̲ ̲R̲E̲C̲E̲I̲V̲E̲ ̲N̲E̲X̲T̲



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

         Receives the QEL next to one specified as input. If
         subqueue is empty and a mainqueue is specified, then
         the first item in the next subqueue is received.



4.2.2.4.18.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

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

         a)  TEP ̲RECV ̲NEXT (RECV ̲QEL: QEL ̲REFERENCE)
                           (OUT ̲QEL : QEL ̲REFERENCE,CC)

         b)  TEP ̲RECV ̲NEXT (R2, R3, 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̲

         R2      RECV ̲QEL               (DEST)
         R6      LINK                   (DEST)

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

         R2      OUT ̲QEL
         R3      CC                     (RECV ̲OK,Q ̲EMPTY,NOT
                                        ̲OPENED
         R0-R1, R4-R7                   (DEST)


4.2.2.4.18.3 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 source list.

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

             All external data defined in 4.1.4/4.2.2.5

             VUS ̲RECV ̲ATTR (m)
             RECV ̲MAIN
             CURRENT ̲SUBQUEUE
             INIT ̲AREA
             SEC ̲FAILED
             CURRENT ̲CLASS (m)

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

         Refer source list.



4.2.2.4.18.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Refer figure 4.2.2.4.18-1/3


         T̲E̲P̲ ̲R̲E̲C̲E̲I̲V̲E̲ ̲N̲E̲X̲T̲

         DISM: = FALSE

         L̲O̲O̲P̲1̲

             CASE RECEIVE ̲NEXT ̲QEL (RECV ̲QEL)(OUT ̲QEL,CC1)

                 ERROR ? - ERROR ̲HANDLING             (-2)

                 OKAY ? -  OKAY ̲HANDLING              (-3)

             END CASE

             CC NE RECEIVE ̲NEXT ? - EXIT LOOP 13

         E̲N̲D̲ ̲L̲O̲O̲P̲1
































                   FIGURE 4.2.2.4.18-1


   E̲R̲R̲O̲R̲ ̲H̲A̲N̲D̲L̲I̲N̲G̲

   CASE ANALYZE ̲ERROR (CC1)

      PROFILE ̲CHECK ? - DISM=TRUE ? - RETURN(RECV ̲QEL)

                        DISM:= TRUE

                        RECV ̲QEL:= OUT ̲QEL

                        CC:= RECEIVE ̲NEXT

      (SUB-)QUEUE ̲EMPTY ? -   DISM = TRUE ? - RETURN(RECV
                              ̲QEL)

                              DISM:= FALSE

                              RECEPTION FROM MAIN QUEUE
                              ?

                                 L̲O̲O̲P̲2̲

                                    EXIST NEXT SUB
                                    ̲QUEUE ?

                                 CC:= QUEUE ̲EMPTY

                                 EXIT LOOP2

                                    TEP ̲RECEIVE ̲FIRST(..)
                                    (OUT ̲QEL,CC) FROM THIS SUBQUEUE

                                    CC = (SUB-) QUEUE EMPTY ?

                                    EXIT LOOP2

                              E̲N̲D̲ ̲L̲O̲O̲P̲ ̲2̲

                              CC = RECEIVE ̲NEXT ? - DISM:= TRUE
                                                    RECV ̲QEL:=OUTQEL

                           CC:= QUEUE ̲EMPTY

                           END CASE







                            FIGURE 4.2.2.4.18-2


   O̲K̲A̲Y̲ ̲H̲A̲N̲D̲L̲I̲N̲G̲

   CALCULATE ̲FORMAT ( ) (CC2)

   CC2 = ERROR ? - CC:= RECEIVE ̲NEXT

   IS OUT ̲QEL A VIEW ? - CASE OPEN ̲VIEW(OUT ̲QEL)(CC3)

                            ERROR ? - CASE ANALYZE
                          ̲ERROR (CC3)

                                          STOPPED?
                                         ̲CC:= RECEIVE
                                         ̲NEXT

                                                                 
                                                                 
                                                                 
                                                                 
                                                                 
                                                                 
                                                                 DISMANTLE(OUT
                                                                 ̲QEL)

                            NOT ̲ACCEPTED ? -CC:=NOT
                          ̲OPENED

                                             SECURITY
                                 FAILURE

   DISM = TRUE?                                                  DISM
                                                                 =
                                                                 TRUE
                                                                 ?
                                                                 -
      RETURN (RECV ̲QEL)                                          
                                                                 
                                                                 
                                                                 RETURN(RECV
                                                                 ̲QEL)

   CC:= RECEIVED OK

                                                                 RETURN
                                                                 (OUT
                                                                 ̲QEL)

                    OKAY ? - DISM = TRUE ? - RETURN
                    (RECV ̲QEL)

                             CC:= RECEIVED ̲OK

   END CASE



















               FIGURE 4.2.2.4.18-3