top - download
⟦f9d76def6⟧ Wang Wps File
Length: 62196 (0xf2f4)
Types: Wang Wps File
Notes: CPS/SDS/039
Names: »1558A «
Derivation
└─⟦945185ab2⟧ Bits:30005808 8" Wang WCS floppy, CR 0113A
└─ ⟦this⟧ »1558A «
WangText
…10……05……0f……08……0f……0b……0f……0e……0f……00……0f……02……0f…
…0f……07……0e……0a……0e……0c……0e……0f……0e……01……0e……06……0d……08……0d……0a……0d……0c……0d……0e……0d……00……0d……01……0d……05……0c……0a……86…1
…02… …02… …02…
…02…CPS/SDS/039
…02…820104…02……02…
USER VDU
DETAILED DESIGN SPECIFICATION…02……02…CAMPS
4.2.2 U̲s̲e̲r̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲
The U̲ser F̲unction C̲o̲ntrol (UFCO) subpackage performs
the control of all user transactions. Furthermore,
UFCO 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 VCO.
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 VDIA.
b) Start-Up (1.2)
Executes the function to be performed after sign-on.
The command validation table reflecting the user
capability is defined.
c) Close-Down (1.3)
This function provides the UFCO with the capability
of performing the following functions:
- Sign-off
- Block terminal
- Order close-down.
d) Security Interrogation (1.4)
Requests a security interrogation to be performed
in case of release.
Executes the functions to be performed after a
security interrogation (e.g. receive function keys).
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, statistics and
other purposes are collected in sequence table.
There exists no special collecting procedures but
all data which are pertinent for UFCO will be placed
in this area.
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.
c) Statistics Reporting (2.3)
The statistics reporting functions are those required
to report statistics.
The data which are required in the statistics are
extracted from the sequence table.
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/F/C
Keys
- LOG, STATISTICS, SAR reporting required
- Cursor position
- Command to VDIA
- Subsequently 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) Complete Append (4.1.4)
These functions add a section of another message
to a message under preparation.
It shall be noticed that an off-line append can
result in two security interrogations.
e) Display Error Code (4.1.5)
These functions display a response message in the
VDU response line.
f) Determine Message Type (4.1.6)
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, release message status
and the delivery message status are updated. The
message / comment 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 Coordination (4.4.1)
The message is sent for coordination and the delivery
notification created by MDP is displayed.
b) Send for Release (4.4.2)
The message is sent to the associated release terminal.
c) Release (4.4.3)
The message is sent for local distribution and
transmission. A release notification is returned
to the drafter.
d) Retrieve / Append (4.4.4)
A retrieve request is sent to SAR and the retrieved
CIF and/or a response message is displayed.
e) Print (4.4.5)
The CIF currently displayed on the VDU is sent
to the associated printer, or the atomal printer.
f) Defer (4.4.6)
The preparation is terminated and the CIF is sent
to the preparation database.
g) Status Request (4.4.7)
A status request is sent to UMAM and the received
CIF is displayed.
h) Send for Distribution (4.4.8)
A comment is sent for locad distribution.
i) Edit / Delete Requests (4.4.9)
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 UFCO 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 UFCO, 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 UFCO subpackage consists of one coroutine with
operation semaphore S2 as the main waiting point.
The input to UFCO will be a command which is received
from VCO, VDIA, RETR, 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-2.
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 UFCO.
4.2.2.3.2 C̲o̲n̲t̲r̲o̲l̲ ̲L̲o̲g̲i̲c̲
The control logic of UFCO is shown in the module-tree
in figure 4.2.2.3-1.
Diag. ID: 4.2.2.3/24
Fig. 4.2.2.3-1
4.2.2.4 M̲o̲d̲u̲l̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
UFCO ̲MAIN (4.2.2.4.1)
RESTART ̲UFCO (4.2.2.4.2)
VUS ̲ANSWER ̲Q ̲PROCESSING (4.2.2.4.3)
VUS ̲F/C ̲KEY ̲PROCESSING (4.2.2.4.4)
VCO ̲CMD ̲PROCESSING (4.2.2.4.5)
VDIA ̲CC ̲PROCESSING (4.2.2.4.6)
RETR ̲OP ̲PROCESSING (4.2.2.4.7)
VUS ̲IN/OUT ̲LINE (4.2.2.4.8)
VUS ̲CMD ̲PENDING (4.2.2.4.9)
VUS ̲DISP ̲RESP ̲MSG (4.2.2.4.10)
VUS ̲SEQUENCE (4.2.2.4.11)
4.2.2.4.1 U̲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) UFCO ̲MAIN
b) UFCO ̲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̲
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̲
B̲u̲i̲l̲t̲ ̲T̲M̲P̲ ̲R̲E̲C̲O̲R̲D̲S̲:̲ Establish the necessary records
to issue a TMP call; one record with the search-parameter
inverted and one for the return parameter.
D̲i̲s̲p̲l̲a̲y̲ ̲m̲a̲x̲ ̲C̲l̲a̲s̲s̲i̲f̲i̲c̲a̲t̲i̲o̲n̲ ̲A̲v̲a̲i̲l̲a̲b̲l̲e̲
In the VDU header classification field is the minimum
classification shared between the process-classification
and the terminal displayed.
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̲
VUS ̲CO ̲OP ̲TYPE refer 4.1.4
CLASSIFICATION ̲TYPE refer 4.2.2.5
CAPABILITY ̲TYPE refer 4.2.2.5
IDENT ̲TYPE refer 4.1.4
QEL ̲ATTRIBUTES ̲TYPE refer CPS/DBD/001
QEL ̲REFERENCE ̲TYPE refer CPS/DBD/001
USER ̲CAPABILITY ̲TYPE refer CPS/DBD/001
MAIN ̲Q ̲DESCRIPTOR ̲TYPE refer CPS/DBD/001
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
CURRENT ̲MODE (m) refer 4.2.2.5
TMP ̲RECORD (m) refer 4.1.4
VUS ̲S1 refer 4.1.4
VUS ̲S2 refer 4.1.4
VUS ̲S3 refer 4.1.4
VDIA ̲CC ̲OP refer 4.1.4
VCO ̲OP refer 4.1.4
F/C ̲KEY ̲OP (m) refer 4.1.4
ANQ ̲OP: (m) refer 4.1.4
USER ̲PROFILE refer CPS/DBD/001
ANQ: MAIN ̲Q ̲DESCRIPTOR ̲TYPE refer CPS/DBD/001
ANQ ̲ATTR refer 4.2.2.5
ANQ ̲QEL refer 4.2.2.5
CLASSIFIC: CLASSIFICATION ̲
TYPE
CAB: USER ̲CAPABILITY ̲
TYPE
UFCO ̲CMD ̲OP (m) refer 4.1.4
FORMAT ̲ID (m) refer 4.1.4
START ̲FLAG (m) refer 4.1.4
F/C ̲KEY ̲TYPE refer 4.2.2.5
SPLIT ̲DIGIT (m) refer 4.1.4
SEQUENCE ̲RECORD ̲NO. (m) refer 4.2.2.5
HEADER ̲IFCB refer 4.1.4
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.2.4.1.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
Commands received from VCO or VDIA are analysed. The
following actions are taken:
Initialization and restart and close down cmds before
system starts is performed and cmds are signalled to
VDIA.
Two system call is performed in order to open for input
from Answer Queue and F/C ̲key.
Unknown QEL from Answer Q is sent to SSC.
A loop is entered in order to distribute input from
Answer Queue, F/C ̲keys, VCO, VDIA and RETR to modules
which are taken over for further treatment.
System errors will be treated by the Error Reporting
Procedure, which is common to all modules within VUP.
UFCO START
WAIT ̲OPSEM(VUS ̲S2)(VUS ̲OP): OK
CASE VUS ̲OP.IDENT OF
VCO ̲IDENT? CASE VCO ̲OP.CMD OF
INIT ̲UFCO ̲CMD? V̲D̲U̲ ̲I̲N̲I̲T̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲)̲
MOVE INIT ̲UFCO
̲CC TO VCO ̲OP.CMD
RESTART ̲UFCO ̲CMD? R̲E̲S̲T̲A̲R̲T̲ ̲U̲F̲C̲O̲
̲(̲4̲.̲2̲.̲2̲.̲4̲.̲2̲)̲
MOVE RESTART
̲UFCO ̲CC TO VCO
̲OP.CMD
OTHERWISE? V̲U̲S̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲
̲E̲R̲R̲O̲R̲ ̲(̲4̲.̲1̲.̲5̲.̲2̲)̲
END CASE
MOVE UFCO ̲IDENT TO VCO ̲OP.IDENT
SIGNAL ̲OPSEM(VUS ̲S1, VCO ̲OP)(CC): OK
OTHERWISE? ̲ V̲U̲S̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲ ̲(̲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(VUS ̲S2)(VUS ̲OP): OK
END CLOSE DOWN LOOP
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲1̲
START LOOP
WAIT ̲OPSEM(VUS ̲S2)(VUS ̲OP): OK
CASE VUS ̲OP.IDENT OF
VCO ̲IDENT? 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? V̲U̲S̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲ ̲(̲4̲.̲1̲.̲5̲.̲2̲)̲
END CASE
CASE INIT ̲RECEIVE ̲FIRST ̲QEL(WAIT, ANQ, ANQ ̲OP)
(CC): ERROR ̲OK
ERROR? ANALYSE ̲ERROR(CC,0)
OK? ̲ ASSOCIATE(VUS ̲S2)(ANQ ̲OP): OK
END CASE
CASE INIT ̲RECEIVE ̲CONTROL(SPLIT ̲DIGIT, F/C ̲KEY
̲OP)
(CC): ERROR ̲OK
ERROR?: ANALYSE ̲ERROR(CC,0)
OK?: MOVE HEADER ̲IFCB TO SPLIT ̲DIGIT
ASSOCIATE(VUS ̲S2)(F/C ̲KEY ̲OP): OK
U̲S̲E̲R̲ ̲O̲N̲ ̲L̲O̲O̲P̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲3̲)̲
END CASE
END START LOOP
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲2̲
USER ON LOOP
WAIT(VUS ̲S2)(VUS ̲OP): OK
VDU ̲FAILED EQ TRUE? VUS ̲OP.IDENT EQ VCO ̲IDENT?
̲ V̲C̲O̲ ̲P̲R̲O̲C̲
(̲4̲.̲2̲.̲2̲.̲4̲.̲5̲)̲
CASE VUS ̲OP.IDENT OF:
ANQ ̲IDENT? V̲U̲S̲ ̲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(VUS ̲S2)(ANQ ̲OP):
OK
END CASE
F/C ̲KEY ̲IDENT? V̲U̲S̲ ̲F̲/̲C̲ ̲K̲E̲Y̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲4̲)̲
GET SPLIT ̲DIGIT
CASE INIT ̲RECEIVE ̲CONTROL(SPLIT
̲DIGIT)
(CC): ERROR ̲OK
ERROR? ANALYSE ̲ERROR(CC,0)
OK? ASSOCIATE(VUS ̲S2)(F/C ̲KEY
̲OP)
END CASE
VCO ̲IDENT? V̲C̲O̲ ̲C̲M̲D̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲5̲)̲
VDIA IDENT? V̲D̲I̲A̲ ̲C̲C̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲6̲)̲
RETR ̲IDENT? R̲E̲T̲R̲ ̲O̲P̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲7̲)̲
OTHERWISE? V̲U̲S̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲ ̲(̲4̲.̲1̲.̲5̲.̲2̲)̲
END CASE
END USER ON LOOP
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲3̲
CASE VCO ̲OP.CMD OF
CLOSE ̲DOWN ̲UFCO ̲CMD? MOVE UFCO ̲IDENT TO VCO ̲OP.IDENT
MOVE CLOSE ̲DOWN ̲UFCO ̲CC TO
VCO ̲OP.CMD
SIGNAL ̲OPSEM(VUS ̲S1, VCO
̲OP)
(CC): OK (EXIT START ̲LOOP
START ̲UFCO ̲CMD? D̲I̲S̲P̲L̲A̲Y̲ ̲M̲E̲N̲U̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲5̲)̲
SET ̲START ̲FLAG = TRUE
OTHERWISE? V̲U̲S̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲ ̲(̲4̲.̲1̲.̲5̲.̲2̲)̲
END CASE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲4̲
DISPLAY ̲MENU
GET CAPABILITY
D̲I̲S̲P̲L̲A̲Y̲ ̲M̲A̲X̲ ̲C̲L̲A̲S̲S̲I̲F̲I̲C̲A̲T̲I̲O̲N̲ ̲A̲V̲A̲I̲L̲A̲B̲L̲E̲
CALCULATE FORMAT ̲ID
BUILT TMP RECORDS
CASE TMP ̲SEARCH(TMP ̲RECORDS)(SEQUENCE ̲TABLE, CC): ERROR
̲OK
ERROR? ANALYSE ̲ERROR(CC,0)
OK? V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
END CASE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲1̲-̲5̲
4.2.2.4.2 R̲E̲S̲T̲A̲R̲T̲ ̲U̲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 ̲UFCO
b) RESTART ̲UFCO (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̲
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 ̲TYPE: refer CPS/DBD/001
QEL ̲REFERENCE ̲TYPE: refer CPS/DBD/001
SEND ̲PARAMS ̲TYPE: refer CPS/DBD/001
Q ̲DESCRIPTOR ̲TYPE: refer CPS/DBD/001
USER ̲ACTION ̲TYPE: refer CPS/DBD/001
VUS ̲CO ̲OP ̲TYPE: refer 4.1.4
IDENT ̲TYPE: refer 4.1.4
b) VUS ̲S3 refer 4.1.4
ANQ ̲OP: VUS ̲CO ̲OP ̲TYPE refer 4.1.4
VUS ̲SEND ̲PARAMS refer 4.1.4
PREP ̲Q refer 4.1.4
ANQ ̲ATTR refer 4.2.2.5
ANQ ̲QEL refer 4.2.2.5
UFCO ̲IDENT: OP ̲IDENT ̲TYPE
VIEWET: QEL ̲REFERENCE ̲TYPE (m)
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 ̲UFCO
QUEUE LOOP
CASE RECEIVE ̲FIRST ̲QEL(ANQ ̲ATTR, ANQ)
(ANQ ̲ATTR, ANQ ̲QEL, SUBQUEUE, CC):
ERROR ̲OK
ERROR? CASE ANALYSE ̲ERROR(CC, 2, QEL ̲PROFILE
̲CHECK,
QUEUE ̲EMPTY):(ULAB1,
ULAB2)
ULAB1? 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̲)̲
ULAB2? (EXIT QUEUE LOOP
END CASE
OK? 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̲)̲
END CASE
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̲)̲
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲2̲-̲1̲
QEL ̲SORT
CASE MAINTYPE OF:
INITIAL ̲MAINTYPE?
PLAINDRESS,
PLAINDRESS ̲DATA,
SC ̲COMMENT,
SC ̲VDU ̲PAGE,
COMMENT? CASE SUBTYPE OF
FOR ̲CONTINUED ̲PREP?
OTHERWISE? V̲U̲S̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲2̲)̲
END CASE
OTHERWISE? V̲U̲S̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲2̲)̲
END CASE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲2̲-̲2̲
SEND ̲TO ̲PREP ̲Q
CASE SEND(VUS ̲SEND ̲PARAMS, ANQ ̲QEL, REQ ̲Q)
(VUS ̲SEND ̲PARAMS, CC): ERROR ̲OK
ERROR? ̲ANALYSE ̲ERROR(CC,0)
OK:
END CASE
END SEND TO PREP ̲Q
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲2̲-̲3̲
SAVE ̲VIEWET
CASE SAVE ̲VIEW(DISMANTLE, REC ̲LEVEL, ANQ ̲QEL)(CC):
ERROR ̲OK
ERROR? ANALYSE ̲ERROR(CC,0)
OK?
END CASE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲2̲-̲4̲
4.2.2.4.3 V̲U̲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
VUS ̲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) VUS ̲ANSWER ̲Q ̲PROCESSING
b) VUS ̲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̲
R0 - R7 (DEST)
4.2.2.4.3.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲
N/A
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̲
VUS ̲CO ̲OP ̲TYPE refer 4.1.4
QEL ̲ATTRIBUTES ̲TYPE refer CPS/DBD/001
QEL ̲REFERENCE ̲TYPE refer CPS/DBD/001
SEQUENCE ̲CODE ̲TYPE refer 4.1.4
Q ̲REFERENCE ̲TYPE refer CPS/DBD/001
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
ANQ ̲OP: VUS ̲CO ̲OP ̲TYPE refer 4.1.4
LOG ̲SEQUENCE ̲RECORD ̲NO refer 4.2.2.5
ANQ ̲ATTR refer 4.2.2.5
ANQ ̲QEL refer 4.2.2.5
SEQUENCE ̲RECORD ̲NO: (m) refer 4.2.2.5
ANQ refer 4.2.2.5
REQ ̲Q refer 4.2.2.5
ERROR ̲MSG ̲NO refer 4.2.2.5
L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.2.4.3.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
QEL maintype and subtype are analysed and each subtype
is given a constant value before entering VUS ̲SEQUENCE(4.2.2.4.11).
Unexpected QEL's are reported.
VUS ̲ANSWER ̲Q ̲PROCESSING
CASE SYS ̲WAIT(ANQ ̲OP)(ANQ ̲ATTR, ANQ ̲QEL, SUBQUEUE,
CC): ERROR ̲OK
ERROR: ANALYSE ERROR(CC,0)
OK: V̲U̲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 ̲PROCESSING
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲
VUS ̲ANQ ̲QEL ̲PROCESSING:
CASE MAINTYPE OF:
PLAINDRESS,
PLAINDRESS ̲DATA,
COMMENTS? CASE SUBTYPE OF:
FOR CONTINUED PREP? ̲SEQUENCE ̲RECORD
̲NO
= SEQ ̲CONT
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
OTHERWISE? ̲V̲U̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
SC ̲VDU ̲PAGE? (̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲3̲)̲
TEP ̲INTERNAL? (̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲4̲)̲
SC ̲COMMENT? (̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲5̲)̲
COORDINATION NOTIFICATION? (̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲6̲)̲
ACK ̲DATA? (̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲7̲)̲
STATUS? (4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲8̲)̲
SSC ̲COMMAND? (4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲9̲)̲
OTHERWISE? V̲U̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲2̲
SCARS ̲CCIS ̲E1 ̲DISPLAY:
CASE SUBTYPE OF:
FOR ̲DISPLAY? SEQUENCE ̲RECORD ̲NO = SEQ ̲DISP
FOR ̲CONTINUED ̲PREP? SEQUENCE ̲RECORD ̲NO = CONT ̲DISP
SUSPEND/DEFERED? SEQUENCE ̲RECORD ̲NO = SUS/DEF ̲DISP
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
OTHERWISE? V̲U̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
END SCARS ̲CCIS ̲E1 ̲DISPLAY
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲3̲
CASE SUBTYPE OF
UMAM ̲ERROR ̲RESP?
CASE UMAM ̲RESPONSE OF
EDIT ̲RESP? CASE EDIT ̲ANS OF
NOT ̲FOUND?
NOT ̲AVAIB?
SEC ̲PROFILE?
APPEND ̲NOT ̲COMP? U̲M̲A̲M̲ ̲R̲E̲S̲P̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲0̲)̲
OTHERWISE? V̲U̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲
̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
DELETE ̲RESP? CASE DELETE ̲ANS OF
DELETED?
PARTLY ̲DELETED?
CIF ̲NOT ̲FOUND?
CIF ̲AWAITING ̲RELS? U̲M̲A̲M̲ ̲R̲E̲S̲P̲
̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲0̲)̲
OTHERWISE? V̲U̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲
̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
VDU ̲RETR ̲RESP? CASE EDIT ̲ANS OF
NOT ̲FOUND?
SEC ̲PROFILE? U̲M̲A̲M̲ ̲R̲E̲S̲P̲(̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲0̲)̲
OTHERWISE? V̲U̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
OTHERWISE? V̲U̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
OTHERWISE? V̲U̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲4̲ ̲
SC ̲COMMENT
CASE SUBTYPE OF:
FOR ̲CONTINUE ̲PREP? SEQUENCE ̲RECORD NO = CONT ̲COMMENT
SUSPEND/DEFERED? SEQUENCE ̲RECORD NO = SUS/DEF ̲COMMENT
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
OTHERWISE? V̲U̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
END SC ̲COMMENT
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲5̲
COORDINATION ̲NOTIFICATION:
CASE SUBTYPE OF:
FOR ̲DISPLAY? SEQUENCE ̲RECORD ̲NO = DISP ̲COOR
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
OTHERWISE? V̲U̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
END COORDINATION ̲NOTIFICATION
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲6̲
ACK ̲DATA:
CASE SUBTYPE OF:
THP ̲ACK? SEQUENCE ̲RECORD ̲NO = ACK ̲THP
LOG ̲ACK? SEQUENCE ̲RECORD ̲NO =
LOG ̲SEQUENCE ̲RECORD ̲NO
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
OTHERWISE? V̲U̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
END ACK ̲DATA
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲7̲
STATUS:
CASE SUBTYPE OF:
DELIVERY? SEQUENCE ̲RECORD ̲NO = SEQ ̲DELI
OUTGOING ̲MSG? SEQUENCE ̲RECORD ̲NO = SEQ ̲OUTG
MSG ̲RELEASE? SEQUENCE ̲RECORD ̲NO = SEQ ̲RELS
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
OTHERWISE? V̲U̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲8̲
SSC ̲COMMAND
CASE SUBTYPE OF:
1? SEQUENCE ̲RECORD ̲NO = REL ̲OK
2? SEQUENCE ̲RECORD ̲NO = REL ̲NOT
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
OTHERWISE? V̲U̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
END SSC ̲COMMAND
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲9̲
SET SEQUENCE ̲RECORD ̲NO = UMAM ̲ERROR ̲RESP
UPDATE ERROR ̲MSG ̲NO
D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲3̲-̲1̲0̲
4.2.2.4.4 V̲U̲S̲ ̲F̲/̲C̲ ̲K̲E̲Y̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲
4.2.2.4.4.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The purpose of this module is to analyse the F/C ̲KEY
input, and, depending on the F/C ̲key identity to call
other modules and procedures. Further it takes care
of blanking the command and the response-line and placing
the cursor or the command line.
4.2.2.4.4.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) VUS ̲F/C ̲KEY ̲PROCESSING
b) VUS ̲F/C ̲KEY ̲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̲
R6 LINK (DEST)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R0 - R7 (DEST)
4.2.2.4.4.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
N/A
4.2.2.4.4.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
VUS ̲CO ̲OP ̲TYPE refer 4.1.4
IOC ̲FIELD ̲DESCRIPTOR ̲TYPE refer 4.1.4
F/C ̲KEY ̲TYPE ̲TYPE
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
F/C ̲KEY ̲TYPE: F/C ̲KEY ̲TYPE ̲TYPE refer 4.2.2.5
ERROR ̲MSG ̲NO (m) refer 4.2.2.5
SPLIT ̲DIGIT (m) refer 4.2.2.5
CURSOR ̲RECORD ̲1(m) refer 4.1.4
CURSOR ̲RECORD (m) refer 4.1.4
F/C ̲KEY ̲ALLOWED ̲FLAG refer 4.2.2.5
IN/OUT ̲LINE ̲FLAG (m) refer 4.2.2.5
RESPONSE ̲TEXT ̲FLAG (m) refer 4.2.2.5
CMD ̲FLAG (m) refer 4.2.2.5
SEQUENCE ̲RECORD ̲NO (m) refer 4.2.2.5
FIELD ̲LIST (m) refer 4.2.2.5
BUFFER ̲LIST (m) refer 4.2.2.5
F/C ̲KEY ̲OP: VUS ̲CO ̲OP ̲TYPE refer 4.1.4
HEADER ̲IFCB refer 4.1.4
BLE ̲LIST refer 4.1.4
VDU ̲FAILED refer 4.2.2.5
CURSOR ̲TO ̲CMD ̲LINE ̲RECORD refer 4.1.4
CURSOR ̲RECORD ̲1 refer 4.1.4
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.2.4.4.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
This module checks the F/C ̲key inputs, invest if it
shall enter SEQUENCE (4.2.2.4.11) and in cases where
flags are set other modules are called. On the other
hand, if no flags are set and the F/C ̲key requests
one, it is set and Return-F/C ̲key input are expected.
Alternatively the Command F/C ̲key sets the cursor position
on the command ̲line, and Return ̲F/C ̲key input are awaited.
VUS ̲F/C ̲KEY ̲PROCESSING
GET SPLIT ̲DIGIT
CASE SYS ̲WAIT(F/C ̲KEY ̲OP)(SPLIT ̲DIGIT, F/C ̲KEY ̲TYPE,
CC): ERROR ̲OK
ERROR? CASE ANALYSE ̲ERROR(CC,2 PRIORITY ̲OVERRIDE,
VDU ̲SPLIT ̲FAI-
LED):(ULB1, ULB2)
ULB1?
ULB2? SET VDU ̲FAILED = TRUE
SEQUENCE ̲RECORD ̲NO = SEQ ̲FAILURE
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
END CASE
OK? F̲/̲C̲ ̲K̲E̲Y̲ ̲V̲A̲L̲I̲D̲A̲T̲I̲O̲N̲(̲4̲.̲2̲.̲2̲.̲4̲.̲4̲-̲2̲)̲
END CASE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲4̲-̲1̲
F/C ̲KEY ̲VALIDATION
F/C ̲KEY ̲ALLOWED ̲FLAG EQ FALSE?
F/C ̲KEY NOT IN MASK ̲1? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
F/C ̲KEY NE RETURN? R̲E̲M̲O̲V̲E̲ ̲D̲I̲S̲P̲L̲A̲Y̲ ̲O̲N̲ ̲C̲M̲D̲ ̲L̲I̲N̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲4̲-̲6̲)̲
F/C ̲KEY IN MASK ̲2? SEQUENCE ̲RECORD ̲NO = F/C ̲KEY
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
OUTPUT ̲FLAG EQ TRUE? B̲L̲A̲N̲K̲ ̲R̲E̲S̲P̲ ̲L̲I̲N̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲4̲-̲7̲)̲
IN/OUT ̲LINE ̲FLAG EQ TRUE? V̲U̲S̲ ̲I̲N̲/̲O̲U̲T̲ ̲L̲I̲N̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲8̲)̲
RESPONSE ̲TEXT ̲FLAG EQ TRUE? V̲U̲S̲ ̲D̲I̲S̲P̲ ̲R̲E̲S̲P̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲0̲)̲
COMMAND ̲FLAG EQ TRUE? V̲U̲S̲ ̲C̲M̲D̲ ̲P̲E̲N̲D̲I̲N̲G̲(̲4̲.̲2̲.̲2̲.̲4̲.̲9̲)̲
F/C ̲KEY EQ INSERT ̲LINE?
F/C ̲KEY EQ DELETE ̲LINE? T̲E̲S̲T̲ ̲C̲U̲R̲S̲O̲R̲ ̲P̲O̲S̲(̲4̲.̲2̲.̲2̲.̲4̲.̲4̲-̲3̲)̲
F/C ̲KEY EQ RESPONSE ̲TEXT? SET RESPONSE ̲TEXT ̲FLAG =
TRUE
F/C ̲KEY EQ COMMAND? SET CMD ̲FLAG = TRUE
IN/OUT ̲LINE ̲FLAG EQ FALSE?
G̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲ ̲P̲O̲S̲I̲T̲I̲O̲N̲(̲4̲.̲2̲.̲2̲.̲4̲.̲4̲-̲4̲)̲
M̲O̲V̲E̲ ̲C̲U̲R̲S̲O̲R̲ ̲T̲O̲ ̲C̲M̲D̲ ̲L̲I̲N̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲4̲-̲5̲)̲
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲4̲-̲2̲
TEST ̲CURSOR ̲POS:
GET SPLIT ̲DIGIT
CASE GET ̲CURSOR ̲POSITION(SPLIT ̲DIGIT)
(CURSOR RECORD.FIELD, LINES
̲ABOVE, CC):
ERROR ̲OK
ERROR? CASE ANALYSE ̲ERROR(CC,3, CURSOR ̲NOT ̲IN ̲FORMATTED
̲LINE,
CURSOR ̲ NOT ̲IN ̲FIELD, VDU ̲SPLIT
̲FAILED):
(ULB3, ULB4, ULB5)
ULB3? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
ULB4? ̲D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
ULB5? SET VDU ̲FAILED = TRUE
SEQUENCE ̲RECORD ̲NO = SEQ ̲FAILURE
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
END CASE
OK? SET IN/OUT ̲LINE ̲FLAG = TRUE
END CASE
END TEST ̲CURSOR ̲POS.
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲4̲-̲3̲
GET ̲CURSOR ̲POS.:
GET SPLIT ̲DIGIT
CASE GET ̲CURSOR ̲POSITION(SPLIT ̲DIGIT)(CURSOR ̲RECORD
̲1.FIELD,
LINES ̲ABOVE, CC):
ERROR ̲OK
ERROR? ANALYSE ̲ERROR(CC,0)
OK? MOVE CURSOR POSITION TO CURSOR ̲RECORD ̲1
END CASE
END GET ̲CURSOR ̲POS.
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲4̲-̲4̲
MOVE ̲CURSOR ̲TO ̲CMD ̲LINE
GET CURSOR ̲TO ̲CMD ̲RECORD
CASE SET ̲CURSOR ̲POSITION(SPLIT ̲DIGIT, CURSOR ̲TO ̲CMD
̲RECORD.
FIELD, LINES ̲ABOVE)(CC): ERROR
̲OK
ERROR? ANALYSE ERROR (CC, 0)
OK? MOVE HEADER ̲IFCB TO SPLIT ̲DIGIT
END CASE
END MOVE ̲CURSOR ̲TO ̲CMD ̲LINE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲4̲-̲5̲
REMOVE ̲DISPLAY ̲ON ̲CMD ̲LINE
BUILD FIELD ̲LIST
BUILD BLE ̲LIST
CASE FIELDS ̲OUTPUT(HEADER ̲IFCB, FIELD ̲LIST, BLE ̲LIST,
NUMBER ̲OF ̲
FIELDS, BYTE ̲LENGTH)(CC):
ERROR ̲OK
ERROR? ANALYSE ̲ERROR(CC,0)
OK?
END CASE
END REMOVE ̲DISPLAY ̲ON ̲CMD ̲LINE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲4̲-̲6̲
BLANK RESP ̲LINE:
BUILD FIELD ̲LIST
BUILD BLE ̲LIST
CASE FIELDS ̲OUTPUT(HEADER ̲IFCB, FIELD ̲LIST, BLE ̲LIST,
NUMBER ̲OF ̲
FIELDS, BYTE ̲LENGTH)(CC):
ERROR ̲OK
ERROR? ANALYSE ̲ERROR(CC,0)
OK?
END CASE
END BLANK RESP ̲LINE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲4̲-̲7̲
4.2.2.4.5 V̲C̲O̲ ̲C̲M̲D̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲
4.2.2.4.5.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The purpose of this module is to analyse commands from
VCO and, in accordance with the commands, to enter
VUS ̲SEQUENCE(4.2.2.4.11).
4.2.2.4.5.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) VCO ̲CMD ̲PROCESSING
b) VCO ̲CMD ̲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̲
R6 LINK (DEST)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
N/A
R0 - R7 (DEST)
4.2.2.4.5.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲
BLANK ̲VDU-HEADER ̲FIELDS removes display in classification
field.
4.2.2.4.5.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
VUS ̲CO ̲OP ̲TYPE refer 4.1.4
COROUTINE ̲SEMAPHORE ̲TYPE refer 4.1.4
IDENT ̲TYPE refer 4.1.4
SEQUENCE ̲CODE ̲TYPE refer 4.1.4
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
VUS ̲S1 refer 4.1.4
VCO ̲OP refer 4.1.4
SEQUENCE ̲RECORD ̲NO (m) refer 4.2.2.5
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.2.4.5.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
This module inspects VCO commands, enters VUS ̲SEQUENCE(4.2.2.4.11)
and signals opsem VUS ̲S1.
VCO ̲CMD ̲PROCESSING:
CASE VCO ̲OP.CMD OF
CLOSE ̲DOWN ̲UFCO ̲CMD? SEQUENCE ̲RECORD ̲NO = SEQ ̲CLOSE
̲DOWN
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
BLANK ̲VDU ̲HEADER ̲FIELDS
MOVE CLOSE ̲DOWN ̲UFCO ̲CC TO
VCO ̲OP.CMD
BLOCK ̲UFCO ̲CMD? SEQUENCE ̲RECORD ̲NO = SEQ ̲BLOCK
̲TERMINAL
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
MOVE BLOCK ̲UFCO ̲CC TO VCO ̲OP.CMD
STOP ̲UFCO ̲CMD? SEQUENCE ̲RECORD ̲NO = SEQ ̲STOP ̲USER
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
MOVE STOP ̲UFCO ̲CC TO VCO ̲OP.CMD
MOVE UFCO.IDENT TO VCO ̲OP.IDENT
SIGNAL ̲OPSEM(VUS ̲S1, VCO ̲OP)(CC):
OK
OTHERWISE? V̲U̲S̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲5̲-̲1̲
4.2.2.4.6 V̲D̲I̲A̲ ̲C̲C̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲
4.2.2.4.6.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The purpose of this module is to analyse the inputs
that UFCO gets from VDIA. Depending on input a completion
code is signalled to VCO and thereafter VUS ̲SEQUENCE(4.2.2.4.11)
is entered, or on behalf of other inputs VUS ̲SEQUENCE(4.2.2.4.11)
is entered directly.
4.2.2.4.6.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) VDIA ̲CC ̲PROCESSING
b) VDIA ̲CC ̲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̲
R6 LINK (DEST)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R0 - R7 (DEST)
4.2.2.4.6.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲
N/A
4.2.2.4.6.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
VUS ̲CO ̲OP ̲TYPE refer 4.1.4
VDIA ̲UFCO ̲CC ̲TYPE refer 4.1.4
IDENT ̲TYPE refer 4.1.4
USER ̲ACTION ̲TYPE refer CPS/DBD/001
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
F/C ̲KEY ̲ALLOWED ̲FLAG (m) refer 4.2.2.5
VDU ̲FAILED (m) refer 4.2.2.5
SEQUENCE ̲RECORD ̲NO (m) refer 4.2.2.5
VDIA ̲CC ̲OP refer 4.1.4
VUS ̲S1 refer 4.1.4
VCO ̲OP (m) refer 4.1.4
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.2.4.6.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
This module analyses completion code from VDIA, and
in those cases where VDIA ̲CC is to command issued by
VCO, a completion code is sent to VCO before entering
VUS ̲SEQUENCE module.
VDIA CC PROCESSING
CASE VDIA ̲CC ̲OP.CMD OF
LINES ̲DELETED ̲CC?
LINES ̲INSERTED ̲CC? SET F/C ̲KEY ̲ALLOWED ̲FLAG =
TRUE
INSERT ̲NOT ̲ALLOWED ̲CC?
DELETE ̲NOT ̲ALLOWED ̲CC? ̲SET F/C ̲KEY ̲ALLOWED ̲FLAG
= TRUE
D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
OTHERWISE? S̲E̲Q̲U̲E̲N̲C̲E̲ ̲C̲O̲M̲P̲L̲E̲T̲I̲O̲N̲(̲4̲.̲2̲.̲2̲.̲4̲.̲6̲-̲2̲)̲
END CASE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲6̲-̲1̲
CASE VDIA ̲CC ̲OP.CMD OF
VDIA ̲CLEAR ̲VDU ̲CC? SEQUENCE ̲RECORD ̲NO = SEQ ̲CLEAR
̲VDU ̲CC
OUTPUT ̲MSG ̲CC? SEQUENCE ̲RECORD ̲NO = SEQ ̲OUTPUT
̲MSG ̲CC
INPUT ̲MSG ̲CC? SEQUENCE ̲RECORD ̲NO = SEQ ̲INPUT
̲MSG ̲CC
INPUT ̲REQ ̲CC? SEQUENCE ̲RECORD ̲NO = SEQ ̲INPUT
̲REQ ̲CC
VDIA ̲SUSPEND ̲CC? SEQUENCE ̲RECORD ̲NO = SEQ ̲SUSPEND
̲CC
APPEND ̲VALID ̲CC? SEQUENCE ̲RECORD ̲NO = SEQ ̲APPEND
̲VALID ̲CC
DEFER ̲VALID ̲CC SEQUENCE ̲RECORD ̲NO = SEQ ̲DEFER
̲VALID ̲CC
RELEASE ̲VALID ̲CC? SEQUENCE ̲RECORD ̲NO = SEQ ̲RELEASE
̲VALID ̲CC
COORDINATE ̲VALID ̲CC?SEQUENCE ̲RECORD ̲NO = SEQ ̲COORDINATE
̲VALID ̲CC
VAL ̲ERROR ̲CC? SEQUENCE ̲RECORD ̲NO = SEQ ̲VAL
̲ERROR ̲CC
EXCEEDED ̲CC? SEQUENCE ̲RECORD ̲NO = SEQ ̲EXCEEDED
̲CC
INPUT ̲FORMAT ̲CC? SEQUENCE ̲RECORD ̲NO = SEQ ̲INPUT
̲FORMAT ̲CC
VDIA ̲CANCEL ̲CC? SEQUENCE ̲RECORD ̲NO = SEQ ̲CANCEL
̲CC
SPLIT ̲FAILED ̲CC? SET VDU ̲FAILED = TRUE
SEQUENCE ̲RECORD ̲NO = SEQ ̲FAILURE
VDIA ̲CLOSE ̲DOWN ̲CC? MOVE ̲UFCO ̲IDENT TO VCO ̲OP.IDENT
MOVE CLOSE ̲DOWN ̲UFCO ̲CC TO
VCO ̲OP.CMD
SIGNAL ̲OPSEM(VUS ̲S1, VCO ̲OP)(CC):
OK
SEQUENCE ̲RECORD ̲NO = SEQ ̲CLOSE
̲DOWN ̲CC
OUTPUT ̲FORMAT ̲CC? START ̲FLAG EQ TRUE?
MOVE ̲UFCO ̲IDENT TO VCO ̲OP.IDENT
MOVE START ̲UFCD ̲CC TO VCD ̲OP.CMD
SIGNAL ̲OPSEM(VUS ̲S1, VCO ̲OP):
OK
SEQUENCE ̲RECORD ̲NO = SEQ ̲OUTPUT
̲FORMAT ̲CC
OTHERWISE? V̲U̲S̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲2̲)̲
END CASE
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲6̲-̲2̲
4.2.2.4.7 R̲E̲T̲R̲ ̲O̲P̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲
4.2.2.4.7.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 analyse input from
RETR ̲Coroutine, display notification and entering the
VUS ̲SEQUENCE module(4.2.2.4.11).
4.2.2.4.7.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) RETR ̲OP ̲PROCESSING
b) RETR ̲OP ̲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̲
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.7.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲
N/A
4.2.2.4.7.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̲
VUS ̲CO ̲OP ̲TYPE refer 4.1.4
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
TRANSACTION ̲ID ̲RECORD (m) refer 4.1.4
UFCO ̲RETR ̲ATTR refer 4.1.4
SEQUENCE ̲RECORD ̲NO (m) refer 4.2.2.5
RETR ̲OP: VUS ̲CO ̲OP ̲TYPE refer 4.1.4
ERROR ̲MSG ̲NO (m) refer 4.2.2.5
START FLAG (m) refer 4.2.2.5
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.2.4.7.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
This module calls either DISPLAY ̲ERROR ̲MSG(4.2.2.6.4)
and VUD ̲SEQUENCE(4.2.2.4.11) or the latter only.
RETR ̲OP ̲PROCESSING:
CASE RETR ̲OP.CMD OF:
ONLINE ̲NOTIFICATION? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
OFFLINE ̲NOTIFICATION? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
SEQUENCE ̲RECORD ̲NO = SEQ
̲OFF ̲NOT
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
RETRIEVAL ̲NOTIFICATION? UPDATE = SEQUENCE ̲RECORD
̲NO
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
APPEND ̲NOTIFICATION? UDDATE SEQUENCE ̲RECORD ̲NO
V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
OTHERWISE? V̲U̲S̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END CASE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲7̲-̲1̲
4.2.2.4.8 V̲U̲S̲ ̲I̲N̲/̲O̲U̲T̲ ̲L̲I̲N̲E̲
4.2.2.4.8.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The purpose of this module is to analyse the input
from command line and signal command and parameter
to VDIA, or alternatively, if the input is unacceptable,
to call other modules.
4.2.2.4.8.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) VUS ̲IN/OUT ̲LINE
b) VUS ̲IN/OUT ̲LINE (R6)
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R6 LINK (DEST)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
R0 - R7 (DEST)
4.2.2.4.8.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲
N/A
4.2.2.4.8.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
VUS ̲CO ̲OP ̲TYPE refer 4.1.4
F/C ̲KEY ̲TYPE ̲TYPE refer 4.2.2.5
IDENT ̲TYPE refer 4.1.4
…86…1 …02… …02… …02… …02… …02…
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
F/C ̲KEY ̲ALLOWED ̲FLAG (m) refer 4.2.2.5
IN/OUT ̲LINE ̲FLAG (m) refer 4.2.2.5
HEADER ̲IFCB refer 4.1.4
VUS ̲S3 (m) refer 4.1.4
UFCO ̲OP (m) refer 4.1.4
ERROR ̲MSG ̲NO (m) refer 4.2.2.5
BLE ̲LIST (m) refer 4.2.2.5
FIELD ̲LIST (m) refer 4.2.2.5
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
VAR NO ̲OF ̲LINES: INTEGER
4.2.2.4.8.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
If the expected F/C ̲key (Return) is entered the contents
of command line is fetched, analysed and a command
is signalled to VDIA. Otherwise is other common procedures
called in order to display an error message and to
reset the cursor on the command line.
VUS ̲IN/OUT ̲LINE:
F/C ̲KEY NE RETURN? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
R̲E̲S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲ ̲O̲N̲ ̲C̲M̲D̲ ̲L̲I̲N̲E̲(̲4̲.̲2̲.̲2̲.̲6̲.̲3̲)̲
SET ̲F/C ̲KEY ̲ALLOWED ̲FLAG = FALSE
CASE FIELDS ̲INPUT(HEADER ̲IFCB, BLE ̲LIST, FIRST ̲FIELD,
NO ̲OF ̲FIELDS)
(BYTES ̲TRANSFERRED, FIELD ̲LIST, CC):
ERROR ̲OK
ERROR? ANALYSE ̲ERROR(CC,0)
OK? MOVE INPUT TO BLE ̲LIST AND FIELD ̲LIST
CHARACTER NE DIGIT?
DIGIT RANGE GT 250? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
R̲E̲S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲ ̲O̲N̲ ̲C̲M̲D̲ ̲L̲I̲N̲E̲(̲4̲.̲2̲.̲2̲.̲6̲.̲3̲)̲
F/C KEY TYPE EQ
INSERT ̲LINE?: MOVE VDIA ̲INSERT TO UFCO
̲OP.CMD
MOVE NO ̲OF ̲LINES TO UFCO
̲OP.PARA
MOVE VDIA ̲DELETE TO UFCO ̲OP.CMD
MOVE NO ̲OF ̲LINES TO UFCO ̲OP.PARA
SIGNAL ̲OPSEM(VUS ̲S3, UFCO ̲OP): OK
R̲E̲S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲(̲4̲.̲2̲.̲2̲.̲6̲.̲2̲)̲
SET IN/OUT ̲LINE FLAG = FALSE
END CASE
END VUS ̲IN/OUT ̲LINE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲8̲-̲1̲
4.2.2.4.9 V̲U̲S̲ ̲C̲M̲D̲ ̲P̲E̲N̲D̲I̲N̲G̲
4.2.2.4.9.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The purpose of this module is to fetch the content
of the command line, validate it, display terminal
field text and entering the SEQUENCE module (4.2.2.4.11).
4.2.2.4.9.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) VUS ̲CMD ̲PENDING
b) VUS ̲CMD ̲PENDING (R6)
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R6 LINK (DEST)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R0 - R7 (DEST)
4.2.2.4.9.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲
Validate input: Sends request to UMAM (Continue Prep)
or to SAR (RET, parameters). Calls three functions
in order to validate parameters.
4.2.2.4.9.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
USER ̲CAPABILITY ̲TYPE refer CPS/DBD/001
F/C ̲KEY ̲TYPE ̲TYPE refer 4.2.2.5
IOC ̲FIELD ̲DESCRIPTOR ̲TYPE refer 4.1.4
…86…1 …02… …02… …02… …02… …02…
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
FORMAT ̲ID refer 4.1.4
ERROR ̲MSG ̲NO (m) refer 4.2.2.5
CAB: USR ̲CAPABILITY ̲TYPE (m)
TMP ̲RECORD (m) refer 4.1.4
FIELD ̲LIST (m) refr 4.2.2.5
BUFFER ̲LIST (m) refer 4.2.2.5
CMD ̲FLAG (m) refr 4.2.2.5
CURRENT ̲MODE (m) refer 4.2.2.5
HEADER ̲IFCB refer 4.1.4
FIRST ̲FIELD ̲RECORD (m) refer 4.2.2.5
BLE ̲LIST (m) refr 4.2.2.5
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
TYPE CMD ̲RECORD: CMD ̲RECORD ̲TYPE
CMD ̲RECORD ̲TYPE =
RECORD
CMD: ARRAY (1 4) OF CHAR
VDU ̲HEADER ̲TEXT: ARRAY (1 26) OF CHAR
CAPABILITY: USER ̲CAPABILITY ̲TYPE
VDU ̲HEADER ̲FLAG: INTEGER
SEQUENCE ̲RECORD ̲NO: INTEGER
MODE: INTEGER
FORMAT ̲ID: INTEGER
END;
4.2.2.4.9.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
The content of command line is fetched, analysed and
a call to TMP is issued.
Capability is checked.
Either is the terminal ̲field test displayed or the
field is blanked, depending on the VDU ̲Header ̲Test
̲Flag ̲Sequence ̲record ̲no. is calculated and SEQUENCE
module (4.2.2.4.11) is entered.
VUS ̲CMD ̲PENDING
F/C ̲KEY NE RETURN? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
R̲E̲S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲ ̲O̲N̲ ̲C̲M̲D̲ ̲L̲I̲N̲E̲(̲4̲.̲2̲.̲2̲.̲6̲.̲3̲)̲
BUILD BLE ̲LIST
BUILD FIRST ̲FIELD ̲RECORD
CASE FIELDS ̲INPUT(HEADER ̲IFCB, BLE ̲LIST, FIRST ̲FIELD
̲RECORD, NO
̲OF
̲FIELDS)(BYTES
̲TRANSFERRED,
FIELD ̲LIST, CC): ERROR ̲OK
ERROR? ANALYSE ̲ERROR(CC,0)
OK? I̲N̲P̲U̲T̲ ̲C̲M̲D̲ ̲R̲E̲C̲O̲R̲D̲(̲4̲.̲2̲.̲2̲.̲4̲.̲9̲-̲2̲)̲
END CASE
SET CMD ̲FLAG = FALSE
END VUS ̲CMD PENDING
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲9̲-̲1̲
INPUT ̲CMD ̲RECORD
BUILD TMP RECORD
CASE TMP ̲SEARCH(TMP ̲RECORD)(CMD ̲RECORD, CC): ERROR
̲OK
ERROR? CASE ANALYSE ̲ERROR(CC,1 ENTRY ̲NOT ̲FOUND):(ULB8)
ULB8? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
R̲E̲S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲ ̲O̲N̲ ̲C̲M̲D̲ ̲L̲I̲N̲E̲(̲4̲.̲2̲.̲2̲.̲6̲.̲3̲)̲
END CASE
OK? CAPABILITY NOT OK? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
R̲E̲S̲E̲T̲
̲C̲U̲R̲S̲O̲R̲
̲O̲N̲
̲C̲M̲D̲
̲L̲I̲N̲E̲(̲4̲.̲2̲.̲2̲.̲6̲.̲3̲)̲
CURRENT ̲MODE = CMD ̲RECORD.MODE
VDU ̲HEADER ̲FLAG EQ TRUE? D̲I̲S̲P̲L̲A̲Y̲ ̲I̲N̲F̲(̲4̲.̲2̲.̲2̲.̲4̲.̲9̲-̲4̲)̲
B̲L̲A̲N̲K̲ ̲T̲E̲X̲T̲ ̲F̲I̲E̲L̲D̲(̲4̲.̲2̲.̲2̲.̲4̲.̲9̲-̲5̲)̲
L̲O̲O̲K̲ ̲U̲P̲ ̲T̲A̲B̲L̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲9̲-̲3̲)̲
END CASE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲9̲-̲2̲
LOOK ̲UP ̲TABLE:
B̲U̲I̲L̲D̲ ̲T̲M̲P̲ ̲R̲E̲C̲O̲R̲D̲S̲
CASE TMP ̲SEARCH(TMP ̲RECORDS)
(SEQUENCE ̲TABLE, CC): ERROR ̲OK
ERROR? ANALYSE ̲ERROR(CC,0)
OK? V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲)̲
END CASE
END LOOK ̲UP ̲TABLE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲9̲-̲3̲
DISPLAY ̲INF:
BUILD BLE ̲LIST
BUILD FIELD ̲LIST
CASE FIELDS ̲OUTPUT(HEADER ̲IFCB, FIELD ̲LIST, BLE ̲LIST,
NO OF FIELDS; BYTE ̲LENGTH)(CC): ERROR
̲OK
ERROR? ANALYSE ̲ERROR(CC, 0)
OK?
END CASE
END DISPLAY INF
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲9̲-̲4̲
BLANK ̲TEXT ̲FIELD:
BUILD BLE ̲LIST
BUILD FIELD LIST
CASE FIELDS ̲OUTPUT(HEADER ̲IFCB, FIELD ̲LIST, BLE ̲LIST,
NO OF FIELDS, BYTE ̲LENGTH)(CC): ERROR
̲OK
ERROR? ANALYSE ̲ERROR(CC,0)
OK?
END CASE
END BLANK ̲TEXT ̲FIELD
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲9̲-̲5̲
4.2.2.4.10 V̲U̲S̲ ̲D̲I̲S̲P̲L̲A̲Y̲ ̲R̲E̲S̲P̲ ̲M̲S̲G̲
4.2.2.4.10.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The purpose of this module is to transfer an error
code into error/response messages, which are displayed
in the command line.
4.2.2.4.10.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) VUS ̲DISPLAY ̲RESP ̲MSG
b) VUS ̲DISPLAY ̲RESP ̲MSG (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̲
R0 - R7 (DEST)
4.2.2.4.10.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲
Build TMP records: Establish the necessary records
for a call to TMP. One record filled in with search
parameters, and one available for return parameters.
4.2.2.4.10.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̲
F/C ̲KEY ̲TYPE ̲TYPE refer 4.2.2.5
IOC ̲FIELD ̲DESCRIPTOR ̲TYPE refer 4.1.4
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
ERROR ̲MSG ̲NO (m) refer 4.2.2.5
TMP ̲RECORD (m) refer 4.1.4
OUTPUT ̲FLAG (m) refer 4.2.2.5
FIELD ̲LIST (m) refer 4.2.2.5
BLE ̲LIST (m) refer 4.2.2.5
F/C ̲KEY ̲TYPE refer 4.2.2.5
FIRST ̲FIELD ̲RECORD (m):
IOC ̲FIELD ̲DESCRIPTOR ̲TYPE
ERROR ̲TEXT refer 4.1.4
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.2.4.10.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
Content of the command line is received analysed and
a call to TMP is issued. If the input is unacceptable
an error message is displayed.
VUS ̲DISPLAY ̲RESP ̲MSG
F/C ̲KEY NE RETURN? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
R̲E̲S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲ ̲O̲N̲ ̲C̲M̲D̲ ̲L̲I̲N̲E̲(̲4̲.̲2̲.̲2̲.̲6̲.̲3̲)̲
BUILD BLE ̲LIST
BUILD FIRST ̲FIELD ̲RECORD
CASE FIELDS ̲INPUT(HEADER ̲IFCB, BLE ̲LIST, FIRST ̲FIELD
̲RECORD,
NO OF FIELDS)(BYTES ̲TRANSFERRED,
FIELD ̲LIST, CC): ERROR ̲OK
ERROR? ANALYSE ̲ERROR(CC,0)
OK? CHARACTER NE DIGIT?
DIGIT RANGE GT 100? D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
R̲E̲S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲ ̲O̲N̲ ̲C̲M̲D̲ ̲L̲I̲N̲E̲(̲4̲.̲2̲.̲2̲.̲6̲.̲3̲)̲
B̲U̲I̲L̲D̲ ̲T̲M̲P̲ ̲R̲E̲C̲O̲R̲D̲S̲
CASE TMP ̲SEARCH(TMP ̲RECORDS)(ERROR ̲TEXT, CC):
ERROR ̲OK
ERROR? CASE ANALYSE ̲ERROR(CC,1 RECORD ̲NOT
̲FOUND):(U1)
U1: D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲
R̲E̲S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲ ̲O̲N̲ ̲C̲M̲D̲ ̲L̲I̲N̲E̲(̲4̲.̲2̲.̲2̲.̲6̲.̲3̲)̲
OK? D̲I̲S̲P̲L̲A̲Y̲ ̲R̲E̲S̲P̲ ̲T̲E̲X̲T̲:̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲0̲-̲2̲)̲
R̲E̲S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲(̲4̲.̲2̲.̲2̲.̲6̲.̲2̲)̲
END CASE
END CASE
SET OUTPUT ̲FLAG = TRUE
SET RESPONSE ̲TEXT ̲FLAG = FALSE
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲1̲0̲-̲1̲
DISPLAY ̲RESP ̲TEXT:
BUILD FIELD ̲LIST
BUILD BLE ̲LIST
CASE FIELDS ̲OUTPUT(HEADER ̲IFCB, FIELD ̲LIST, BLE ̲LIST,
NO ̲OF ̲FIELDS,
BYTE ̲LENGTH)(CC): ERROR ̲OK
ERROR? ANALYSE ̲ERROR(CC, 0)
OK?
END DISPLAY ̲RESP ̲TEXT
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲1̲0̲-̲2̲
4.2.2.4.11 V̲U̲S̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲
4.2.2.4.11.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The purpose of this module is to enter the sequence
table and perform the content of one or more of its
records e.g. send information, send commands and set
cursor position.
4.2.2.4.11.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) VUS ̲SEQUENCE(SEQUENCE ̲RECORD ̲NO: INTEGER)
b) VUS ̲SEQUENCE(R4, 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̲
R4 Pointer to SEQUENCE ̲RECORD ̲NO (KEPT)
R6 LINK (DEST)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R0 - R3, R5 - R7 (DEST)
4.2.2.4.11.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲
1) CANCEL SYS CALL
2) SEND STATUS TO UMAM
3) DISMANTLE CIF
4) START EXECUTION
5) UPDATE VDU-HEADER
6) CREATE NEW VERSION
7) SEND FOR COORDINATION
8) SEND FOR RELEASE
9) SEND REQUEST TO SAR
10) DISPLAY COORDINATION NOTIFICATION
11) SEND FOR PRINT
12) SEND CIF TO SAR
13) SEND INFORMATION TO STP
14) SEND TO THP
15) SEND LOG INFORMATION
16) DISPLAY APPEND NOTIFICATION
17) KEEP AND PRESENT
18) DELETE AND PRESENT
19) BUILD TMP RECORDS
20) SIGNAL S.1
21) REQUEST RELEASE SECURITY INTERROGATION
1) Cancel System Call
Coroutine Monitor issues a cancel system call on
F/C-key ̲OP and ANQ ̲OP. It is followed by a SYS
̲WAIT call for the same operation.
2) Send status to UMAM.
A BUFFER is reserved. Depending on status a QEL
is sent to either UMAM ̲RECQ, subqueue 5 (delivery
status) or subqueue 2 (Release and Outgoing msg.
status.
3) Dismantle CIF:
Two calls to MMS is issued, Close View and Dismantle
View.
4) Start Execution
Two calls to MMS is issued, Create View and Open
View and Transaction ID is created.
5) Update VDU-Header.
When a transaction with a certain classification
is processed the VDU-header is updated.
6) Create new Version
A call to MMS, Create View, i issued when the validation
̲invalid completion in returned from VDIA.
7) Send for Coordination
The QEL referencing the CIF is sent to MDP after
having saved the view.
8) Send for release
The QEL referencing the CIF is sent to associated
release terminal after having saved the view.
9) Send request to SAR.
When a retrieve request is issued a Send Request
command is sent to SAR. A Buffer is reserved.
10) Display Coordination Notification.
A buffer containing the SCD's, which not were able
to receive the coordination ̲notification, is read
and the contents is displayed in the response-line.
Output-flag is set to true ref. fig. 4.2.2.4.11.3-10
11) Send For Print
A QEL referencing the message is sent to either
associated printer, or atomal printer.
12) Send CIF to SAR.
When a transaction is terminated information is
sent to SAR.
13) Send Information to STP
A call to STP delivery package.
14) Sent to THP
A released message is sent to THP after having
saved the view.
15) Send LOG information.
Ct BUFFER is reserved. Log information is sent
to LOG Package.
16) Display append Notification
A call to TMP is issued and the text is displayed.
17) Keep and Present.
The CIF is returned to the queue.
The next item from the queue is fetched. If the
mainqueue is empty, a TMP call is issued in order
to display an error message.
18) Delete and Present
The CIF is dismantled.
The next item from the queue is fetched. If the
mainqueue is empty, a TMP call is issued in order
to display an error message.
19) Built TMP Records.
Establish the necessary records for calling TMP.
One record with search parameter inserted, and
one for return parameters.
20) Signal S1
Whenever precedence level changes from Super Flash
or Flash to a level below VCO is informed by VUS
̲S1.
21) Request release security interrogation.
Sends request to SSC package.
4.2.2.4.11.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲
QEL ̲REFERENCE ̲TYPE,
TIME ̲TYPE,
USER ̲CAPABILITY ̲TYPE,
QEL ̲ATTRIBUTES ̲TYPE: ref. CPS/DBD/001
Q REFERENCE ̲TYPE: ref. CPS/DBD/001
BUFFER ̲REFERENCE ̲TYPE: ref. CPS/DBD/001
PRECEDENCE ̲TYPE: ref. CPS/DBD/001
VUS ̲CO ̲OP ̲TYPE: ref. 4.1.4
IDENT ̲TYPE: ref. 4.1.4
IOC ̲FIELD ̲DESCRIPTOR ̲TYPE: ref. 4.1.4
CLASSIFICATION ̲TYPE: ref. 4.2.2.5
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
BUFFER(m):BUFFER ̲REFERENCE ̲
TYPE ref. CPS/DBD/001
DESTINATION: POINTER (m) ref. 4.1.4
LOG ̲BUFFER ̲SIZE: ref. 4.1.4
STATUS ̲BUFFER ̲SIZE: ref. 4.1.4
SOURCE: POINTER (m) ref. 4.1.4
TMP ̲RECORD (m) ref. 4.1.4
CURRENT ̲MODE:USER ̲CAPABI ̲
LITY ̲TYPE(m)
CURRENT ̲PRECEDENCE: PRECEDENCE ̲
TYPE(m)
FORMAT ̲ID(m) ref. 4.1.4
SEQUENCE ̲RECORD ̲NO(m) ref. 4.1.4
FIELD ̲LIST(m) ref. 4.2.2.5
BUFFER ̲LIST(m) ref. 4.2.2.5
SPLIT ̲DIGIT(m) ref. 4.2.2.5
FIRST ̲FIELD ̲RECORD(m):IOC ̲
FIELD ̲DESCRIPTOR ̲TYPE
F/C ̲KEY ̲TYPE: F/C ̲KEY TYPE-TYPE
ref. 4.2.2.5
VUS ̲S3 ref. 4.1.4
VDIA ̲CMD ̲OP(m) ref. 4.1.4
CURSOR ̲RECORD(m) ref. 4.1.4
LOG ̲SEQUENCE ̲RECORD ̲NO(m) ref. 4.2.2.5
APPEND ̲QEL(m): QEL ̲REFERENCE ̲TYPE
HEADER ̲IFCB ref. 4.1.4
FORMAT ̲IFCB ref. 4.1.4
INTERNAL ̲ERROR ̲INF(m):VUS ̲INT ̲ERROR ̲TYPE
CIF ̲REF ̲QEL: QEL ̲REFERENCE ̲TYPE
APPEND ̲QEL: QEL ̲REFERENCE ̲TYPE
RECV ̲Q: Q ̲REFERENCE ̲TYPE
RELS ̲Q: Q ̲REFERENCE ̲TYPE
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
VAR LOG ̲CC ̲FLAG: BOOLEAN
VAR SEQUENCE ̲KEY ̲CODE ̲NO: INTEGER
VAR SEQUENCE ̲AREA = ARRAY(1..MAX ̲RECORDS)OF SEQUENCE
̲RECORD ̲TYPE
TYPE SEQUENCE ̲RECORD =
RECORD
SEQUENCE ̲RECORD.NO: INTEGER RANGE
0..15
MASK ̲1: LONG RANGE
0..32
MASK ̲2: LONG RANGE
0..32
FUNCTION: INTEGER
STATUS: INTEGER RANGE
0..15
LOG AND STAT: INTEGER RANGE 0..3
SPLIT ̲NO: SPLIT ̲NO
̲TYPE
CURSOR ̲POS: 3 CHAR
VDIA ̲CMD: INTEGER RANGE
0..15
SEQUENCE ̲KEY: INTEGER RANGE 0..15
END
TYPE SPLIT ̲NO = (HEADER, FORMAT)
VUS ̲SEQUENCE
SEQUENCE ̲LOOP:
L̲O̲O̲K̲ ̲U̲P̲ ̲S̲E̲Q̲U̲E̲N̲C̲E̲ ̲K̲E̲Y̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲-̲2̲)̲
LOG ̲INFORMATION? - LOG ̲CC ̲FLAG EQ FALSE?
GATHER
INFORMATION
SEND LOG
INFORMATION
GATHER INFORMATION SET LOG ̲CC ̲FLAG = TRUE
E̲X̲E̲C̲U̲T̲E̲ ̲F̲U̲N̲C̲T̲I̲O̲N̲ UPDATE
LOG ̲SEQUENCE
̲RECORD
̲NO
SAR REPORT? GATHER INFORMATION
SEND CIF TO SAR
STATISTIC INFORMATION? GATHER INFORMATION
SEND TO STP
STATUS? GATHER INFORMATION
CASE STATUS ̲IDENT OF
DELIVERY?
RELEASE?
OUTGOING? SEND STATUS TO UMAM
OTHERWISE? V̲U̲S̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲
̲E̲R̲R̲O̲R̲ ̲(̲4̲.̲1̲.̲5̲.̲2̲)̲
END CASE
CURSOR POSITION? S̲E̲Q̲U̲E̲N̲C̲E̲ ̲C̲U̲R̲S̲O̲R̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲-̲3̲)̲
VDIA CMD? S̲E̲Q̲U̲E̲N̲C̲E̲ ̲C̲M̲D̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲-̲4̲)̲
B̲A̲C̲K̲ ̲P̲O̲I̲N̲T̲E̲R̲ ̲K̲E̲Y̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲-̲5̲)̲
END SEQUENCE ̲LOOP
END SEQUENCE
FIG. 4.2.2.4.11-1
LOOK ̲UP ̲SEQUENCE ̲KEY:
MOVE ZERO TO SEQUENCE ̲KEY ̲CODE ̲NO
LOOP
SEQUENCE ̲RECORD ̲NO EQ SEQUENCE ̲KEY ̲CODE
̲NO? EXIT LOOP
SEQUENCE ̲KEY ̲CODE ̲NO = SEQUENCE ̲KEY ̲CODE
̲NO + 1
SEQUENCE ̲KEY ̲CODE ̲NO
GT NO OF RECORDS? - V̲U̲S̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲
̲(̲4̲.̲1̲.̲5̲.̲1̲)̲
END LOOP
END LOOK ̲UP ̲SEQUENCE ̲KEY
FIG. 4.2.2.4.11-2
SEQUENCE ̲CURSOR:
BUILT CURSOR ̲RECORD
CASE SEQUENCE ̲RECORD. SPLIT ̲NO OF
HEADER? MOVE HEADER ̲IFCB TO SPLIT ̲DIGIT
FORMAT? MOVE FORMAT ̲IFCB TO SPLIT ̲DIGIT
OTHERWISE? V̲U̲S̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲ ̲(̲4̲.̲1̲.̲5̲.̲2̲)̲
END CASE
MOVE SPLIT ̲DIGIT TO CURSOR ̲RECORD
CASE SET ̲CURSOR ̲POSITION(CURSOR ̲RECORD)(CC):
ERROR ̲OK
ERROR? - ANALYSE ̲ERROR (CC,0)
OK?
END CASE
END SEQUENCE ̲CURSOR
FIG. 4.2.2.4.11-3
SEQUENCE ̲CMD:
MOVE SEQUENCE ̲RECORD.VDIA ̲CMD TO UFCO ̲OP.CMD
SIGNAL ̲OPSEM(VUS ̲S3, UFCO ̲OP)(CC): OK
END SEQUENCE ̲CMD
FIG. 4.2.2.4.11-4
BACK ̲POINTER ̲KEY
NEW ̲FORMAT EQ NULL? EXIT SEQUENCE
̲LOOP
NEW ̲FORMAT ̲ID EQ FORMAT ̲ID
MOVE NEW ̲FORMAT ̲ID TO FORMAT ̲ID
UPDATE SEQUENCE ̲RECORD ̲NO
S̲E̲A̲R̲C̲H̲ ̲N̲E̲W̲ ̲T̲A̲B̲L̲E̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲1̲1̲-̲6̲)̲
FIG. 4.2.2.4.11-5
SEARCH NEW TABLE
BUILD TMP ̲RECORDS:
CASE TMP ̲SEARCH(TMP ̲RECORDS)(SEQUENCE ̲TABLE,CC):
ERROR ̲OK
ERROR? - ANALYSE ̲ERROR(CC,0)
OK?
END CASE
END SEARCH NEW TABLE
FIG. 4.2.2.4.11-6
4.2.2.5 C̲o̲m̲m̲o̲n̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲D̲a̲t̲a̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
QEL ̲REFERENCE ̲TYPE ref. CPS/DBD/001
QEL ̲ATTRIBUTES ̲TYPE ref. CPS/DBD/001
USER ̲CAPABILITY ̲TYPE ref. CPS/DBD/001
PRECEDENCE ̲TYPE ref. CPS/DBD/001
Q ̲REFERENCE ̲TYPE ref. CPS/DBD/001
VUS ̲CO ̲OP ̲TYPE ref. 4.1.4
IOC ̲FIELD ̲DESCRIPTOR ̲TYPE ref. 4.1.4
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
TRANSACTION ̲ID ref. 4.1.4
VDIA ̲CC ̲OP(m), ref. 4.1.4
VCO ̲(MD ̲OP)m ref. 4.1.4
RETR ̲OP; ref. 4.1.4
UFCO ̲CMD ̲OP (m); ref. 4.1.4
F/C ̲KEY ̲OP; ref. 4.1.4
ANQ ̲OP: VUS ̲CO ̲OP TYPE ref. 4.1.4
TMP ̲RECORD (m): ref. 4.1.4
ATTR ̲RECORD ̲1:QEL ̲ATTRIBUTES ̲TYPE ref. CPS/DBD/001
ATTR ̲RECORD ̲2:QEL ̲ATTRIBUTES ̲TYPE ref. CPS/DBD/001
VUS ̲S1 (m), refer 4.1.4
VUS ̲S3 (m), refer 4.1.4
VUS ̲S2: refer 4.1.4
ANQ refer 4.1.4
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
VAR: SPLIT ̲DIGIT: INTEGER
F/C ̲KEY ̲ALLOWED ̲FLAG: BOOLEAN
RESPONSE ̲TEXT ̲FLAG: BOOLEAN
IN/OUT ̲LINE ̲FLAG: BOOLEAN
CMD ̲FLAG: BOOLEAN
OUTPUT ̲FLAG: BOOLEAN
CURRENT ̲PRECEDENCE: PRECEDENCE ̲TYPE
CURRENT ̲MODE: USER ̲CAPABILITY ̲TYPE
TIMES: TIME ̲TYPE
SEQUENCE ̲RECORD ̲NO: INTEGER
FIELD ̲LIST: ARRAY OF INTEGERS
BLE ̲LIST: ARRAY OF RECORDS
ERROR ̲MSG ̲NO: INTEGER
F/C ̲KEY: FUNCTION ̲KEY ̲TYPE
LOG ̲SEQUENCE ̲RECORD ̲NO: INTEGER
START ̲FLAG: BOOLEAN
4.2.2.6 C̲o̲m̲m̲o̲n̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲s̲
4.2.2.6.1 V̲D̲U̲ ̲I̲N̲I̲T̲
4.2.2.6.1.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The purpose of this procedure is to initialize the
Format Handler.
4.2.2.6.1.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) VDU ̲INIT
b) VDU ̲INIT (R6)
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
R6 LINK (DEST)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
R0-R7 (DEST)
4.2.2.6.1.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
FORMAT ̲AREA ̲REC ̲TYPE ref. CPS/DBD/001
FCDB ̲INDEX ̲TYPE ref. CPS/DBD/001
FILE ̲SYSTEM ̲NAME ̲TYPE ref. CPS/DBD/001
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
HEADER ̲IFCB ref. 4.1.4
FORMAT ̲IFCB ref. 4.1.4
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
CONST VDU ̲SPLITS = 2
FORMAT ̲AREA ̲CONTROL ̲TABLE =
FORMAT ̲AREA ̲DATA ̲BUFFER =
HEADER ̲AREA ̲CONTROL ̲TABLE =
HEADER
̲AREA
̲DATA
̲BUFFER
=
VAR MAIN ̲FDCB : FDCB ̲INDEX ̲TYPE
VDU ̲AREA : FORMAT ̲AREA ̲REC ̲TYPE
FORMAT ̲FILE : FILE ̲SYSTEM ̲NAME ̲TYPE
4.2.2.6.1.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
CASE INIT ̲FORMAT(VDU ̲SPLITS,MAIN ̲FDCB, FORMAT ̲FILE)
(CC):ERROR ̲OK
ERROR? ANALYZE ERROR (CC, 0)
OK?
END CASE
MOVE FORMAT AREA CONSTRAINTS TO VDU ̲AREA
CASE OFFLINE ̲FORMAT ̲AREA(VDU ̲AREA)(FORMAT ̲IFCB, CC):ERROR
̲OK
ERROR? ANALYZE ̲ERROR(CC, 0)
OK?
END CASE
MOVE MEMORY AREA CONSTANTS TO VDU ̲AREA
CASE DEFINE ̲FORMAT ̲AREA(VDU ̲AREA)(HEADER ̲IFCB, CC):ERROR
̲OK
ERROR? ANALYZE ̲ERROR(CC, 0)
OK?
END CASE
Fig. 4.2.2.6.1
4.2.4.6.2 R̲E̲S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲
4.2.4.6.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 procedure is to reset the cursor
position. To this purpose an earlier updated record
is fetched.
4.2.4.6.2.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲
a) C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
RESET ̲CURSOR
b) RESET ̲CURSOR (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̲
R0-R7 (DEST)
4.2.2.6.2.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
IOC FIELD ̲DESCRIPTION ̲TYPE ref. 4.1.4
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
SPLIT ̲DIGIT (m) ref. 4.2.2.5
HEADER ̲IFCB ref. 4.1.4
CURSOR ̲RECORD ̲1 (m) ref. 4.1.4
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.2.6.2.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
CURSOR ̲RECORD ̲1 is fetched
A call to IOC is issued
Variable SPLIT ̲DIGIT is updated
4.2.2.6.2 R̲E̲S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲
GET CURSOR ̲RECORD ̲1
CASE ̲SET ̲CURSOR ̲POSITION(SPLIT ̲DIGIT,LINE ̲NO,
LINE ̲INCARNATION,FIELD ̲NO,
LINES ̲ABOVE)(CC):ERROR ̲OK
ERROR?-ANALYZE ̲ERROR(CC, 0)
OK?-MOVE CURSOR ̲RECORD ̲1.SPLIT ̲DIGIT TO SPLIT ̲DIGIT
END CASE
END RESET ̲CURSOR
Fig. 4.2.2.6.2-1
4.2.4.6.3 R̲E̲S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲ ̲O̲N̲ ̲C̲M̲D̲ ̲L̲I̲N̲E̲
4.2.4.6.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̲
This procedure resets the cursor on the command line
after illegal entry of F/C keys in those cases where
a command, no. of lines to be deleted/inserted or a
response message code were expected.
4.2.4.6.3.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) RESET ̲CURSOR ̲ON ̲CMD ̲LINE
b) RESET ̲CURSOR ̲ON ̲CMD ̲LINE (R6)
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
Call Register
R6 LINK (DEST)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R0, R7 (DEST)
4.2.4.6.3.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
IOC ̲FIELD ̲DESCRIPTOR ̲TYPE ref. 4.1.4
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
CURSOR ̲ON ̲CMD ̲RECORD, ref. 4.1.4
HEADER ̲IFCB ref. 4.2.2.5
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.4.6.3.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
CURSOR ̲ON ̲CMD ̲RECORD is fetched.
A call to IOC is issued.
RESET ̲CURSOR ̲ON ̲CMD ̲LINE
GET CURSOR ̲ON ̲CMD ̲RECORD
CASE SET ̲CURSOR ̲POSITION(HEADER,LINE ̲NO,
LINE ̲INCARNATION,FIELD ̲NO,
LINES ̲ABOVE)(CC):ERROR ̲OK
ERROR?-ANALYZE ̲ERROR(CC, 0)
OK?
END CASE
END RESET ̲CURSOR ̲ON ̲CMD ̲LINE
Fig. 4.2.2.6.3-1
4.2.2.6.4 D̲I̲S̲P̲L̲A̲Y̲ ̲E̲R̲R̲O̲R̲ ̲M̲S̲G̲
4.2.2.6.4.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The purpose of this procedure is to display error/response
messages.
4.2.1.6.4.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) DISPLAY ̲ERROR ̲MSG
b) DISPLAY ̲ERROR ̲MSG (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̲
R0-R7 (DEST)
4.2.2.6.4.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
N/A
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
ERROR ̲MSG ̲NO (m) Refer 4.2.2.5
TMP ̲RECORD (m) Refer 4.1.4
FIELD ̲LIST (m) Refer 4.2.2.5
BLE ̲LIST (m) Refer 4.2.2.5
OUTPUT ̲FLAG (m) Refer 4.2.2.5
ERROR ̲TEXT (m) Refer 4.2.2.5
HEADER IFCB Refer 4.1.4
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
4.2.2.6.4.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
A TMP record is built and a call to TMP is issued.
A call to IOC is issued.
DISPLAY ̲ERROR ̲MSG:
GET ̲ERROR ̲MSG ̲NO
BUILD TMP RECORDS
CASE TMP ̲SEARCH(TMP ̲RECORDS)(ERROR ̲TABLE, CC)
ERROR ̲OK
ERROR? ANALYSE ̲ERROR(CC, 0)
OK?-BUILD FIELD ̲LIST
BUILD BLE ̲LIST
CASE FIELDS ̲OUTPUT(HEADER ̲IFCB,FIELD ̲LIST,BLE
̲LIST,
NO OF FIELDS, BYTE ̲LENGTH)(CC):
ERROR ̲OK
ERROR?-ANALYZE ̲ERROR(CC, 0)
OK?-SET OUTPUT ̲FLAG = TRUE
END CASE
END CASE
END DISPLAY ̲ERROR ̲MSG
Fig. 4.2.2.6.4-1
4.2.2.7 S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
4.2.2.7.1 U̲F̲C̲O̲-̲V̲D̲I̲A̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
INSERT ̲LINE
DELETE ̲LINE
CLOSE ̲DOWN
CLEAR ̲VDU
CANCEL
OUTPUT ̲FORMAT
OUTPUT ̲MSG
INPUT ̲FORMAT
INPUT ̲MSG
INPUT ̲REQUEST
SUSPEND
APPEND
INITIALIZE ̲VDIA
4.2.2.7.2 V̲C̲O̲-̲U̲F̲C̲O̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
CLOSE ̲DOWN
STOP ̲UFCO
BLOCK ̲VDU
INITIALIZE ̲UFCO
RESTART ̲UFCO
START ̲UFCO
4.2.2.7.3 R̲E̲T̲R̲-̲U̲F̲C̲O̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
ONLINE ̲NOTIFICATION
OFFLINE ̲NOTIFICATION
RETRIEVAL ̲NOTIFICATION
APPEND ̲NOTIFICATION
4.2.2.7.4 V̲D̲I̲A̲-̲U̲F̲C̲O̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
VDIA ̲INITIALIZE ̲CC
LINES ̲INSERTED ̲CC
LINES ̲DELETED ̲CC
CLEAR ̲VDU ̲CC
CANCEL ̲CC
OUTPUT ̲FORMAT ̲CC
OUTPUT ̲MSG ̲CC
INPUT ̲FORMAT ̲CC
INPUT ̲MSG ̲CC
INPUT ̲REQUEST ̲CC
SUSPEND ̲CC
DEFER ̲VALID ̲CC
RELEASE ̲VALID ̲CC
COORDINATE ̲VALID ̲CC
APPEND ̲VALID ̲CC
APPEND ̲CC
4.2.2.7.5 U̲F̲C̲O̲-̲V̲C̲O̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
INITIALIZE CC
STOP ̲UFCO ̲CC
CLOSE ̲DOWN ̲CC
BLOCK ̲VDU ̲CC
START ̲UFCO ̲CC
RESTART ̲UFCO ̲CC
CURRENT ̲MODE ̲CC
4.2.2.7.6 U̲F̲C̲O̲-̲U̲M̲A̲M̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
Refer CPS/ICD/009
4.2.2.7.7 U̲M̲A̲M̲-̲U̲F̲C̲O̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
Refer CPS/ICD/009