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