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

⟦553b1fc7c⟧ Wang Wps File

    Length: 39769 (0x9b59)
    Types: Wang Wps File
    Notes: CPS/SDS/038               
    Names: »1910A «

Derivation

└─⟦6d69be3b6⟧ Bits:30006113 8" Wang WCS floppy, CR 0178A
    └─ ⟦this⟧ »1910A « 

WangText



 …06… …07……1f……0c……1f……02……1f……07……1e……0b……1e……00……1e……05……1d……09……1d……0a……1d……0c……1d……0d……1d……0e……1d……02……1d……07……1c……0c……1c……0f……1c…



…02…CPS/SDS/038

…02…JHH/820514…02……02…
MSO VDU
DETAILED DESIGN SPECIFICATION…02……02…CAMPS








4.2.2    M̲S̲O̲ ̲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̲

         Message S̲e̲rvice F̲unction C̲o̲ntrol (SEFCO) subpackage
         performs the control of all user MSO transactions.
          Furthermore, SEFCO performs the direct control of
         the VDU dialogue.



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 following functions are included in this subpackage:

         -   System control

         -   Transaction accounting

         -   Transaction creation

         -   Format sequence functions

         -   Error Handling

         Fig. 4.2.2.1-1 presents the functional breakdown.





                    Figs. 4.2.2.1-1/5


4.2.2.1.1    S̲y̲s̲t̲e̲m̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲1̲.̲0̲)̲

         The system control functions are those which indirectly
         involve the SSC package. The commands are received
         from SEVCO.

         a)  Initialization (1.1)

             Executes the function to be performed after load
             of software and which must be executed before normal
             operation can be initiated. Depending on the type
             of initialization, different actions are taken.

             An initialization command is sent to SEDIA.

         b)  Start-Up (1.2)

             Executes the function to be performed after STET:
             The command validation table reflecting the user
             capability is defined.

         c)  Close-Down (1.3)

             This function provides the SEFCO with the capability
             of performing the following functions:

             -   STET
             -   Block terminal
             -   Order close-down.


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

         The transaction accounting functions are those concerning
         log and statistics.

         a)  Collect Data (2.1)

             The data which are used for log and other purposes
             are collected from sequence table. The administration
             field of the CIF and in the transaction ID. There
             exists no special collecting procedures but all
             data which are pertinent for SEFCO will be collected
             from those areas .



         b)  Log Reporting (2.2)

             The log reporting functions are those required
             to report final log records. The data which are
             required in a log record are extracted from the
             sequence table, the administration field of the
             CIF and in the transaction ID.



4.2.2.1.3    T̲r̲a̲n̲s̲a̲c̲t̲i̲o̲n̲ ̲C̲r̲e̲a̲t̲i̲o̲n̲ ̲(̲3̲.̲0̲)̲

         The transaction creation group includes all the functions
         to be performed before a transaction may be started.

         a)  Receive and Validate (3.1)

             Function keys entered by a user are received from
             the VDU. The received function key is validated
             against a function key bit mask.

             There are two bit masks.

             Bit mask (1) reflects the function keys which are
             allowed at the moment.

             Bit mask (2) reflects the function keys which will
             change the format sequence.

         b)  Define Next Function Key (3.2)

             If a function key must be followed by another,
             this is defined (i.e. RETURN shall follow COMMAND).

         c)  Receive Command Line (3.3)

             The contents of the VDU command line are received
             via the format handler.

         d)  Validate Command Line (3.4)

             The contents of the command line are validated.
             A command is validated against the command validation
             table. 

             Parameters are checked to be within the correct
             range.



         e)  Display Response Message (3.5)

             These functions display a response message in the
             VDU response line.

         f)  Execute Function Key

             The functions associated with the received function
             key are performed and the format sequence is changed.

         g)  Execute Command (3.7)

             The sequence table key is looked up in the command
             validation table and the format sequence is started.

         h)  Assign Transaction Number (3.8)
             Allocates next transaction no. for this terminal.



4.2.2.1.4    F̲o̲r̲m̲a̲t̲ ̲S̲e̲q̲u̲e̲n̲c̲e̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲ ̲(̲4̲.̲0̲)̲

         The format sequence functions are those functions which
         are called from the format sequence table.

         This table makes it possible to drive the MMI in an
         automatic and flexible manner.

         It defines for each screen format:

         -   Allowed commands and function keys

         -   Functions to be called corresponding to commands/FC
             ̲ Keys

         -   LOG, SAR reporting required

         -   Cursor position

         -   Command to SEDIA

         -   Subsequent sequence record to be executed





4.2.2.1.4.1 S̲t̲a̲r̲t̲ ̲E̲x̲e̲c̲u̲t̲i̲o̲n̲ ̲(̲4̲.̲1̲)̲

         The start execution functions are those which must
         be performed before a format is presented for a user.

         a)  Create CIF /Buffer (4.1.1)

             These functions are those used to interface to
             the message management system.

         b)  Request CIF (4.1.2)

             If a continue preparation command is received,
             then the referenced CIF is fetched from the preparation
             database.

             If a receive command is received, then the first
             CIF in the corresponding queue is fetched.

         c)  Update VDU Header (4.1.3)

             These functions update the VDU header fields, classification
             and terminal function.

         d)  Display Error Code (4.1.4)

             These functions display a response message in the
             VDU response line.

         e)  Determine Message Type (4.1.5)

             These functions determine the format which shall
             be used for a message.





4.2.2.1.4.2 S̲t̲o̲p̲ ̲E̲x̲e̲c̲u̲t̲i̲o̲n̲ ̲(̲4̲.̲2̲)̲

         The stop execution functions are those which must be
         performed when a user gives up access to a CIF.

         a)  Dismantle CIF / Buffer (4.2.1)

             These functions are those used to interface to
             the message management system.

         b)  Update Status (4.2.2)

             The outgoing message status is updated.The message
             under preparation is returned to the preparation
             database.

         c)  Update VDU Header (4.2.3)

             These functions update the VDU header fields, classification
             and terminal function.



4.2.2.1.4.3 Q̲u̲e̲u̲e̲ ̲R̲e̲q̲u̲e̲s̲t̲s̲ ̲(̲4̲.̲3̲)̲

         The queue request functions are those concerning the
         reception of messages.

         a)  Receive (4.3.1)

             The first CIF to which the requestor has access
             is received from a given queue.

         b)  Delete (4.3.2)

             This function removes a CIF from a queue.

         c)  Keep (4.3.3)

             This function returns a CIF to a queue.

         d)  Keep and Present next (4.3.4)

             This function returns a CIF to the queue from which
             it was received. The next CIF to which the requestor
             has access is returned.



         e)  Delete and Present next (4.3.5)

             This function removes a CIF from the queue from
             which it was received. The next CIF to which the
             requestor has access is returned.



4.2.2.1.4.4 R̲e̲q̲u̲e̲s̲t̲s̲ ̲t̲o̲ ̲C̲A̲M̲P̲S̲ ̲S̲y̲s̲t̲e̲m̲ ̲(̲4̲.̲4̲)̲

         The request functions are those concerning the treatment
         of messages (CIFs) and requests (buffers).

         a)  Send for Conversion (4.4.1)

             The message is sent for conversion and depending
             on 
             the current mode and the conversion result a new
             message/the same message or a menu is displayed.

         b)  Retrieve (4.4.2)

             A retrieve request is sent to SAR and the retrieved
             CIF and/or a response message is displayed.

         c)  Print (4.4.3)

             The CIF currently displayed on the VDU is sent
             to the associated printer, or the atomal printer.

         d)  Defer (4.4.4)

             The preparation is terminated and the CIF is sent
             to the preparation database.

         e)  Status Request (4.4.5)

             A status request is sent to UMAM and the received
             CIF is displayed.



         f)  Edit / Delete Requests (4.4.6)

             A request is sent to UMAM and the referenced CIF
             or a response message is displayed.





4.2.2.1.5    E̲r̲r̲o̲r̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲

         The error handling function is separated into two parts:

         a)  Q ̲ERROR (5.1)

         This function handles error due to failure in communication
         between SEFCO and its queues and decides whether or
         not the processing may continue.

         b)  Internal (5.2)

             This function handles errors due to failure in
             communication between the subpackages communicating
             with SEFCO, and decides whether or not the processing
             may continue.



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

         The SEFCO subpackage consists of one coroutine with
         operation semaphore S2 as the main waiting point.

         The input to SEFCO will be a command which is received
         from SEVCO, SEDIA, SETR, the answer queue or the VDU.

         Each command will constitute a main function and is,
         as well as major function, implemented as a module.

         Furthermore some common procedures and module components
         exist.

         Refer figure 4.2.2.2.1-l.









                    Figs. 4.2.2.2-1/2


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̲



4.2.2.3.1    D̲a̲t̲a̲ ̲F̲l̲o̲w̲

         The HIPO diagrams overleaf show the data flow of SEFCO.



4.2.2.3.2    C̲o̲n̲t̲r̲o̲l̲ ̲L̲o̲g̲i̲c̲

         The control logic of SEFCO is shown in the module-tree
         in figure 4.2.2.3-1 and -2








                   Diag. ID: 4.2.2.3/24







                      Fig. 4.2.2.3-1

                              4.2.2.3-2


4.2.2.4  M̲o̲d̲u̲l̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         SEFCO ̲MAIN                     (4.2.2.4.1)
         RESTART ̲SEFCO                  (4.2.2.4.2)
         MSOS ̲ANSWER ̲Q ̲PROCESSING       (4.2.2.4.3)
         MSOS ̲FC ̲KEY ̲PROCESSING         (4.2.2.4.4)
         SEVCO ̲CMD ̲PROCESSING           (4.2.2.4.5)
         SEDIA ̲CC ̲PROCESSING            (4.2.2.4.6)
         SETR ̲OP ̲PROCESSING             (4.2.2.4.7)
         MSOS ̲IN ̲OUT ̲LINE               (4.2.2.4.8)
         MSOS ̲CMD ̲PENDING               (4.2.2.4.9)
         MSOS ̲DISP ̲RESP ̲MSG             (4.2.2.4.10)
         MSOS ̲SEQUENCE                  (4.2.2.4.11)
         EXECUTE ̲FUNCTION               (4.2.2.4.l2)


4.2.2.4.1    S̲E̲F̲C̲O̲ ̲M̲A̲I̲N̲



4.2.2.4.1.1 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)  SEFCO ̲MAIN
         b)  SEFCO ̲MAIN (R6)

         This module is only called by Coroutine Monitor.

         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̲

         None

         R0 - R7                        (DEST)



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





4.2.2.4.l.3.l C̲L̲E̲A̲R̲ ̲A̲N̲S̲W̲E̲R̲

         Dismantle QEL's in answer queue.



4.2.2.4.l.3.2 D̲i̲s̲p̲l̲a̲y̲ ̲m̲a̲x̲ ̲C̲l̲a̲s̲s̲i̲f̲i̲c̲a̲t̲i̲o̲n̲ ̲

         In the VDU header classification field is the minimum
         classification shared between the process-classification
         and the terminal displayed.CURRENT ̲CAB and CURRENT
         ̲CLASS are updated with data from INIT ̲AREA.



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̲s̲

             FIELD ̲DESCRIPTOR ̲TYPE      refer CPS/DBD/001
             FC ̲KEY                     refer CPS/DBD/00l
             SEVCO ̲CMD ̲TYPE             refer 4.l.4
             SEQUENCE ̲FORMAT ̲NO ̲TYPE    refer 4.2.2.5
             SEQUENCE ̲CODE ̲NO ̲TYPE      refer 4.2.2.5
             SEFCO ̲CC ̲TYPE              refer 4.l.4
             MSOS ̲CO ̲OP ̲TYPE            refer 4.1.4
             CLASSIFICATION ̲TYPE        refer CPS/DBD/00l
             IDENT ̲TYPE                 refer 4.1.4
             QEL ̲ATTRIBUTES             refer CPS/DBD/001
             QEL ̲REFERENCE              refer CPS/DBD/001
             USER ̲CAPABILITY ̲TYPE       refer CPS/DBD/001
             QUEUE ̲REFERENCE            refer CPS/DBD/001
             INTERNAL ̲ERROR ̲TYPE        refer 4.l.4

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

             CURRENT ̲MODE (m)           refer 4.l 4
             MSOS ̲S1 (m)                refer 4.1.4
             MSOS ̲S2                    refer 4.1.4
             MSOS ̲S3 (m)                refer 4.1.4
             SEVCO ̲OP                   refer 4.1.4
             FC ̲KEY ̲OP (m)              refer 4.1.4
             INIT ̲AREA (m)              refer 4.l.4
             CLOSE ̲DOWN ̲FLAG (m)        refer 4.2.2.5
             USER ̲ACTIVE ̲FLAG (m)       refer 4.l.4
             SEQUENCE ̲FORMAT ̲NO (m)     refer 4.2.2.5


             MSOS ̲ARRQ                  refer 4.1.4                VDU
                                                                   ̲SPLIT
                                                                   ̲FLAG refer
                                                                        4.l.4
             SEQUENCE ̲CODE ̲NO (m)       refer 4.2.2.5
             START ̲FLAG (m)             refer 4.2.2.5
             FIELD ̲DESCRIP (m)          refer 4.l.4
             CURRENT ̲CLASS (m)          refer 4.l.4
             SPLIT ̲DIGIT                refer 4.2.2.5
             INT ̲ERROR ̲INF (m)          refer 4.l.4
             ANQ ̲OP  (m)                refer 4.1.4
             ANQ ̲ATTR(m)                refer 4.2.2.5
             ANQ ̲QEL                    refer 4.2.2.5
             START ̲FLAG (m)             refer 4.1.4
             SPLIT ̲DIGIT (m)            refer 4.1.4
             HEADER ̲IFCB                refer 4.1.4

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

             VAR MSOS ̲OP                INTEGER

             None



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

         Commands received from SEVCO or SEDIA are analysed.
         The following actions are taken:

         Initialization and restart and close down cmds before
         system starts is performed and cmds are signalled to
         SEDIA.

         Two system calls are performed in order to open for
         input from Answer Queue and FC ̲key.

         Unknown QEL from Answer Q is sent to SSC.

         A loop is entered in order to distribute input from
         Answer Queue, FC ̲keys, SEVCO, SEDIA and SETR to modules
         which are taken over for further treatment.

         System errors will be treated by two Error Procedures,
         which are common to all modules within MSOP.


         SEFCO ̲START

         WAIT ̲OPSEM(MSOS ̲S2)(MSOS ̲OP): OK

         CASE MSOS ̲OP ̲ID (1)

             SEVCO ̲IDENT? CASE SEVCO ̲OP.CMD OF SEVCO ̲CMD ̲TYPE

                         INIT ̲SEFCO ̲CMD? V̲D̲U̲ ̲I̲N̲I̲T̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲)̲

                                        MOVE INIT ̲SEFCO ̲CC TO
                                        SEVCO ̲OP.CMD

                         RESTART ̲SEFCO ̲CMD?R̲E̲S̲T̲A̲R̲T̲ ̲SEFCO ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲2̲)̲
                                           MOVE RESTART ̲SEFCO
                                        ̲CC TO 
                                           SEVCO ̲OP.CMD

                         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

                     MOVE SEFCO ̲IDENT TO SEVCO ̲OP.OP ̲ID(1)

                     SIGNAL ̲OPSEM(MSOS ̲S1, SEVCO ̲OP)(CC): OK

             OTHERWISE?  M̲S̲O̲S̲ ̲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̲T̲A̲R̲T̲ ̲L̲O̲O̲P̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲2̲)̲

         CLOSE ̲DOWN LOOP

             WAIT ̲OPSEM(MSOS ̲S2)(MSOS ̲OP): OK

         END CLOSE ̲DOWN LOOP




                    FIGURE 4.2.2.4.1-1


   START LOOP

   SET CLOSE ̲DOWN ̲FLAG = FALSE

   WAIT ̲LOOP

       WAIT ̲OPSEM(MSOS ̲S2)(MSOS ̲OP): OK

       CASE MSOS ̲OP.OP ̲ID (1) OF

         SEVCO ̲IDENT? S̲E̲V̲C̲O̲ ̲S̲T̲A̲R̲T̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲4̲)̲

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

       END CASE

       VCO ̲OP.CMD EQ START ̲SEFCO ̲CMD OR CLOSE ̲DOWN ̲SEFCO
                                         CMD?     EXIT
                                         WAIT ̲LOOP
   END WAIT ̲LOOP 

       CLOSE ̲DOWN ̲FLAG EQ TRUE?


       C̲L̲E̲A̲R̲ ̲A̲N̲S̲W̲E̲R̲ ̲Q̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲.̲3̲.̲1̲)̲

       CASE INIT ̲RECEIVE ̲FIRST ̲QEL(WAIT, ANQ, ANQ ̲OP)
                                         (CC): ERROR ̲OK

          ERROR? ANALYSE ̲ERROR(CC,0) 

          OK?  ASSOCIATE(MSOS ̲S2,ANQ ̲OP): OK

       END CASE

       CASE INIT ̲RECEIVE ̲CONTROL(HEADER ̲IFCB, FC ̲KEY ̲OP)
                                         (CC): ERROR ̲OK

           ERROR? ANALYSE ̲ERROR(CC,0)

           OK? -  MOVE HEADER ̲IFCB TO SPLIT ̲DIGIT

                  ASSOCIATE(MSOS ̲S2,FC ̲KEY ̲OP): OK

                  U̲S̲E̲R̲ ̲O̲N̲ ̲L̲O̲O̲P̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲3̲)̲

       END CASE

       CLOSE ̲DOWN ̲FLAG EQ TRUE?    EXIT START LOOP

   END START LOOP
                 F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲2̲


   USER ON LOOP

       WAIT OPSEM(MSOS ̲S2)(MSOS ̲OP): OK

       VDU ̲SPLIT ̲FLAG EQ TRUE?  MSOS ̲OP.IDENT EQ SEVCO
       ̲IDENT? ̲S̲E̲V̲C̲O̲ ̲C̲M̲D̲
                                         P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲5̲)̲

       CASE MSOS ̲OP.OP ̲ID (1) OF:

         ANQ ̲IDENT? MSOS ̲A̲N̲S̲W̲E̲R̲ ̲Q̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲)̲

                     CASE INIT ̲RECEIVE ̲FIRST ̲QEL(WAIT,
                     ANQ, ANQ ̲OP)
                                               (CC): ERROR
                                         ̲OK

                        ERROR?  ANALYSE ERROR(CC,0) 

                        OK? ASSOCIATE(MSOS ̲S2,ANQ ̲OP):
                        OK

                     END CASE

         FC ̲KEY ̲IDENT?  M̲S̲O̲S̲ ̲F̲C̲ ̲K̲E̲Y̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲4̲)̲

                        CASE INIT ̲RECEIVE ̲CONTROL(SPLIT
                        ̲DIGIT,
                                         FC ̲KEY ̲OP)(CC):
                                         ERROR ̲OK

                           ERROR?  ANALYSE ̲ERROR(CC,0)
                        

                           OK? ASSOCIATE(MSOS ̲S2,FC ̲KEY
                        ̲OP)

                        END CASE

         SEVCO ̲IDENT? S̲E̲V̲C̲O̲ ̲C̲M̲D̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲5̲)̲

         SEDIA ̲IDENT? S̲E̲D̲I̲A̲ ̲C̲C̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲6̲)̲

         SETR ̲IDENT?  S̲E̲T̲R̲ ̲O̲P̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲7̲)̲

         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

       CLOSE ̲DOWN ̲FLAG EQ TRUE?   EXIT USER ̲ON ̲LOOP

       USER ̲ACTIVE ̲FLAG EQ FALSE?  EXIT USER ̲ON ̲LOOP

   END USER ON LOOP


   C̲A̲N̲C̲E̲L̲ ̲S̲Y̲S̲T̲E̲M̲ ̲C̲A̲L̲L̲S̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲l̲.̲-̲5̲)̲

                 F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲3̲


   SEVCO ̲START ̲PROCESSING

   CASE SEVCO ̲OP.CMD OF SEVCO ̲CMD ̲TYPE

       CLOSE ̲DOWN ̲SEFCO ̲CMD?  MOVE SEFCO ̲IDENT TO SEVCO
       ̲OP.OP ̲ID (1)

                              MOVE CLOSE ̲DOWN ̲SEFCO ̲CC
                              TO SEVCO ̲OP.CMD

                              SIGNAL ̲OPSEM(MSOS ̲S1, SEVCO
                              ̲OP):OK

                              SET CLOSE ̲DOWN ̲FLAG = TRUE


       START ̲SEFCO ̲CMD?   D̲I̲S̲P̲L̲A̲Y̲ ̲M̲A̲X̲ ̲C̲L̲A̲S̲S̲I̲F̲I̲C̲A̲T̲I̲O̲N̲ ̲(̲4̲.̲,̲2̲.̲2̲.̲4̲.̲l̲.̲3̲.̲2̲

                          SEQUENCE ̲FORMAT ̲NO = MENU -
                        2

                          SEQUENCE ̲CODE ̲NO = START

                          M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲l̲l̲)̲

                          SET USER ̲ACTIV ̲FLAG = TRUE

                          SET START ̲FLAG = TRUE

       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




   CANCEL ̲SYSTEM ̲CALLS


   CANCEL ̲SYSTEM ̲CALL(ANQ ̲OP):OK

   CASE WAIT ̲SYSTEM ̲CALL(ANQ ̲OP)(ANQ ̲ATTR,ANQ ̲QEL,

                              SUBQUEUE,CC):ERROR ̲OK

       ERROR?    CASE ANALYZE ̲ERROR (CC,l,CANCELLED):(LBl)

                     LBl?

                 END CASE

       OK?

   END CASE

   CANCEL ̲SYSTEM ̲CALL(FC ̲KEY ̲OP):OK

   CASE WAIT ̲SYSTEM ̲CALL(FC ̲KEY ̲OP)(SPLIT ̲DIGIT,

                        MSO ̲FC ̲KEY,CC):ERROR ̲OK

         ERROR?  CASE ANALYZE ̲ERROR(CC,l,CANCELLED):(LBl)

                     LBl?

                 END CASE

         OK?

   END CASE











                  fig.4.2.2.4.l-5



4.2.2.4.2    R̲E̲S̲T̲A̲R̲T̲ ̲S̲E̲F̲C̲O̲



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̲

         The purpose of this module is to initialize the Format
         Handler and to send the contents of the Answer Queue
         to UMAM.



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)  RESTART ̲SEFCO

         b)  RESTART ̲SEFCO (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̲

         None

         R0 - R7                         (DEST)



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

         N/A 



4.2.2.4.2.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̲

             QEL ̲ATTRIBUTES:             refer CPS/DBD/001
             QEL ̲REFERENCE:              refer CPS/DBD/001
             SEND ̲PARAMS:                refer CPS/DBD/001
             USER ̲ACTION ̲TYPE:           refer CPS/DBD/001
             QUEUE ̲ERROR ̲TYPE            refer 4.l.4



             MSOS ̲SUBPROCESS ̲GROUP ̲CAP     refer CPS/DBD/001
             SVUP ̲MSOS ̲MDOS ̲SYSTEM ̲Q ̲GROUP refer CPS/DBD/001
             QELEMENT ̲MAIN ̲TYPE          refer CPS/DBD(001
             MESSAGE ̲SUBTYPE             refer CPS/DBD/001
             QUEUE ̲REFERENCE             refer CPS/DBD/00l
             MSO ̲CO ̲OP ̲TYPE              refer 4.1.4
             IDENT ̲TYPE                  refer 4.1.4
             PREP ̲SUB                    refer CPS/SDS/039 para
                                         4.1.4

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

             MSOS ̲SYS ̲Q                  refer CPS/DBD/001
             SVUP ̲UMAM ̲COLQ              refer CPS/DBD/001
             MSOS ̲ARRQ                   refer 4.1.4
             MSOS ̲S3 (m)                   refer 4.1.4
             ANQ ̲OP                      refer 4.1.4
             MSOS ̲SEND ̲PARAMS(m)         refer 4.1.4
             ANQ ̲ATTR                    refer 4.2.2.5
             ANQ ̲QEL                     refer 4.2.2.5
             SEFCO ̲IDENT                 refer 4.l.4
             Q ̲ERROR ̲INF (m)             refer 4.l.4
             UMAM ̲COLLECT                refer 4.2.2.5
             Q ̲REFERENCE                 refer 4.1.4

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

             None




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

         This module consists of a loop, which receives QEL's
         from The Answer Queue and sends them. The destination
         is the PREP ̲Q within UMAM.



   RESTART ̲SEFCO

   Q ̲REFERENCE.MAINQ = MSOS ̲ARRQ

   Q ̲REFERENCE.SUBQ = 1

   QUEUE LOOP

         CASE RECEIVE ̲FIRST ̲QEL(WAIT = FALSE,Q ̲REFERENCE)

                              (ANQ ̲ATTR,ANQ ̲QEL,SUBQUEUE,CC):ERROR
                             ̲OK

             ERROR ? CASE ANALYSE ̲ERROR (CC,2,QEL ̲PROFILE
             ̲CHECK,

                                        QUEUE ̲EMPTY):(LB1,
                                   LB2)

                     LB1?

                     LB2? EXIT QUEUE ̲LOOP

                 END CASE

             OK?

         END CASE

         Q̲E̲L̲ ̲S̲O̲R̲T̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲2̲-̲2̲)̲

         S̲E̲N̲D̲ ̲T̲O̲ ̲P̲R̲E̲P̲Q̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲2̲-̲3̲)̲

         S̲A̲V̲E̲ ̲V̲I̲E̲W̲E̲T̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲2̲-̲4̲)̲

       END QUEUE ̲LOOP

       V̲D̲U̲ ̲I̲N̲I̲T̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲)̲

       END RESTART ̲SEFCO







                 Figure 4.2.2.4.2-1


   QEL ̲SORT 

   CASE ANQ ̲ATTR.HEADER.MAINTYPE OF QELEMENT ̲MAIN ̲TYPE

       INITIAL ̲MAINTYPE? ANQ ̲ATTR.HEADER.MAINTYPE = TEP
       ̲INTERNAL
                         ANQ ̲ATTR.HEADER.SUBTYPE = UNKNOWN
                       ̲STATUS ̲                                          
                                                                        
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              
                                                                              CHANGE

       PLAINDRESS ̲SERVICE,

       ABB ̲SERVICE,

       ABB ̲PLAINDRESS ̲SERVICE?  CASE ANQ ̲ATTR.HEADER.SUBTYPE
                                OF                                              
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                QELEMENT
                                                                                ̲SUBTYPE


                                   FOR ̲CONTINUED ̲PREP?

                                   OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲
                                   ̲E̲R̲R̲O̲R̲
                                              (G̲I̲V̲E̲ ̲U̲P̲)̲
                                        ̲(̲4̲.̲1̲.̲5̲.̲l̲

                                END CASE



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

END CASE




                 FIGURE 4.2.2.4.2-2



   SEND ̲TO ̲PREP ̲Q

   Q ̲REFERENCE.MAINQ = UMAM ̲COLLECT

   Q ̲REFERENCE.SUBQ = PREP ̲SUB

   CASE SEND(MSOS ̲SEND ̲HEADER = ANQ ̲ATTR.HEADER,ANQ ̲QEL,
   Q ̲REFERENCE)
             (MSOS ̲SEND ̲PARAMS, CC): ERROR ̲OK

       ERROR? ANALYSE ̲ERROR(CC,0)

       OK?

   END CASE

   END SEND ̲TO ̲PREP ̲Q





                 FIGURE 4.2.2.4.2-3



   SAVE ̲VIEWET

   CASE SAVE ̲VIEW(DISMANTLE, ANQ ̲QEL)(CC): ERROR ̲OK

       ERROR? ANALYSE ̲ERROR(CC,0)

       OK?

   END CASE





                 FIGURE 4.2.2.4.2-4



4.2.2.4.3    M̲S̲O̲S̲ ̲A̲N̲S̲W̲E̲R̲ ̲Q̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲



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̲

         The purpose of this module is to receive items placed
         in the Answer Queue, analyse the input and call
         MSOS ̲SEQUENCE(4.2.2.4.11)



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)  MSOS ̲ANSWER ̲Q ̲PROCESSING

         b)  MSOS ̲ANSWER ̲Q ̲PROCESSING   (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̲

         None

         R0 - R7                        (DEST)



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



4.2.2.4.3.3.1 E̲D̲I̲T̲ ̲A̲N̲S̲ ̲V̲A̲L̲:̲

             This module component analyze answers to edit request
             sent to UMAM. Refer fig. 4.2.2.4.3.3-21 and 4.2.2.4.3-22



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̲

             MESSAGE ̲SUBTYPE            refer CPS/DBD/001
             TEP ̲INTERNAL ̲SUBTYPE       refer CPS/DBD/001
             UMAM ̲RESPONSE ̲TYPE         refer CPS/DBD/001
             STATUS ̲SUBTYPE             refer CPS/DBD/001
             ACK ̲SUBTYPE                refer CPS/DBD/001
             UNIDENTIFIED ̲ITEM ̲SUBTYPE  refer CPS/DBD/001
             EDIT ̲ANS ̲TYPE              refer CPS/DBD/001
             ANQ ̲OP ̲PENDING             refer 4.2.2.5
             SEND ̲PARAMS                refer CPS/DBD/001
             HEADER ̲TEXT ̲TYPE           refer 4.2.2.5
             MSOS ̲CO ̲OP ̲TYPE            refer 4.1.4
             QEL ̲ATTRIBUTES             refer CPS/DBD/001
             QEL ̲REFERENCE              refer CPS/DBD/001
             QUEUE ̲REFERENCE            refer CPS/DBD/00l
             SEQUENCE ̲FORMAT ̲NO ̲TYPE    refer 4.2.2.5
             SEQUENCE ̲CODE ̲NO ̲TYPE      refer 4.2.2.5
             QUEUE ̲ERROR ̲TYPE           refer 4.l.4
             QELEMENT ̲MAIN ̲TYPE         refer CPS/DBD/001




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

             MSOS ̲IMQ                   refer 4.1.4
             HEADER ̲TEXT (m)            refer 4.2.2.5
             MSOS ̲SEND ̲PARAMS (m)       refer 4.1.4
             ANS ̲FLAG (m)               refer 4.2.2.5
             INPUT ̲CIF (m)              refer 4.l.4
             MSO ̲RECV ̲ATTR              refer 4.1.4
             ANQ ̲OP(m)                  refer 4.1.4
             ANQ ̲ATTR                   refer 4.2.2.5
             ANQ ̲QEL                    refer 4.2.2.5
             SEQUENCE ̲FORMAT ̲NO (m)     refer 4.2.2.5
             Q ̲ERROR ̲INF (m)            refer 4.l.4
             SEQUENCE ̲CODE ̲NO (m)       refer 4.2.2.5
             Q ̲REFERENCE (m)            refer 4.1.4

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

         VAR FAILURE ̲FLAG               BOOLEAN

         INIT FAILURE ̲FLAG = FALSE
         VAR JUMP ̲FLAG                  BOOLEAN
         INIT JUMP ̲FLAG = FALSE



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

         QEL maintype, subtype and flags are analyzed and in
         accordance with the result SEQUENCE ̲FORMAT ̲NO and SEQUENCE
         ̲CODE ̲NO are given constant values before entering MSOS
         ̲SEQUENCE (4.2.2.4.ll).

         Unexpected QEL's are reported.





   MSOS ̲ANSWER ̲Q ̲PROCESSING

   CASE SYS ̲WAIT (ANQ ̲OP)(ANQ ̲ATTR,ANQ ̲QEL,SUBQUEUE,CC):ERROR
   ̲OK

       ERROR? CASE ANALYZE ̲ERROR(CC,1,PROFILE ̲CHECK):(L1)

                 L1? Q ̲REFERENCE.MAINQ = MSOS ̲IMQ

                     Q ̲REFERENCE.SUBQ = CURRENT ̲SUBQ

                     CASE SEND ̲QEL(MSOS ̲SEND ̲PARAMS =
                     ANQ ̲ATTR,

                                   ANQ ̲QEL,Q ̲REFERENCE)(MSOS
                     ̲SEND ̲                                                  
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            PARAMS,CC):ERROR
                                                                            ̲OK

                       ERROR? ANALYZE ̲ERROR (CC,0)

                       OK?

                 END CASE

                 D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲ ̲(̲E̲R̲R̲O̲R̲ ̲N̲O̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲

                 SEQUENCE ̲CODE ̲NO = START

                 M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

             END CASE

         OK? M̲S̲O̲S̲ ̲A̲N̲Q̲ ̲Q̲E̲L̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲2̲)̲

   END CASE

   END ANSWER ̲Q ̲PROCISSING










                 Figure 4.2.2.4.3-1


 MSOS ̲ANQ ̲QEL ̲PROCESSING

 FAILURE ̲FLAG = FALSE

 MSO ̲RECV ̲ATTR = ANQ ̲ATTR

 CASE ANQ ̲OP.CMD OF ANQ ̲OP ̲PENDING

    M ̲PLAIN ̲SVC ̲EDIT?           P̲L̲A̲I̲N̲D̲R̲E̲S̲S̲ ̲E̲D̲I̲T̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲3̲)̲

    M ̲ABB ̲SVC ̲EDIT?             A̲B̲B̲ ̲P̲L̲A̲I̲N̲D̲R̲E̲S̲S̲ ̲E̲D̲I̲T̲
                                ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲4̲)̲

    M ̲PLAB ̲SVC ̲EDIT?            A̲B̲B̲R̲E̲V̲I̲A̲T̲E̲D̲ ̲E̲D̲I̲T̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲5̲)̲

    M ̲MSG ̲STATUS ̲REQ?           S̲T̲A̲T̲U̲S̲ ̲A̲C̲K̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲6̲)̲

    M ̲DELETE ̲SVC ̲REQ?           S̲V̲C̲ ̲D̲E̲L̲E̲T̲I̲O̲N̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲.̲7̲)̲

    M ̲PLABB ̲SVC ̲ACK?            A̲B̲B̲ ̲P̲L̲A̲I̲N̲D̲R̲E̲S̲S̲ ̲A̲C̲K̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲8̲)̲

    M ̲ABB ̲SVC ̲ACK?              A̲B̲B̲R̲E̲V̲I̲A̲T̲E̲D̲ ̲A̲C̲K̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲9̲)̲

    M ̲LOG ̲ACK?                  L̲O̲G̲G̲I̲N̲G̲ ̲A̲C̲K̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲0̲)̲

    M ̲GARBLE?                   G̲A̲R̲B̲L̲E̲ ̲M̲S̲G̲ ̲A̲C̲K̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲1̲)̲

    M ̲RI?                       R̲I̲ ̲M̲S̲G̲ ̲A̲C̲K̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲2̲)̲

    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

 ANQ ̲OP.CMD = NO ̲PENDING

 END MSOS ̲ANQ ̲QEL ̲PROCESSING


















                Figure 4.2.2.4.3-2


 PLAINDRESS EDIT

 CASE ANQ ̲ATTR.HEADER.MAINTYPE OF QELEMENT ̲MAIN ̲TYPE

    PLAINDRESS ̲

    SERVICE? CASE ANQ ̲ATTR.HEADER.SUBTYPE OF MESSAGE
    ̲SUBTYPE

                 FOR ̲CONTINUED ̲PREP? INPUT ̲CIF = ANQ
                 ̲QEL

                                     SEQUENCE ̲FORMAT
                                ̲NO = CONTI ̲PREPA

                                     SEQUENCE ̲CODE ̲NO
                                = START

                                     M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

                                     HEADER ̲TEXT = CONTINUE
                                ̲PLAIN

                                     U̲P̲D̲A̲T̲E̲ ̲V̲D̲U̲ ̲H̲E̲A̲D̲E̲R̲
                                ̲(̲T̲E̲R̲M̲I̲N̲A̲L̲ ̲                                   
                                                                             
                                                                             
                                                                             
                                                                             
                                                                             T̲E̲X̲T̲
                                                                             ̲F̲I̲E̲L̲D̲,̲C̲U̲R̲R̲E̲N̲T̲
                                                                             ̲C̲L̲A̲S̲S̲)̲         
                                                                                            
                                                                                            
                                                                                            
                                                                                            
                                                                                            (̲4̲.̲2̲.̲2̲.̲6̲.̲1̲8̲)̲

                 OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                 ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

             END CASE

    TEP ̲INTERNAL? E̲D̲I̲T̲ ̲A̲N̲S̲ ̲V̲A̲L̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲2̲1̲)̲

    OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

 END CASE












                Figure 4.2.2.4.3-3


 ABB ̲PLAINDRESS ̲EDIT

 CASE ANQ ̲ATTR.HEADER.MAINTYPE OF QELEMENT ̲MAIN ̲TYPE

    ABB ̲PLAINDRESS ̲

    SERVICE? CASE ANQ ̲ATTR.HEADER.SUBTYPE OF MESSAGE
    ̲SUBTYPE

                 FOR ̲CONTINUED ̲PREP? INPUT ̲CIF = ANQ
                 ̲QEL

                                     SEQUENCE ̲FORMAT
                                     ̲NO = CAPP-1

                                     SEQUENCE ̲CODE ̲NO
                                     = START

                                     M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

                                     HEADER ̲TEXT = CONTINUE
                                     ̲ABB ̲PLAIN

                                     U̲P̲D̲A̲T̲E̲ ̲V̲D̲U̲ ̲H̲E̲A̲D̲E̲R̲
                                     ̲(̲T̲E̲R̲M̲I̲N̲A̲L̲ ̲T̲E̲X̲T̲
                                     ̲F̲I̲E̲L̲D̲,̲C̲U̲R̲R̲E̲N̲T̲ ̲
                                     C̲L̲A̲S̲S̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲5̲)̲

                 OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲,̲ ̲A̲N̲Q̲
                 ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

             END CASE

    TEP ̲INTERNAL? E̲D̲I̲T̲ ̲A̲N̲S̲ ̲V̲A̲L̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲2̲1̲

    OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

 END CASE













                Figure 4.2.2.4.3-4


 ABBREVIATED ̲EDIT

 CASE ANQ ̲ATTR.HEADER.MAINTYPE OF QELEMENT ̲MAIN ̲TYPE

    ABB ̲SERVICE? CASE ANQ ̲ATTR.HEADER.SUBTYPE OF MEDDAGE
    ̲SUBTYPE

                     FOR CONTINUED ̲PREP?

                     INPUT ̲CIF = ANQ ̲QEL

                     SEQUENCE ̲FORMAT ̲NO = CASP-1

                     SEQUENCE ̲CODE ̲NO = START

                     M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

                     HEADER ̲TEXT = CONTINUE ̲ABB ̲SER

                     U̲P̲D̲A̲T̲E̲ ̲V̲D̲U̲ ̲H̲E̲A̲D̲E̲R̲ ̲(̲T̲E̲R̲M̲I̲N̲A̲L̲ ̲T̲E̲X̲T̲
                     ̲F̲I̲E̲L̲D̲,̲H̲E̲A̲D̲E̲R̲ ̲                                           
                                                                             
                                                                             
                                                                             
                                                                             
                                                                             
                                                                             
                                                                             
                                                                             
                                                                             
                                                                             
                                                                             
                                                                             
                                                                             T̲E̲X̲T̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲5̲)

                     OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                     ̲                                                       
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                 END CASE

    TEP ̲INTERNAL? E̲D̲I̲T̲ ̲A̲N̲S̲ ̲V̲A̲L̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲2̲1̲)̲

    OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

 END CASE













                Figure 4.2.2.4.3-5


 STATUS ̲ACK

 CASE ANQ ̲ATTR.HEADER.MAINTYPE OF QELEMENT ̲MAIN ̲TYPE

    STATUS? CASE ANQ ̲ATTR.HEADER.SUBTYPE OF STATUS ̲SUBTYPE

                 OUTGOING ̲SERVICE ̲

                 MSG ̲STATUS?    SEQUENCE ̲CODE ̲NO = START

                                SEQUENCE ̲FORMAT ̲NO =
                                OMS

                                INPUT ̲CIF = ANQ ̲QEL

                                M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

                 OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                 ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                            D̲I̲S̲M̲ ̲(̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲3̲)̲

             END CASE

    OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

               D̲I̲S̲M̲ ̲(̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲3̲)̲

 END CASE

















                Figure 4.2.2.4.3-6


 SVC ̲DELETION

 CASE ANQ ̲ATTR.HEADER.MAINTYPE OF QELEMENT ̲MAIN ̲TYPE

    TEP ̲INTERNAL?CASE ANQ ̲ATTR.HEADER.SUBTYPE OF TEP
    ̲INTERNAL ̲SUBTYPE

                     UMAM ̲ERROR ̲

                     RESP?CASE ANQ ̲ATTR.HAEDER.INF OF
                     DELETE ̲ANS ̲TYPE

                             DELETED? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲
                     ̲M̲S̲G̲ ̲(̲E̲R̲R̲O̲R̲ ̲N̲O̲)̲
                                                   
                                     (̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲

                             CIF ̲NOT ̲FOUND? D̲I̲S̲P̲L̲A̲Y̲
                     ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲
                                        (̲E̲R̲R̲O̲R̲ ̲N̲O̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲

                             OTHERWISE? FAILURE ̲FLAG
                     = TRUE

                                        T̲E̲P̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                                ̲Q̲E̲L̲)̲
                                                   
                                       (̲4̲.̲1̲.̲5̲.̲1̲)̲

                           END CASE

                       OTHERWISE? FAILURE ̲FLAG = TRUE

                            T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                     ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                 END CASE

    OTHERWISE? FAILURE ̲FLAG = TRUE

               T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

 END CASE

 FAILURE ̲FLAG EQ TRUE?

 SEQUENCE ̲CODE ̲NO = UMAM ̲ERROR ̲RESP

 M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

 D̲I̲S̲M̲ ̲(̲A̲N̲Q̲ ̲Q̲E̲L̲)̲ ̲(̲4̲.̲1̲.̲5̲.̲3̲)̲

 END SVC ̲DELETION





                Figure 4.2.2.4.3-7


 ABB ̲PLAINDRESS ̲ACK

 CASE ANQ ̲ATTR.HEADER.MAINTYPE OF QELEMENT ̲MAIN ̲TYPE

    ABB ̲PLAIN ̲

    DRESS ̲SERVICE? CASE ANQ ̲ATTR.HEADER.SUBTYPE OF MESSAGE
    ̲SUBTYPE

                     SUSPENDER ̲
                     DEFERRED?  SEQUENCE ̲CODE.NO = DEF
                                ̲SUS

                                SEQUENCE ̲FORMAT ̲NO =
                                CAPP ̲CONT

                                INPUT ̲CIF = ANQ ̲QEL

                     OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                                FAILURE ̲FLAG = TRUE

                 END CASE

    ACK? CASE ANQ ̲ATTR.HEADER.SUBTYPE OF ACK ̲SUBTYPE

             THP ̲ACK? SEQUENCE ̲CODE ̲NO = ACK ̲CON

                      ANS ̲FLAG = FALSE

             OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                        FAILURE ̲FLAG = TRUE

          END CASE

    OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                  FAILURE ̲FLAG = TRUE

 END CASE

 FAILURE ̲FLAG EQ TRUE

 M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

 END ABB ̲PLAINDRESS ̲ACK





                Figure 4.2.2.4.3-8



 ABBREVIATED ̲ACK

 CASE ANQ ̲ATTR.HEADER.MAINTYPE OF QELEMENT ̲MAIN ̲TYPE

    ABB ̲SERVICE? CASE ANQ ̲ATTR.HEADER.SUBTYPE OF MESSAGE
    ̲SUBTYPE

                     SUSPENDER ̲
                     DEFERRED?  SEQUENCE ̲CODE ̲NO = CASP
                                ̲CONT

                                SEQUENCE ̲FORMAT ̲NO =
                                ABB ̲DEF ̲SUS

                                INPUT ̲CIF = ANQ ̲QEL

                     OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                     ̲                                                       
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                                FAILURE ̲FLAG = TRUE

                 END CASE

    ACK? CASE ANQ ̲ATTR.HEADER.SUBTYPE OF ACK ̲SUBTYPE

             THP ̲ACK? SEQUENCE ̲CODE ̲NO = ACK ̲CON

                      ANS ̲FLAG = FALSE

             OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                        FAILURE ̲FLAG = TRUE

          END CASE

    OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

               FAILURE ̲FLAG = TRUE

 END CASE

 FAILURE ̲FLAG EQ TRUE?

 M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

 END ABBREVIATED ̲ACK






                Figure 4.2.2.4.3-9


 LOGGING ̲ACK

 CASE ANQ ̲ATTR.HEADER.MAINTYPE OF QELEMENT ̲MAIN ̲TYPE

    ACK? CASE ANQ ̲ATTR.HEADER.SUBTYPE OF ACK ̲SUBTYPE

             LOG ̲ACK? CASE ANQ ̲ATTR.HEADER.FLAG OF

                         OK? M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

                        NOK? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                     ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                             M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

                        OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                     ̲                                                       
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            
                                                                            Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                     END CASE

             OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

          END CASE

    OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

 END CASE



















               Figure 4.2.2.4.3-10


 GARBLE ̲MSG ̲ACK
 ANS ̲FLAG = TRUE
 CASE ANQ ̲ATTR.HEADER.MAINTYPE OF QELEMENT ̲MAIN ̲TYPE
    UNIDENTIFIED ̲CCIS,
    UNIDENTIFIED ̲TRC ̲P ̲TO ̲P,
    UNIDENTIFIED ̲NICS ̲TARE,
    UNIDENTIFIED ̲NORMAL ̲PTR,
    UNIDENTIFIED ̲DEDICATED ̲PTR,
    UNIDENTIFIED ̲SCARS? CASE ̲ANQ ̲ATTR.HEADER.SUBTYPE OF UNIDENTIFIED ̲
                                                         ITEM ̲SUBTYPE
                           FOR GABLE ̲
                           CORRECTION? ANQ ̲ATTR.HEADER.INF EQ 80LINES
                                         SEQUENCE ̲FORMAT ̲NO = GA 80
                                     SEQUENCE ̲FORMAT ̲NO = GA 69
                                     INPUT ̲CIF = ANQ ̲QEL
                                     SEQUENCE ̲CODE ̲NO = START
                                     HEADER ̲TEXT = FOR ̲GABLE ̲CORRECT
                                     D̲I̲S̲P̲L̲A̲Y̲ ̲V̲D̲U̲ ̲F̲I̲E̲L̲D̲(̲T̲E̲R̲M̲I̲N̲A̲L̲ ̲T̲E̲X̲T̲ ̲              F̲I̲E̲L̲D̲,̲
                                                                              ̲H̲E̲A̲D̲E̲R̲ ̲T̲E̲X̲T̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲5̲)̲
                                     M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
                                OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲                    
                                                                                         Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
                     END CASE
    ACK? CASE ANQ ̲ATTR.HEADER.SUBTYPE OF ACK ̲SUBTYPE
             THP ̲ACK? SEQUENCE ̲CODE ̲NO = ACK ̲CON
                      ANS ̲FLAG = FALSE
                      M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
             OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
          END CASE
    OTHERWISE?   T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲ ̲(̲4̲.̲1̲.̲5̲.̲1̲)
 END CASE
 END GARBLE ̲MSG ̲ACK
                                   Fig: 4.2.2.4.3-11


 RI ̲MSG ̲ACK

 CASE ANQ ̲ATTR.HEADER.MAINTYPE OF QELEMENT ̲MAIN ̲TYPE

    PLAINDRESS,

    PLAINDRESS ̲DATA? P̲L̲A̲I̲N̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲3̲)̲

    PLAINDRESS ̲ENCRYPTED? P̲L̲A̲I̲N̲C̲R̲Y̲P̲T̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲4̲)̲

    SC ̲PLAINDRESS,

    SC ̲PLAINDRESS ̲DATA,

    SC ̲PLAINDRESS ̲ENCRYPTED,

    SC ̲PLAINDRESS ̲SERVICE? S̲C̲A̲R̲ ̲M̲E̲S̲S̲A̲G̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲5̲)̲

    ABB ̲PLAINDRESS,

    ABB ̲PLAINDRESS ̲DATA? A̲B̲B̲P̲L̲A̲I̲N̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲6̲)̲

    CODRESS?             C̲O̲D̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲7̲)̲

    PLAINDRESS ̲SERVICE? P̲L̲A̲I̲N̲S̲E̲R̲V̲I̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲8̲)̲

    ABB ̲PLAINDRESS ̲SERVICE? A̲B̲B̲P̲L̲A̲I̲N̲S̲E̲R̲V̲I̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲9̲)̲

    ABB ̲SERVICE?            A̲B̲B̲S̲E̲R̲V̲I̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲2̲0̲)̲

    ACK? CASE ANQ ̲ATTR.HEADER.SUBTYPE OF ACK ̲SUBTYPE

             THP ̲ACK? SEQUENCE ̲CODE ̲NO = ACK ̲CON

                      ANS ̲FLAG = FALSE

                      M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲-̲1̲1̲)̲

             OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

          END CASE

    OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

 END CASE

 END RI ̲MSG ̲ACK


               Figure 4.2.2.4.3-12



 PLAIN

 CASE ANQ ̲ATTR.HEADER.SUBTYPE OF MESSAGE ̲SUBTYPE

       FOR RI  ̲

          ASSIGNMENT    ANQ ̲ATTR.
                           HEADER.
                           FLAG.CAMPS ̲ORIGINATED EQ
                     TRUE?

                                    ANQ ̲ATTR.
                                       HEADER
                                       FLAG.READ.
                                       DRESSED EQ
                                       TRUE? SEQUENCE
                                     ̲FORMAT ̲                                  
                                                                              
                                                                              NO=PLAIN
                                                                              ̲READ

                                     SEQUENCE ̲FORMAT
                                     ̲NO=PLAIN

                         ANQ ̲ATTR.
                            HEADER.
                            FLAG ̲READ
                            DRESSED EQ

                            TRUE? SEQUENCE ̲FORMAT ̲NO=PLAIN
                     ̲NO ̲CPS

                         SEQUENCE ̲FORMAT ̲NO=PLAIN ̲CPS
                     ̲NO ̲REA

       OTHERWISE?        M̲S̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                     ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                         SET FAILURE FLAG = TRUE

 END CASE

 FAILURE ̲FLAG EQ TRUE?

 ANS ̲FLAG = TRUE

 SET ̲SEQUENCE ̲CODE ̲NO = START

 INPUT ̲CIF = ANQ ̲QEL

 HEADER ̲TEXT = FOR ̲RI ̲ASSIGN

 M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

 SET FAILURE ̲FLAG = FALSE

 END PLAIN

               Figure 4.2.2.4.3-13


 PLAINCRYPT

 CASE ANQ ̲ATTR.HEADER.SUBTYPE OF MESSAGE ̲SUBTYPE

    FOR ̲RI ̲

 ASSIGNMENT?ANQ ̲ATTR.
              HEADER.
              FLAG.CAMPS ̲
              ORIGINATED
              EQ TRUE? ANQ ̲ATTR.HEADER.READDRESSED EQ
          TRUE?

                                SEQUENCE ̲FORMAT ̲NO =
                     CRYPT ̲CPS ̲READ

                          SEQUENCE ̲FORMAT ̲NO = CRYPT
                     ̲NO ̲READ

            ANQ ̲ATTR.HEADER.READDRESSED EQ TRUE?

                          SEQUENCE ̲FORMAT ̲NO = CRYPT
                     ̲NO ̲CPS ̲READ

            SEQUENCE ̲FORMAT ̲NO = CRYPT ̲NO ̲CPS ̲NO ̲READ

    OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

               FAILURE ̲FLAG = TRUE

 END CASE

 FAILURE ̲FLAG EQ TRUE?

 ANS ̲FLAG = TRUE

 SEQUENCE ̲CODE ̲NO = START

 INPUT ̲CIF = ANQ ̲QEL

 HEADER ̲TEXT = FOR ̲RI ̲ASSIGN

 M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

 FAILURE ̲FLAG = FALSE

 END PLAIN CRYPT

               Figure 4.2.2.4.3-15


 SCARMESSAGE

 CASE ANQ ̲ATTR.HEADER.SUBTYPE OF MESSAGE ̲SUBTYPE

      FOR RI ̲

      ASSIGNMENT?ANQ ̲ATTR.

                   HEADER.

                   FLAG.CAMPS ̲

                   ORIGINATED EQ

                   TRUE? M̲S̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                 ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                             SET FAILURE ̲FALG = TRUE

                 SEQUENCE ̲FORMAT ̲NO = SCARS ̲NO ̲CPS

      OTHERWISE? M̲S̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                     SET FAILURE ̲FLAG = TRUE

 END CASE

 FAILURE ̲FLAG EQ TRUE?

 ANS ̲FLAG = TRUE

 SEQUENCE ̲CODE ̲NO = START

 INPUT ̲CIF = ANQ ̲QEL

 HEADER ̲TEXT = FOR ̲RI ̲ASSIGN

 M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

 SET FAILURE ̲FLAG = FALSE

 END SCARMESSAGE



               Figure 4.2.2.4.3.15


 ABBPLAIN

 CASE ANQ ̲ATTR.HEADER.SUBTYPE OF MESSAGE ̲SUBTYPE

       FOR RI ̲

       ASSIGNMENT?ANQ ̲ATTR.

                     HEADER.

                     FLAG.CAMPS ̲

                     ORIGINATED EQ

                     TRUE? M̲S̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                     ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                         SET FAILURE ̲FLAG = TRUE

                  ANQ ̲ATTR.
                     HEADER.
                     FLAG.READ ̲
                     DRESSED EQ
                     TRUE? SEQUENCE ̲FORMAT ̲NO = ABB
                     ̲NO ̲CPS ̲REA
                  SEQUENCE ̲FORMAT ̲NO = ABB ̲NONE

    OTHERWISE?   M̲S̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                 SET FAILURE ̲FLAG = TRUE

 END CASE

 FAILURE ̲GLAG EQ TRUE

 ANS ̲FLAG = TRUE

 SEQUENCE ̲CODE ̲NO = START

 INPUT ̲CIF = ANQ ̲QEL

 HEADER ̲TEXT = FOR ̲RI ̲ASSIGN

 M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

 SET FAILURE ̲FLAG = FALSE

 END

               figure 4.2.2.4.3-16


 COD

 CASE ANQ ̲ATTR.HEADER:SUBTYPE OF MESSAGE ̲SUBTYPE

       FOR RI ̲

       ASSIGNMENT?   ANQ ̲ATTR.
                         HEADER.
                         FLAG.CAMPS
                         ORIGINATED EQ
                         TRUE?  M̲S̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲                     
                                                                               
                                                                               
                                                                               
                                                                               
                                                                               
                                                                               
                                                                               ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                                SET FAILURE ̲FLAG = TRUE

                     ANQ ̲ATTR.
                         HEADER
                         FLAG.READ ̲
                         DRESSED EQ
                         TRUE?  SEQUENCE ̲FORMAT ̲NO =
                                CODE ̲NO ̲CPS ̲REA

                     SEQUENCE ̲FORMAT ̲NO = CODE ̲NONE

    OTHERWISE?       M̲S̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                     SET FAILURE FLAG = TRUE

 END CASE

 FAILURE ̲FLAG EQ TRUE?

 ANS ̲FLAG = TRUE

 SEQUENCE ̲CODE ̲NO = START

 INPUT ̲CIF = ANQ ̲QEL

 HEADER ̲TEXT = FOR ̲RI ̲ASSIGN

 M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

 SET FAILURE ̲FLAG = FALSE

 END COD

               Figure 4.2.2.4.3-17


 PLAINSERVICE

 CASE ANQ ̲ATTR.HEADER.SUBTYPE OF MESSAGE ̲SUBTYPE

       FOR RI

       ASSIGNMENT?   ANS ̲FLAG = TRUE

                     ANQ ̲ATTR.HEADER.FLAG.CAMPS ̲ORIGINATED
                     EQ TRUE

                         ANQ ̲ATTR.HEADER.FLAG.READDRESSED
                         EQ TRUE?

                            SEQUENCE ̲FORMAT ̲NO = PLAINS
                            ̲CPS ̲READ

                         SEQUENCE ̲FORMAT ̲NO = PLAIN
                         ̲CPS

                     ANQ ̲ATTR.HEADER.FLAG.READDRESSED
                     EQ TRUE?

                         SEQUENCE ̲FORMAT ̲NO = PLAINS
                         ̲NO ̲CPS

                     SEQUENCE ̲FORMAT ̲NO = PLAINS ̲NONE

    OTHERWISE?       M̲S̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲
                     ̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                     SET FAILURE ̲FLAG = TRUE

 END CASE

 FAILURE ̲FLAG EQ TRUE?

 SET SEQUENCE ̲CODE ̲NO = START

 INPUT ̲CIF = ANQ ̲QEL

 HEADER ̲TEXT = FOR ̲RI ̲ASSIGN

 M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

 SET FAILURE ̲FLAG = FALSE

 END PLAINSERVICE




               Figure 4.2.2.4.3-18



 ABB ̲PLAINSERVICE

 CASE ANQ ̲ATTR.HEADER.SUBTYPE OF MESSAGE ̲SUBTYPE

       FOR ̲RI

       ASSIGNMENT?   ANS ̲FLAG = TRUE

                     ANQ ̲ATTR.HEADER.FLAG.CAMPS ̲ORIGINATED
                     EQ TRUE?

                         ANQ ATTR.HEADER.FLAG.READDRESSED
                         EQ TRUE?

                            M̲S̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                            ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)

                            SET FAILURE ̲FLAG = TRUE

                         SET SEQUENCE ̲FORMAT ̲NO = SERVICE
                         ̲CPS

                     ANQ ̲ATTR.HEADER.FLAG.READDRESSED
                     EQ TRUE?

                         SET ̲SEQUENCE ̲FORMAT ̲NO = SERVICE
                         ̲REA

                     SET SEQUENCE ̲FORMAT ̲NO = SERVICE
                     ̲NONE

       OTHERWISE?    M̲S̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲2̲1̲.̲5̲.̲1̲)̲
                     ̲

                     SET FAILURE ̲FLAG = TRUE

 END CASE

 FAILURE ̲FLAG EQ TRUE?

 INPUT ̲CIF = ANQ ̲QEL

 HEADER ̲TEXT = FOR ̲RI ̲ASSIGN

 SEQUENCE ̲CODE ̲NO = START

 M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

 SET FAILURE ̲FLAG = FALSE

 END ABB ̲PLAINSERVICE



                FIG. 4.2.2.4.3-19


 ABBSERVICE

 CASE ANQ ̲ATTR.HEADER.SUBTYPE OF MESSAGE ̲SUBTYPE

       FOR ̲RI

       ASSIGNMENT? ANS ̲FLAG = TRUE

                   ANQ ̲ATTR.HEADER.FLAG.CAMPS ̲ORIGINATED
                 EQ TRUE?

                     ANQ ̲ATTR.HEADER.FLAG.READDRESSED
                     EQ TRUE?

                         M̲S̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲ ̲A̲N̲Q̲
                         ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                         SET FAILURE ̲FLAG = TRUE

                     SET SEQUENCE ̲FORMAT ̲NO = ABBSER
                     ̲CPS

                   ANQ ̲ATTR.HEADER.FLAG.READDRESSED
                 EQ TRUE?

                     SET SEQUENCE ̲FORMAT ̲NO = ABBSER
                     ̲NO ̲REA

                   SET SEQUENCE ̲FORMAT ̲NO = ABBSER ̲NONE

       OTHERWISE?    M̲S̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                     SET FAILURE ̲FLAG = TRUE

 END CASE

 FAILURE ̲FLAG EQ TRUE

 INPUT ̲CIF = ANQ ̲QEL

 HEADER ̲TEXT = FOR ̲RI ̲ASSIGN

 SEQUENCE ̲CODE ̲NO = START

 M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲

 SET FAILURE FLAG = FALSE

 END ABBSERVICE



                FIG. 4.2.2.4.3-20


 EDIT ̲ANS ̲VAL

 CASE ANQ ̲ATTR.HEADER.SUBTYPE OF TEP ̲INTERNAL ̲SUBTYPE

    UMAM ̲

    ERROR ̲

    RESP?    CASE ANQ ̲ATTR.HEADER.FLAG OF UMAM ̲RESPONSE
             ̲TYPE

                 EDIT ̲RESP? CASE ANQ ̲ATTR.HEADER.INF
                 OF EDIT ̲
                                     ANS ̲TYPE

                               NOT ̲FOUND? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲
                               ̲M̲S̲G̲

                                (̲E̲R̲R̲O̲R̲ ̲N̲O̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲

                               NOT ̲AVAIB? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲
                               ̲M̲S̲G̲

                                (̲E̲R̲R̲O̲R̲ ̲N̲O̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲

                               SEC ̲PROFILE? D̲I̲S̲P̲L̲A̲Y̲
                               ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲

                                    (̲E̲R̲R̲O̲R̲ ̲N̲O̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲

                               OTHERWISE? FAILURE FLAG
                               = TRUE

                                          T̲E̲P̲ ̲Q̲U̲E̲U̲E̲
                                          ̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                                          ̲                                        
                                                                                  
                                                                                  
                                                                                  
                                                                                  
                                                                                  
                                                                                  
                                                                                  
                                                                                  
                                                                                  
                                                                                  
                                                                                  Q̲E̲L̲)̲
                                                                                  ̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                            END CASE

                 OTHERWISE? T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲,̲A̲N̲Q̲
                            ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                            FAILURE ̲FLAG = TRUE

             END CASE

    OTHERWISE?   T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲,̲ ̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                 FAILURE ̲FLAG = TRUE

    END CASE

    C̲A̲L̲L̲S̲ ̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲2̲2̲)̲

    END EDIT ̲ANS ̲VAL

               FIG. 4.2.2.4.3.3-21


 CALLS

 FAILURE FLAG EQ TRUE?

 SEQUENCE ̲CODE ̲NO = UMAM ̲ERROR ̲RESP

 M̲S̲O̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲


 D̲I̲S̲M̲ ̲(̲A̲N̲Q̲ ̲Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲3̲)̲


 END CALLS

































                FIG. 4.2.2.4.3-22