top - download
⟦ae0a38545⟧ Wang Wps File
Length: 42975 (0xa7df)
Types: Wang Wps File
Notes: CPS/SDS/039
Names: »4846A «
Derivation
└─⟦27551141f⟧ Bits:30006195 8" Wang WCS floppy, CR 0468A
└─ ⟦this⟧ »4846A «
WangText
…15……05……15……07……14……0b……14……0d……14……00……86…1
…02… …02… …02…
…02…CPS/SDS/039
USER VDU…02…841101…02……02…
DETAILED DESIGN SPECIFICATION
…02…ISSUE 1…02…CAMPS
4.2.5.4.4 P̲R̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲A̲C̲T̲I̲O̲N̲ ̲M̲o̲d̲u̲l̲e̲
4.2.5.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̲
This procedure inspects the content of the QELs
received in the PREP-queue.
The input in the queue are:
- status changes
Status concerning released messages will be sent
in a buffer while other status types will be sent
in a QEL.
Final status types will be stored in the Intermediate
File while other status types will be stored in
the Preparation File.
4.2.5.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) PREP ̲QUEUE ̲ACTION
b) PREP ̲QUEUE ̲ACTION(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̲
None
R0 - R7 (DEST)
4.2.5.4.4.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
a) R̲E̲O̲R̲G̲ ̲S̲T̲A̲T̲U̲S̲
The reference to the old CIF version is deleted
from the status record and a reference to the new
CIF version is inserted.
b) C̲O̲N̲V̲E̲R̲T̲ ̲A̲T̲T̲R̲ ̲T̲O̲ ̲I̲N̲T̲A̲
The contents of UMAM ̲ATTR is converted and placed
in INTA ̲REC
c) R̲E̲A̲D̲ ̲I̲T̲E̲M̲ ̲R̲E̲F̲
The Item Reference Identity of the CIF referenced
by QEL1 is fetched by a call to Message Monitor.
The Item-ref is placed in STA ̲ITEM.
d) C̲O̲N̲V̲E̲R̲T̲ ̲R̲E̲L̲B̲U̲F̲ ̲T̲O̲ ̲I̲N̲T̲A̲
The contents of the RELEASE ̲BUFFER and STATUS ̲REC
is moved to INTA ̲REC.
e) C̲O̲N̲V̲E̲R̲T̲ ̲S̲C̲ ̲R̲E̲L̲B̲U̲F̲ ̲T̲O̲ ̲I̲N̲T̲A̲
The contents of the RELEASE ̲BUFFER is moved to
INTA ̲REC.
f) U̲N̲K̲N̲O̲W̲N̲ ̲C̲H̲A̲N̲G̲E̲
The status of the recieved CIF is unknown. This
procedure reads Maintype and Orig-SCD from the
administration field of the CIF and builts up a
valid set of QEL ̲ATTRIBUTES.
g) F̲I̲N̲A̲L̲ ̲S̲V̲C̲
If a Service Message has reached the final state,
then the status will be updated by this procedure.
If first entry, then a status record will be inserted
in the Intermediate File otherwise the status record
referencing the message will be moved from the
Preparation File to the Intermediate File.
4.2.5.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̲
CPS ̲PREFIX.D*GENERAL
CPS ̲PREFIX.D*DAMOS ̲GENERAL
CPS ̲PREFIX.D*CPS ̲CONF
CPS ̲PREFIX.D*CPS ̲GENERAL
CPS ̲PREFIX.D*CSF ̲GENERAL
CPS ̲PREFIX.D*UTILITY ̲FUNC
CPS ̲PREFIX.D*QUEUE ̲MON
CPS ̲PREFIX.D*MESSAGE ̲MON
CPS ̲PREFIX.D*SYS ̲CALL ̲MON
CPS ̲PREFIX.D*CPS ̲ERROR ̲HAND
CPS ̲PREFIX.D*FMS ̲GENERAL
CPS ̲PREFIX.D*IOS ̲PARAMS
CPS ̲PREFIX.D*SSC ̲GENERAL
CPS ̲PREFIX.D*SSC ̲SYS ̲CONF
CPS ̲PREFIX.D*SITE ̲CONF
CPS ̲PREFIX.D*QUEUE ̲GENERAL
CPS ̲PREFIX.D*CPS ̲APP ̲GENERAL
CPS ̲PREFIX.D*CPS ̲IIF
CPS ̲PREFIX.D*TRACE
CPS ̲PREFIX.D*CPS ̲AMOS ̲CONF
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
UMAM ̲VIEW ̲ATTR (m)
STA ̲ITEM (m)
INTA ̲REC (m)
UMAM ̲ATTR (m)
BIG ̲BUF ̲CONTENTS
LITTLE ̲BUF
UMAM ̲COLQ (m)
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
CONST
FIRST ̲VERSION = 1
CONST
REL ̲BUF ̲OFFSET = 1
VAR
SAVER6: INTEGER
4.2.5.4.4.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲ ̲
The SUBTYPE, STATUS ̲TYPE and STATUS ̲STATE are inspected.
Depending on the combination of the variables different
actions are taken. All status changes except "message-
released are reported in a QEL. The "message-released"
information is delivered in a buffer. Final entries
are stored in the Intermediate File while other entries
are stored in the Preparation File.
PREP ̲QUEUE ̲ACTION
RECV ̲NEXT LOOP
S̲U̲B̲Q̲ ̲T̲W̲O̲ ̲Q̲E̲L̲ ̲I̲N̲S̲P̲E̲C̲T̲I̲O̲N̲(̲4̲.̲2̲.̲5̲.̲4̲.̲4̲-̲2̲)̲
U̲M̲A̲M̲ ̲Q̲E̲L̲ ̲D̲I̲S̲M̲A̲N̲T̲L̲E̲(̲Q̲E̲L̲1̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲)
UMAM ̲COLQ.SUBQUEUE = U ̲PREPQ
CASE RECEIVE ̲FIRST ̲QEL(WAIT=FALSE,UMAM ̲COLQ,
UMAM ̲ATTR)
(UMAM
̲ATTR,QEL1,
SUBQ,
CC):
ERROR
̲OK
ERROR? - CASE ANALYZE ̲ERROR(CC, 1, QUEUE
̲EMPTY):(LA1)
LA1? - EXIT RECV ̲NEXT LOOP
END CASE
OK?
END CASE
END RECV ̲NEXT LOOP
FIGURE 4.2.5.4.4-1
SUBQ ̲TWO ̲QEL ̲INSPECTION
CASE UMAM ̲ATTR. MAINTYPE OF QELEMENT ̲MAIN ̲TYPE
PLAINDRESS, PLAINDRESS ̲DATA, PLAINDRESS ̲SERVICE,
ABB ̲PLAINDRESS ̲SERVICE, ABB ̲SERVICE,
SC ̲VDU ̲PAGE, SC ̲COMMENT,
COMMENT? - CASE UMAM ̲ATTR.SUBTYPE OF MESSAGE ̲SUBTYPE
DEFERRED/SUSPENDED- O̲U̲T̲ ̲S̲T̲A̲ ̲U̲P̲
̲(̲-̲ ̲3̲)̲
OTHERWISE? - U̲Q̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
END CASE
TEP ̲INT? - CASE UMAM ̲ATTR.SUBTYPE OF TEP ̲INTERNAL
̲SUBTYPE
MSG ̲STATUS ̲CHANGE? - R̲E̲L̲ ̲S̲T̲A̲ ̲U̲P̲
̲(̲-̲4̲)̲
SVC ̲FINAL ̲STATUS - F̲I̲N̲A̲L̲ ̲S̲V̲C̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲4̲.̲3̲.̲7̲)̲
UNKNOWN ̲STATUS ̲CHANGE? - U̲N̲K̲N̲O̲W̲N̲
̲C̲H̲A̲N̲G̲E̲
(4̲.̲2̲.̲5̲.̲4̲.̲4̲.̲3̲.̲6̲)̲
OTHERWISE? - U̲Q̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
END CASE
OTHERWISE? - U̲Q̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
END CASE
FIGURE 4.2.5.4.4-2
OUT ̲STA ̲UP
R̲E̲A̲D̲ ̲I̲T̲E̲M̲ ̲R̲E̲F̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲4̲.̲3̲.̲3̲)
EQUIVALENCE(UMAM ̲ATTR.HEADER.INF, PARAM: OUTG ̲PARAM
̲TYPE)
CASE UMAM ̲ATTR.FLAG OF STATUS ̲STATE ̲TYPE
FIRST ̲FINAL? - C̲O̲N̲V̲E̲R̲T̲ ̲A̲T̲T̲R̲ ̲T̲O̲ ̲I̲N̲T̲A̲(̲4̲.̲2̲.̲5̲.̲4̲.̲3̲.̲3̲.̲2̲)̲
I̲N̲C̲L̲U̲D̲E̲ ̲I̲N̲ ̲I̲N̲T̲A̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲5̲)̲
FIRST ̲NOTFINAL? I̲N̲C̲L̲U̲D̲E̲
̲I̲N̲
̲P̲R̲E̲P̲
̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲7̲)̲
NOTFIRST ̲FINAL? CASE L̲O̲O̲K̲U̲P̲ ̲S̲T̲A̲T̲U̲S̲ ̲R̲E̲C̲(̲S̲T̲A̲
̲I̲T̲E̲M̲,̲ ̲P̲A̲R̲A̲M̲.̲L̲T̲D̲)
(S̲T̲A̲T̲U̲S̲
̲R̲E̲C̲)̲E̲R̲R̲O̲R̲
̲O̲K̲(̲4̲.̲2̲.̲5̲.̲6̲.̲2̲1̲)̲
ERROR?
-
U̲Q̲
̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
OK?
-
STATUS
̲REC.STATUS
=
PARAM.STATUS
̲CODE
C̲O̲N̲V̲E̲R̲T̲
̲O̲U̲T̲G̲
̲T̲O̲
̲I̲N̲T̲A̲(̲S̲T̲A̲T̲U̲S̲
̲R̲E̲C̲)̲
(̲4̲.̲2̲.̲5̲.̲6̲.̲7̲)̲
E̲X̲C̲L̲U̲D̲E̲
̲F̲R̲O̲M̲
̲P̲R̲E̲P̲(̲S̲T̲A̲T̲U̲S̲
̲R̲E̲C̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲2̲7̲)̲
I̲N̲C̲L̲U̲D̲E̲
̲I̲N̲
̲I̲N̲T̲A̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲5̲)̲
END CASE
NOTFIRST ̲NOTFINAL? - R̲E̲O̲R̲G̲
̲S̲T̲A̲T̲U̲S̲(̲4̲.̲2̲.̲5̲.̲4̲.̲4̲.̲3̲.̲1̲)̲
OTHERWISE? - U̲Q̲
̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
END CASE
FIGURE 4.2.5.4.4-3
REL ̲STA ̲UP
EQUIVALENCE(LITTLE ̲BUF(1), REL ̲BUF: REL ̲BUF ̲TYPE)
CASE READ ̲BUFFER(QEL1, LITTLE ̲BUF (1), SIZE(REL ̲BUF
̲TYPE,1)
(SIZE, CC): ERROR ̲OK
ERROR? - CASE ANALYZE ̲ERROR(CC, 1, SIZE
̲ERROR): (LA1)
LA1? - U̲Q̲ ̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
END CASE
OK? UMAM ̲ATTR.HEADER.FLAGS NE BIT ̲0 ?
C̲O̲N̲V̲E̲R̲T̲ ̲S̲C̲ ̲R̲E̲L̲B̲U̲F̲ ̲T̲O̲ ̲I̲N̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲4̲.̲3̲.̲5̲)
I̲N̲C̲L̲U̲D̲E̲ ̲I̲N̲ ̲I̲N̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲5̲)
CASE L̲O̲O̲K̲U̲P̲ ̲S̲T̲A̲T̲U̲S̲ ̲R̲E̲C̲(̲R̲E̲L̲ ̲B̲U̲F̲.̲C̲I̲F̲
̲R̲E̲F̲E̲R̲E̲N̲C̲E̲,̲
R̲E̲L̲ ̲B̲U̲F̲.̲L̲T̲D̲
̲(̲P̲R̲E̲P̲)̲
(̲S̲T̲A̲T̲U̲S̲ ̲R̲E̲C̲)̲:̲E̲R̲R̲O̲R̲ ̲O̲K̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲2̲1̲)̲
ERROR? - U̲Q̲ ̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
OK? C̲O̲N̲V̲E̲R̲T̲ ̲R̲E̲L̲B̲U̲F̲ ̲T̲O̲ ̲I̲N̲T̲A̲(̲S̲T̲A̲T̲U̲S̲
̲R̲E̲C̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲4̲.̲3̲.̲4̲)̲
E̲X̲C̲L̲U̲D̲E̲ ̲F̲R̲O̲M̲ ̲P̲R̲E̲P̲(̲S̲T̲A̲T̲U̲S̲
̲R̲E̲C̲)̲
(̲4̲.̲2̲.̲5̲.̲6̲.̲2̲7̲)̲
I̲N̲C̲L̲U̲D̲E̲ ̲I̲N̲ ̲I̲N̲T̲A̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲5̲)̲
END CASE
END CASE
FIGURE 4.2.5.4.4-4
4.2.5.4.5 V̲D̲U̲ ̲P̲A̲G̲E̲ ̲S̲T̲O̲R̲A̲G̲E̲ ̲M̲o̲d̲u̲l̲e̲
4.2.5.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 store VDU-pages.
If the DISPLAY ̲NAME is not recognised then the message
will be sent to the MDCO.
4.2.5.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) VDU ̲PAGE ̲STORAGE
b) VDU ̲PAGE ̲STORAGE (R6)
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲r̲r̲e̲c̲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.5.4.5.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
None
4.2.5.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̲
CPS ̲PREFIX.D*GENERAL
CPS ̲PREFIX.D*DAMOS ̲GENERAL
CPS ̲PREFIX.D*CPS ̲CONF
CPS ̲PREFIX.D*CPS ̲GENERAL
CPS ̲PREFIX.D*CSF ̲GENERAL
CPS ̲PREFIX.D*QUEUE ̲MON
CPS ̲PREFIX.D*MESSAGE ̲MON
CPS ̲PREFIX.D*CPS ̲ERROR ̲HAND
CPS ̲PREFIX.D*FMS ̲GENERAL
CPS ̲PREFIX.D*IOS ̲PARAMS
CPS ̲PREFIX.D*SSC ̲GENERAL
CPS ̲PREFIX.D*SSC ̲SYS ̲CONF
CPS ̲PREFIX.D*SITE ̲CONF
CPS ̲PREFIX.D*QUEUE ̲GENERAL
CPS ̲PREFIX.D*CPS ̲APP ̲GENERAL
CPS ̲PREFIX.D*TRACE
CPS ̲PREFIX.D*CPS ̲AMOS ̲CONF
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
UMAM ̲ ATTR
QEL1
CREATE ̲QEL
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.5.4.5.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
The input from the queue is analysed. If the Display
Name is known by the system (validated via TMP) then
the new view name will be stored instead of the old
name. If the name is not recognised then the CIF will
be sent to the MDCO.
VDU ̲PAGE ̲STORAGE
CASE UMAM ̲ATTR.MAINTYPE OF QELEMENT ̲MAIN ̲TYPE
SC ̲VDU ̲PAGE? - CASE UMAM ̲ATTR.SUBTYPE OF MESSAGE
̲SUBTYPE
FOR ̲STORAGE? C̲H̲A̲N̲G̲E̲ ̲D̲I̲S̲P̲
̲N̲A̲M̲E̲(̲-̲2̲)̲
OTHERWISE? - U̲Q̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
END CASE
OTHERWISE? - U̲Q̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
END CASE
U̲M̲A̲M̲ ̲D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲(̲Q̲E̲L̲1̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲)̲
FIGURE 4.2.5.4.5-1
CHANGE ̲DISP ̲NAME
R̲E̲A̲D̲ ̲A̲D̲M̲ ̲F̲I̲E̲L̲D̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲4̲1̲)
CASE V̲D̲U̲ ̲P̲A̲G̲E̲ ̲L̲O̲C̲K̲U̲P̲(̲N̲O̲ ̲B̲U̲F̲F̲E̲R̲)̲(̲V̲I̲E̲W̲ ̲N̲A̲M̲E̲)̲:̲E̲R̲R̲O̲R̲ ̲O̲K̲(̲
̲4̲.̲2̲.̲5̲.̲6̲.̲2̲)̲
ERROR: S̲E̲N̲D̲ ̲C̲I̲F̲ ̲T̲O̲ ̲M̲D̲C̲O̲ ̲(̲R̲O̲U̲T̲I̲N̲E̲,̲ ̲N̲O̲N̲ ̲D̲E̲L̲I̲V̲E̲R̲Y̲
̲S̲C̲ ̲O̲B̲J̲E̲C̲T̲S̲) (4̲.̲2̲.̲5̲.̲6̲.̲2̲0̲)
OK: C̲A̲S̲E̲ ̲L̲O̲C̲K̲U̲P̲ ̲P̲A̲S̲S̲I̲V̲E̲ ̲C̲I̲F̲ ̲(̲V̲I̲E̲W̲ ̲N̲A̲M̲E̲)̲
̲(̲C̲R̲E̲A̲T̲E̲ ̲Q̲E̲L̲)
(4̲.̲2̲.̲5̲.̲6̲.̲1̲3̲)
ERROR?
OK: U̲N̲L̲O̲C̲K̲ ̲P̲A̲S̲S̲I̲V̲E̲ ̲C̲I̲F̲S̲ ̲(̲C̲R̲E̲A̲T̲E̲
̲Q̲E̲L̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲2̲8̲)̲
U̲M̲A̲M̲ ̲D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲(̲C̲R̲E̲A̲T̲E̲
̲Q̲E̲L̲,̲ ̲0̲ ̲V̲I̲E̲W̲, F̲A̲L̲S̲E̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲)
END CASE
U̲M̲A̲M̲ ̲L̲O̲C̲K̲ ̲C̲I̲F̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲9̲)
U̲P̲D̲A̲T̲E̲ ̲D̲I̲S̲P̲L̲A̲Y̲ ̲T̲A̲B̲L̲E̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲4̲0̲)
END CASE
FIGURE 4.2.5.4.5-2
4.2.5.4.6 S̲T̲A̲T̲U̲S̲ ̲R̲E̲Q̲U̲E̲S̲T̲ ̲M̲o̲d̲u̲l̲e̲
4.2.5.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̲
This procedure analyzes the different sorts of STATUS
̲REQUESTS and calls appropriate modules which will take
over for further action.
4.2.5.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) STATUS ̲REQ
b) STATUS ̲REQ (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̲
None
R1 - R7 (DEST)
4.2.5.4.6.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
None
4.2.5.4.6.6 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̲
CPS ̲PREFIX.D*GENERAL
CPS ̲PREFIX.D*DAMOS ̲GENERAL
CPS ̲PREFIX.D*CPS ̲CONF
CPS ̲PREFIX.D*CPS ̲GENERAL
CPS ̲PREFIX.D*CSF ̲GENERAL
CPS ̲PREFIX.D*QUEUE ̲MON
CPS ̲PREFIX.D*MESSAGE ̲MON
CPS ̲PREFIX.D*CPS ̲ERROR ̲HAND
CPS ̲PREFIX.D*FMS ̲GENERAL
CPS ̲PREFIX.D*IOS ̲PARAMS
CPS ̲PREFIX.D*SSC ̲GENERAL
CPS ̲PREFIX.D*SSC ̲SYS ̲CONF
CPS ̲PREFIX.D*SITE ̲CONF
CPS ̲PREFIX.D*UMAM ̲SUBTYPE
CPS ̲PREFIX.D*CPS ̲APP ̲GENERAL
CPS ̲PREFIX.D*CPS ̲IIF
CPS ̲PREFIX.D*TRACE
CPS ̲PREFIX.D*CPS ̲AMOS ̲CONF
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲e̲
STATUS ̲INFO (m)
QEL1
UMAM ̲ATTR (m)
FILE ̲DIR (m)
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
VAR
SAVER6 : INTEGER
4.2.5.4.6.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
Refer figure 4.2.5.4.6-1.
FLAG GT ALLOWED? U̲Q̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)
FLAG EQ PERIODIC? S̲T̲O̲R̲E̲ ̲D̲I̲R̲ ̲(̲N̲E̲W̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲8̲)
I̲N̲P̲U̲T̲ ̲D̲I̲R̲ ̲(̲O̲L̲D̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲6̲)
FILE ̲DIR.NEXT ̲LTD GT MAX
̲LTD? R̲E̲S̲E̲T̲ ̲F̲I̲L̲E̲S̲
(̲4̲.̲2̲.̲5̲.̲6̲-̲3̲)̲
INCREMENT FILE ̲DIR.NEXT
̲LTD
S̲T̲O̲R̲E̲ ̲D̲I̲R̲ ̲(̲O̲L̲D̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲8̲)
STATUS ̲INFOR.LTD = UMAM ̲ATTR.INF
STATUS ̲INFO.STATUS ̲TYPE = NORMAL
CASE UMAM ̲ATTR.FLAG OF STATUS ̲IDENT ̲TYPE
OUTGOING ̲ID: P̲R̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲(̲O̲U̲T̲G̲O̲I̲N̲G̲ ̲M̲S̲G̲
̲S̲T̲A̲T̲U̲S̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲1̲)
G̲E̲N̲ ̲O̲U̲T̲ ̲S̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲2̲)
C̲L̲O̲S̲E̲ ̲S̲E̲N̲D̲ ̲R̲E̲P̲L̲Y̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲6̲)
RELEASE ̲ID: P̲R̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲(̲M̲S̲G̲ ̲R̲E̲L̲E̲A̲S̲E̲ ̲S̲T̲A̲T̲U̲S̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲1̲)
G̲E̲N̲ ̲R̲E̲L̲ ̲S̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲0̲)
C̲L̲O̲S̲E̲ ̲S̲E̲N̲D̲ ̲R̲E̲P̲L̲Y̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲6̲)
DELIVERY ̲ID: P̲R̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲(̲D̲E̲L̲I̲V̲E̲R̲Y̲ ̲S̲T̲A̲T̲U̲S̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲1̲)
G̲E̲N̲ ̲D̲E̲L̲ ̲S̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲1̲)
C̲L̲O̲S̲E̲ ̲S̲E̲N̲D̲ ̲R̲E̲P̲L̲Y̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲6̲)
SERVICE ̲ID: P̲R̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲(̲O̲U̲T̲G̲O̲I̲N̲G̲ ̲S̲E̲R̲V̲I̲C̲E̲
̲M̲S̲G̲
S̲T̲A̲T̲U̲S̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲1̲)̲
G̲E̲N̲ ̲S̲V̲C̲ ̲S̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲3̲)
C̲L̲O̲S̲E̲ ̲S̲E̲N̲D̲ ̲R̲E̲P̲L̲Y̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲6̲)
PERIODIC ̲ID: M̲I̲D̲N̲I̲G̲H̲T̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲6̲-̲2̲)
END CASE
UMAM ̲ATTR.FLAGS EQ PERIODIC? I̲N̲P̲U̲T̲ ̲D̲I̲R̲
̲(̲N̲E̲W̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲6̲)
U̲M̲A̲M̲ ̲D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲(̲Q̲E̲L̲1̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲)
FIGURE 4.2.5.4.6-1
MIDNIGHT
STATUS ̲INFO. STATUS ̲TYPE = MIDNIGHT
STATUS ̲INFO.LTD GE NO ̲OF ̲VDUS?
P̲R̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲(̲D̲E̲L̲I̲V̲E̲R̲Y̲ ̲M̲I̲D̲N̲I̲G̲H̲T̲ ̲S̲T̲A̲T̲U̲S̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲1̲)
G̲E̲N̲ ̲D̲E̲L̲ ̲S̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲1̲)
C̲L̲O̲S̲E̲ ̲S̲E̲N̲D̲ ̲R̲E̲P̲L̲Y̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲6̲)
P̲R̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲(̲O̲U̲T̲G̲O̲I̲N̲G̲ ̲M̲S̲G̲ ̲M̲I̲D̲N̲I̲G̲H̲T̲ ̲S̲T̲A̲T̲U̲S̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲1̲)
G̲E̲N̲ ̲O̲U̲T̲ ̲S̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲2̲)
C̲L̲O̲S̲E̲ ̲S̲E̲N̲D̲ ̲R̲E̲P̲L̲Y̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲6̲)
P̲R̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲(̲M̲S̲G̲ ̲R̲E̲L̲E̲A̲S̲E̲ ̲M̲I̲D̲N̲I̲G̲H̲T̲ ̲S̲T̲A̲T̲U̲S̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲1̲)
G̲E̲N̲ ̲R̲E̲L̲ ̲S̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲0̲)
C̲L̲O̲S̲E̲ ̲S̲E̲N̲D̲ ̲R̲E̲P̲L̲Y̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲6̲)
STATUS ̲INFO. LTD LE NO ̲OF ̲MASSES?
P̲R̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲(̲O̲U̲T̲G̲O̲I̲N̲G̲ ̲S̲E̲R̲V̲I̲C̲E̲ ̲M̲S̲G̲ ̲S̲T̲A̲T̲U̲S̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲1̲)
G̲E̲N̲ ̲S̲V̲C̲ ̲S̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲1̲)
C̲L̲O̲S̲E̲ ̲S̲E̲N̲D̲ ̲R̲E̲P̲L̲Y̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲6̲)
END
FIGURE 4.2.5.4.6-2
RESET FILES
C̲L̲E̲A̲R̲ ̲C̲O̲U̲N̲T̲E̲R̲S̲ ̲(̲4̲.̲3̲.̲5̲.̲6̲.̲4̲5̲)
S̲T̲O̲R̲E̲ ̲D̲I̲R̲ ̲(̲O̲L̲D̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲8̲)
I̲N̲P̲U̲T̲ ̲D̲I̲R̲ ̲(̲N̲E̲W̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲6̲)
C̲L̲E̲A̲R̲ ̲B̲I̲G̲ ̲B̲U̲F̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲4̲4̲)̲
R̲E̲S̲E̲T̲ ̲F̲I̲L̲E̲ ̲(̲O̲L̲D̲ ̲O̲U̲T̲ ̲A̲R̲E̲A̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲4̲2̲)
R̲E̲S̲E̲T̲ ̲F̲I̲L̲E̲ ̲(̲O̲L̲D̲ ̲R̲E̲L̲E̲A̲S̲E̲ ̲A̲R̲E̲A̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲4̲2̲)̲
R̲E̲S̲E̲T̲ ̲F̲I̲L̲E̲ ̲(̲O̲L̲D̲ ̲D̲E̲L̲I̲V̲E̲R̲ ̲A̲R̲E̲A̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲4̲2̲)
FIGURE 4.2.5.4.6-3
4.2.5.4.7 D̲E̲L̲I̲V̲E̲R̲Y̲ ̲S̲T̲A̲T̲U̲S̲ ̲M̲o̲d̲u̲l̲e̲
4.2.5.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 initiate a delivery
status updating.
4.2.5.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) DELIVERY ̲STATUS
b) DELIVERY ̲STATUS ̲UPDATING (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̲
None
R1 - R7 (DEST)
4.2.5.4.7.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
None
4.2.5.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̲
CPS ̲PREFIX.D*GENERAL
CPS ̲PREFIX.D*DAMOS ̲GENERAL
CPS ̲PREFIX.D*CPS ̲CONF
CPS ̲PREFIX.D*CPS ̲GENERAL
CPS ̲PREFIX.D*CSF ̲GENERAL
CPS ̲PREFIX.D*UTILITY ̲FUNC
CPS ̲PREFIX.D*QUEUE ̲MON
CPS ̲PREFIX.D*MESSAGE ̲MON
CPS ̲PREFIX.D*SYS ̲CALL ̲MON
CPS ̲PREFIX.D*CPS ̲ERROR ̲HAND
CPS ̲PREFIX.D*FMS ̲GENERAL
CPS ̲PREFIX.D*IOS ̲PARAMS
CPS ̲PREFIX.D*SSC ̲GENERAL
CPS ̲PREFIX.D*SSC ̲SYS ̲CONF
CPS ̲PREFIX.D*SITE ̲CONF
CPS ̲PREFIX.D*QUEUE ̲GENERAL
CPS ̲PREFIX.D*CPS ̲APP ̲GENERAL
CPS ̲PREFIX.D*CPS ̲IIF
CPS ̲PREFIX.D*TRACE
CPS ̲PREFIX.D*CPS ̲AMOS ̲CONF
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
QEL1 (m)
INTA ̲REC (m)
UMAM ̲ATTR
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
VAR
SAVER6 : INTEGER
4.2.5.4.7.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
Refer figure 4.2.5.4.7-1.
DELIVERY ̲STATUS ̲UPDATING
CASE UMAM ̲ATTR.MAINTYPE OF QELEMENT ̲MAINTYPE
TEP ̲INT? - CASE UMAM ̲ATTR. SUBTYPE OF TEP ̲INTERNAL
̲SUBTYPE
MSG ̲STATUS ̲CHANGE? - S̲T̲A̲T̲U̲S̲ ̲U̲P̲D̲A̲T̲E̲
̲(̲-̲2̲)̲
OTHERWISE? U̲Q̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)
END CASE
OTHERWISE? - U̲Q̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
END CASE
U̲M̲A̲M̲ ̲D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲(̲Q̲E̲L̲1̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲)̲
FIGURE 4.2.5.4.7-1
STATUS ̲UPDATE
EQUIVALENCE(LITTLE ̲BUF(1), DEL ̲BUF: DEL ̲STA ̲TYPE)
CASE READ ̲BUFFER(QEL1, DEL ̲BUF, SIZE(DEL ̲STA ̲TYPE),1)
(SIZE, CC): ERROR ̲OK
ERROR?- ANALYZE ̲ERROR(CC,0)
OK? - MOVE DATA FROM BUFFER TO INTA ̲REC.DATA
INTA ̲REC.LTD ̲RELS = 0
INTA ̲REC.LTD ̲PREP = UMAM ̲ATTR.HEADER.INF
INTA ̲REC.MAINTYPE = 0
INTA ̲REC.STATUS = S ̲DELIVERY
G̲E̲T̲ ̲T̲I̲M̲E̲ ̲(̲I̲N̲T̲A̲ ̲R̲E̲C̲.̲T̲I̲M̲E̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲3̲)
DATA RECEIVED INVALID ? U̲Q̲ ̲E̲R̲R̲O̲R̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
I̲N̲C̲L̲U̲D̲E̲ ̲I̲N̲ ̲I̲N̲T̲A̲(̲I̲N̲T̲A̲ ̲R̲E̲C̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲5̲)̲
END CASE
FIGURE 4.2.5.4.7-2
4.2.5.4.8 A̲P̲P̲E̲N̲D̲ ̲Q̲U̲E̲U̲E̲ ̲M̲o̲d̲u̲l̲e̲
4.2.5.4.8.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
The purpose of this module is to analyse input from
the Append Queue. The referenced CIF is looked up in
the Preparation file and status is changed to either
Append Complete or Append Abnormally Complete. An Append
Notifcation is returned to the sender.
4.2.5.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) APPEND ̲ACTION
b) APPEND ̲ACTION (R6)
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲t̲n̲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̲
None
R0 - R7 (DEST)
4.2.5.4.8.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
4.2.5.4.8.3.1 L̲O̲O̲K̲U̲P̲ ̲A̲P̲P̲
The referenced CIF is looked up and status is changed.
The received item will be returned to the sender.
4.2.5.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̲
CPS ̲PREFIX.D*GENERAL
CPS ̲PREFIX.D*DAMOS ̲GENERAL
CPS ̲PREFIX.D*CPS ̲CONF
CPS ̲PREFIX.D*CPS ̲GENERAL
CPS ̲PREFIX.D*CSF ̲GENERAL
CPS ̲PREFIX.D*UTILITY ̲FUNC
CPS ̲PREFIX.D*QUEUE ̲MON
CPS ̲PREFIX.D*MESSAGE ̲MON
CPS ̲PREFIX.D*SYS ̲CALL ̲MON
CPS ̲PREFIX.D*CPS ̲ERROR ̲HAND
CPS ̲PREFIX.D*FMS ̲GENERAL
CPS ̲PREFIX.D*IOS ̲PARAMS
CPS ̲PREFIX.D*SSC ̲GENERAL
CPS ̲PREFIX.D*SSC ̲SYS ̲CONF
CPS ̲PREFIX.D*SITE ̲CONF
CPS ̲PREFIX.D*CPS ̲APP ̲GENERAL
CPS ̲PREFIX.D*QUEUE ̲GENERAL
CPS ̲PREFIX.D*TRACE
CPS ̲PREFIX.D*CPS ̲AMOS ̲CONF
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
UMAM ̲SEND ̲PARAMS (m)
UMAM ̲ATTR
QEL1
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
VAR
SAVER6
NEW ̲STATUS : INTEGER
4.2.5.4.8.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
Refer figure 4.2.5.4.8-1
APPEND ̲ACTION
CASE UMAM ̲ATTR.MAINTYPE OF QELEMENT ̲MAIN ̲TYPE
ABB ̲PLAINDRESS,
PLAINDRESS,
SC ̲PLAINDRESS? - CASE UMAM ̲ATTR.SUBTYPE OF
MESSAGE ̲SUBTYPE
FOR
̲CONTINUED
̲PREP?
- L̲O̲O̲K̲U̲P̲
̲A̲P̲P̲(̲A̲P̲P̲
̲C̲O̲M̲P̲)̲
(̲4̲.̲2̲.̲5̲.̲4̲.̲8̲.̲3̲.̲1̲)̲
OTHERWISE?
- U̲Q̲
̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
END CASE
TEP ̲INTERNAL? - CASE UMAM ̲ATTR.SUBTYPE OF
TEP ̲INTERNAL ̲SUBTYPE
APPEND
̲NOTIFICATION?
- L̲O̲O̲K̲U̲P̲
̲A̲P̲P̲(̲A̲P̲P̲
̲A̲B̲N̲O̲R̲)̲
(̲4̲.̲2̲.̲5̲.̲4̲.̲8̲.̲3̲.̲1̲)̲
OTHERWISE?
- U̲Q̲
̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
END CASE
OTHERWISE? - U̲Q̲
̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
END CASE
U̲M̲A̲M̲ ̲D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲(̲Q̲E̲L̲1̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲)̲
FIGURE 4.2.5.4.8-1
4.2.5.4.9 P̲E̲R̲I̲O̲D̲I̲C̲ ̲S̲T̲A̲T̲U̲S̲ ̲M̲o̲d̲u̲l̲e̲
4.2.5.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 generate a periodic
status.
The following status will be generated:
- service message status.
- release message status.
- outgoing message status.
- delivery message status.
4.2.5.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) PERIODIC ̲STA
b) PERIODIC ̲STA (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̲
None
R0 - R7 (DEST)
4.2.5.4.9.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
None
4.2.5.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̲
CPS ̲PREFIX.D*GENERAL
CPS ̲PREFIX.D*DAMOS ̲GENERAL
CPS ̲PREFIX.D*CPS ̲CONF
CPS ̲PREFIX.D*CPS ̲GENERAL
CPS ̲PREFIX.D*CSF ̲GENERAL
CPS ̲PREFIX.D*QUEUE ̲MON
CPS ̲PREFIX.D*MESSAGE ̲MON
CPS ̲PREFIX.D*CPS ̲ERROR ̲HAND
CPS ̲PREFIX.D*FMS ̲GENERAL
CPS ̲PREFIX.D*IOS ̲PARAMS
CPS ̲PREFIX.D*SSC ̲GENERAL
CPS ̲PREFIX.D*SSC ̲SYS ̲CONF
CPS ̲PREFIX.D*SITE ̲CONF
CPS ̲PREFIX.D*QUEUE ̲GENERAL
CPS ̲PREFIX.D*CPS ̲APP ̲GENERAL
CPS ̲PREFIX.D*CPS ̲IIF
CPS ̲PREFIX.D*TRACE
CPS ̲PREFIX.D*CPS ̲AMOS ̲CONF
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲e̲
FILE ̲DIR (m)
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
VAR
SAVER6 : INTEGER
4.2.5.4.9.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
Refer figure 4.2.5.4.9-1.
PERIODIC ̲STATUS
I̲N̲P̲U̲T̲ ̲D̲I̲R̲ ̲(̲O̲L̲D̲ ̲D̲I̲R̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲6̲)
STATUS ̲INFO.LTD = 1
STATUS ̲INFO.STATUS ̲TYPE = MIDNIGHT
P̲R̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲(̲O̲U̲T̲G̲O̲I̲N̲G̲ ̲M̲S̲G̲ ̲M̲I̲D̲N̲I̲G̲H̲T̲ ̲S̲T̲A̲T̲U̲S̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲1̲)
G̲E̲N̲ ̲O̲U̲T̲ ̲S̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲2̲)
C̲L̲O̲S̲E̲ ̲S̲E̲N̲D̲ ̲R̲E̲P̲L̲Y̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲6̲)
P̲R̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲(̲M̲S̲G̲ ̲R̲E̲L̲E̲A̲S̲E̲ ̲M̲I̲D̲N̲I̲G̲H̲T̲ ̲S̲T̲A̲T̲U̲S̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲1̲)
G̲E̲N̲ ̲R̲E̲L̲ ̲S̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲0̲)
C̲L̲O̲S̲E̲ ̲S̲E̲N̲D̲ ̲R̲E̲P̲L̲Y̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲6̲)
P̲R̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲(̲O̲U̲T̲G̲O̲I̲N̲G̲ ̲S̲E̲R̲V̲I̲C̲E̲ ̲M̲S̲G̲ ̲M̲I̲D̲N̲I̲G̲H̲T̲ ̲S̲T̲A̲T̲U̲S̲)̲
̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲1̲)
G̲E̲N̲ ̲S̲V̲C̲ ̲S̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲3̲)
C̲L̲O̲S̲E̲ ̲S̲E̲N̲D̲ ̲R̲E̲P̲L̲Y̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲6̲)
P̲R̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲(̲D̲E̲L̲I̲V̲E̲R̲Y̲ ̲M̲I̲D̲N̲I̲G̲H̲T̲ ̲S̲T̲A̲T̲U̲S̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲1̲)
G̲E̲N̲ ̲D̲E̲L̲ ̲S̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲1̲)
C̲L̲O̲S̲E̲ ̲S̲E̲N̲D̲ ̲R̲E̲P̲L̲Y̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲6̲)
FILE ̲DIR.NEXT ̲LTD = 2
S̲T̲O̲R̲E̲ ̲D̲I̲R̲ ̲(̲O̲L̲D̲ ̲D̲I̲R̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲8̲)
I̲N̲P̲U̲T̲ ̲D̲I̲R̲ ̲(̲N̲E̲W̲ ̲D̲I̲R̲)̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲6̲)
FIGURE 4.2.5.4.9-1
4.2.5.4.10 G̲E̲N̲ ̲R̲E̲L̲ ̲S̲T̲A̲ ̲M̲o̲d̲u̲l̲e̲
4.2.5.4.10.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
This purpose of this module is to generate a release
MSG status. The STATUS ̲RECORDS stored in the Intermediate
File and the Release File are read and sorted.
4.2.5.4.10.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) GEN ̲REL ̲STA
b) GEN ̲REL ̲STA (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̲
None
R0 - R7 (DEST)
4.2.5.4.10.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
None
4.2.5.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̲
CPS ̲PREFIX.D*GENERAL
CPS ̲PREFIX.D*DAMOS ̲GENERAL
CPS ̲PREFIX.D*CPS ̲CONF
CPS ̲PREFIX.D*CPS ̲GENERAL
CPS ̲PREFIX.D*CSF ̲GENERAL
CPS ̲PREFIX.D*QUEUE ̲MON
CPS ̲PREFIX.D*MESSAGE ̲MON
CPS ̲PREFIX.D*CPS ̲ERROR ̲HAND
CPS ̲PREFIX.D*FMS ̲GENERAL
CPS ̲PREFIX.D*IOS ̲PARAMS
CPS ̲PREFIX.D*SSC ̲GENERAL
CPS ̲PREFIX.D*SSC ̲SYS ̲CONF
CPS ̲PREFIX.D*SITE ̲CONF
CPS ̲PREFIX.D*CPS ̲APP ̲GENERAL
CPS ̲PREFIX.D*CPS ̲IIF
CPS ̲PREFIX.D*TRACE
CPS ̲PREFIX.D*CPS ̲AMOS ̲CONF
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
UMAM ̲FDCB
FILE ̲DIR ̲ACB
CREATE ̲QEL
LITTLE ̲BUF
STATUS ̲INFO (m)
UMAM ̲FILE ̲DIR
STATUS ̲ACB
UMAM ̲FILE ̲ADDR (m)
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
VAR
SAVER6
RE ̲STORE : INTEGER
CONST
MAX ̲NO ̲OF ̲REL ̲FILE ̲COUNT = 2
4.2.5.4.10.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
This module generates a Release Message status. If
the Release File is used then the status records are
read and sorted.
The Intermediate File is read and the status records
are sorted.
Upon completion the generated status is sent either
to a VDU or to a printer.
REL ̲STA
STATUS ̲INFO.LITTLE ̲BUF ̲PTR = ADDR (LITTLE ̲BUF) +
SIZE (OUTG ̲STA ̲ADM)
STATUS ̲INFO.SOURCE ̲BUFFER = RELE
STATUS ̲INFO.FILE ̲COUNT = 1
LOOP
UMAM ̲FILE ̲ADDR.FIRST ̲BYTE = 0
STATUS ̲INFO.FIRST ̲STATUS ̲COUNT = 1
STATUS ̲INFO.SEARCH ̲TWO = S ̲DUMMY
STATUS ̲INFO.LAST ̲STATUS ̲COUNT = 3
STATUS ̲INFO.MESS ̲TYPE = M ̲MSG
CASE STATUS ̲INFO.FILE ̲COUNT OF
1: STATUS ̲INFO.STATUS ̲TYPE EQ MIDNIGHT?
STATUS ̲INFO.FDCB = UMAM ̲FDCB
(OLD ̲RELEASE ̲AREA)
STATUS ̲INFO.FDCB = UMAM ̲FDCB (RELEASE
̲AREA)
COUNT = FILE ̲DIR (STATUS ̲INFO.LTD).RELS?
2: STATUS ̲INFO.FDCB = UMAM ̲FDCB (COLLECT
̲AREA)
COUNT = 1
END CASE
COUNT EQ 0 ?
S̲O̲R̲T̲ ̲S̲T̲A̲T̲U̲S̲ ̲R̲E̲C̲O̲R̲D̲S̲ ̲(̲-̲2̲)
INCR STATUS ̲INFO.FILE ̲COUNT
STATUS ̲INFO.FILE ̲COUNT GE MAX ̲NO ̲OF ̲REL ̲FILE
̲COUNT + 1 EXIT LOOP
END LOOP
S̲T̲O̲R̲E̲ ̲S̲O̲R̲T̲E̲D̲ ̲D̲A̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲4̲)
FIGURE 4.2.5.4.10-1
SORT ̲STATUS ̲RECORDS
STATUS ̲INFO.FILE ̲EMPTY = FALSE
REPEAT
CASE R̲E̲A̲D̲ ̲S̲T̲A̲T̲U̲S̲ ̲F̲I̲L̲E̲ ̲:̲ ̲E̲R̲R̲O̲R̲ ̲O̲K̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲2̲)̲
ERROR? STATUS ̲INFO.FILE ̲EMPTY = TRUE
END CASE
STATUS ̲INFO.WORD ̲COUNT EQ 0 ?
REPEAT
S̲E̲T̲ ̲U̲P̲ ̲S̲E̲A̲R̲C̲H̲ ̲P̲A̲R̲A̲M̲ ̲(̲-̲3̲)̲
S̲O̲R̲T̲ ̲R̲E̲C̲O̲R̲D̲S̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲8̲)
INCR STATUS ̲INFO.FIRST ̲STATUS ̲COUNT
UNTIL STATUS ̲INFO.FIRST ̲STATUS ̲COUNT GT STATUS
̲COUNT.LAST ̲
STATUS
̲COUNT
S̲T̲O̲R̲E̲ ̲S̲O̲R̲T̲E̲D̲ ̲D̲A̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲4̲)
UNTIL STATUS ̲INFO.FILE ̲EMPTY EQ TRUE
FIGURE 4.2.5.4.10-2
SET ̲UP ̲SEARCH ̲PARAM
EQUIVALENCE(LITTLE ̲BUF (1): REL ̲STA ̲ADM)
CASE STATUS ̲INFO.FIRST ̲STATUS ̲COUNT OF
1: STATUS ̲INFO.SEARCH ̲ONE = S ̲RELEASED
IIF ̲NO = 2
STATUS ̲INFO.IIF ̲ADM ̲COUNT ̲PTR = ADDRESS(REL
̲ADM.NO ̲REL)
2: STATUS ̲INFO.SEARCH ̲ONE = S ̲REJECTED ̲RELEASE
IIF ̲NO = 3
STATUS ̲INFO.IIF ̲ADM ̲COUNT ̲PTR = ADDRESS(REL
̲ADM.NO ̲REJ)
3: STATUS ̲INFO.SEARCH ̲ONE = S ̲DEFERRED ̲RELEASE
IIF ̲NO = 4
STATUS ̲INFO.IIF ̲ADM ̲COUNT ̲PTR = ADDRESS(REL
̲ADM.NO ̲DEF)
END CASE
STATUS ̲INFO.IIF ̲FIELD ̲LIST ̲PTR = ADDRESS(STA ̲CIF ̲FIELD
̲LIST
(IIF
̲NO))
FIGURE 4.2.5.4.10-3
4.2.5.4.11 G̲E̲N̲ ̲D̲E̲L̲ ̲S̲T̲A̲ ̲M̲o̲d̲u̲l̲e̲
4.2.5.4.11.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
This purpose of this module is to generate a Delivery
status. The STATUS ̲RECORDS stored in the Intermediate
File and the Delivery File are read and sorted.
4.2.5.4.11.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) GEN ̲DEL ̲STA
b) GEN ̲DEL ̲STA (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̲
None
R0 - R7 (DEST)
4.2.5.4.11.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
None
4.2.5.4.11.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̲
CPS ̲PREFIX.D*GENERAL
CPS ̲PREFIX.D*DAMOS ̲GENERAL
CPS ̲PREFIX.D*CPS ̲CONF
CPS ̲PREFIX.D*CPS ̲GENERAL
CPS ̲PREFIX.D*CSF ̲GENERAL
CPS ̲PREFIX.D*QUEUE ̲MON
CPS ̲PREFIX.D*MESSAGE ̲MON
CPS ̲PREFIX.D*CPS ̲ERROR ̲HAND
CPS ̲PREFIX.D*FMS ̲GENERAL
CPS ̲PREFIX.D*IOS ̲PARAMS
CPS ̲PREFIX.D*SSC ̲GENERAL
CPS ̲PREFIX.D*SSC ̲SYS ̲CONF
CPS ̲PREFIX.D*SITE ̲CONF
CPS ̲PREFIX.D*CPS ̲APP ̲GENERAL
CPS ̲PREFIX.D*CPS ̲IIF
CPS ̲PREFIX.D*TRACE
CPS ̲PREFIX.D*CPS ̲AMOS ̲CONF
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
UMAM ̲FDCB
STATUS ̲ACB
FILE ̲DIR ̲ACB
LITTLE ̲BUF
STATUS ̲INFO (m)
UMAM ̲FILE ̲DIR
CREATE ̲QEL
UMAM ̲FILE ̲ADDR (m)
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
VAR
SAVER6 : INTEGER
CONST
MAX ̲NO ̲OF ̲DELI ̲FILE ̲COUNT = 2
4.2.5.4.11.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
This module generates a Delivery Message status. If
the Delivery File is used then the status records are
read and sorted.
The Intermediate File is read and the status records
are sorted.
Upon completion the generated status is sent either
to a VDU or to a printer.
DEL ̲STA
STATUS ̲INFO.DEST ̲BUFFER = DELI
STATUS ̲INFO.FILE ̲COUNT = 1
STATUS ̲INFO.LITTLE ̲BUF ̲PTR = ADDR(LITTLE ̲BUF) +
SIZE(OUTG ̲
STA
̲ADM)
REPEAT
UMAM ̲FILE ̲ADDR.FIRST ̲BYTE = 0
STATUS ̲INFO.SEARCH ̲TWO = S ̲DUMMY
STATUS ̲INFO.MESS ̲TYPE = M ̲DUMMY
CASE STATUS ̲INFO.FILE ̲COUNT OF
1: STATUS ̲INFO.LTD GT NO ̲OF ̲VDUS?
COUNT = FILE ̲DIR(STATUS ̲INFO.LTD).DELI
COUNT = FILE ̲DIR.DEV ̲INF(STATUS
̲
INFO.LTD)
STATUS ̲INFO.STATUS ̲TYPE EQ ̲MIDNIGHT? -
STATUS ̲
INFO.FDCB
=
UMAM
̲FDCB
(OLD
̲DELIVERY
̲AREA)
STATUS ̲INFO.FDCB = UMAM ̲FDCB(DELIVERY ̲AREA)
STATUS ̲INFO.SOURCE ̲BUFFER = DELV ̲BUF
2: STATUS ̲INFO.FDCB = UMAM ̲FDCB(COLLECT ̲AREA)
STATUS ̲INFO.SOURCE ̲BUFFER = INT ̲PREP ̲BUF
COUNT = 1
END CASE
COUNT EQ 0?
SORT ̲STATUS ̲RECORDS (-2)
INCR STATUS ̲INFO.FILE ̲COUNT
UNTIL STATUS ̲INFO.FILE ̲COUNT GE MAX ̲NO ̲OF ̲DELI ̲FILE
̲COUNT + 1
S̲T̲O̲R̲E̲ ̲S̲O̲R̲T̲E̲D̲ ̲D̲A̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲4̲)
FIGURE 4.2.5.4.11-1
SORT ̲STATUS ̲RECORDS
EQUIVALENCE(LITTLE ̲BUF(1)), DEL ̲ADM : DEL ̲STA
̲ADM)
FILE ̲EMPTY = FALSE
STATUS ̲INFO.SEARCH ̲ONE = S ̲DELIVERY
STATUS ̲INFO.IIF ̲FIELD ̲LIST ̲PTR = ADDRESS(STA
̲CIF ̲
FIELD
̲LIST(2))
STATUS ̲INFO.IIF.ADM ̲COUNT ̲PTR = ADDRESS(DEL
̲ADM.NO ̲DEL)
REPEAT
CASE R̲E̲A̲D̲ ̲S̲T̲A̲T̲U̲S̲ ̲F̲I̲L̲E̲ ̲:̲ ̲E̲R̲R̲O̲R̲ ̲O̲K̲ (̲4̲.̲2̲.̲5̲.̲6̲.̲3̲2̲)̲
ERROR? - FILE ̲EMPTY = TRUE
END CASE
STATUS ̲INFO.WORD ̲COUNT EQ 0?
S̲O̲R̲T̲ ̲R̲E̲C̲O̲R̲D̲S̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲8̲)
UNTIL FILE ̲EMPTY EQ TRUE
FIGURE 4.2.5.4.11-2
4.2.5.4.12 G̲E̲N̲ ̲O̲U̲T̲ ̲S̲T̲A̲ ̲M̲o̲d̲u̲l̲e̲
4.2.5.4.12.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
This purpose of this module is to generate a outgoing
MSG status. The STATUS ̲RECORDS stored in the Outgoing
File, Intermediate File and Preparation File are read
and sorted.
4.2.5.4.12.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) GEN ̲OUT ̲STA
b) GEN ̲OUT ̲STA (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̲
None
R0 - R7 (DEST)
4.2.5.4.12.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
None
4.2.5.4.12.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̲
CPS ̲PREFIX.D*GENERAL
CPS ̲PREFIX.D*DAMOS ̲GENERAL
CPS ̲PREFIX.D*CPS ̲CONF
CPS ̲PREFIX.D*CPS ̲GENERAL
CPS ̲PREFIX.D*CSF ̲GENERAL
CPS ̲PREFIX.D*QUEUE ̲MON
CPS ̲PREFIX.D*MESSAGE ̲MON
CPS ̲PREFIX.D*CPS ̲ERROR ̲HAND
CPS ̲PREFIX.D*FMS ̲GENERAL
CPS ̲PREFIX.D*IOS ̲PARAMS
CPS ̲PREFIX.D*SSC ̲GENERAL
CPS ̲PREFIX.D*SSC ̲SYS ̲CONF
CPS ̲PREFIX.D*SITE ̲CONF
CPS ̲PREFIX.D*CPS ̲APP ̲GENERAL
CPS ̲PREFIX.D*CPS ̲IIF
CPS ̲PREFIX.D*TRACE
CPS ̲PREFIX.D*CPS ̲AMOS ̲CONF
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
UMAM ̲FDCB
STATUS ̲ACB
FILE ̲DIR ̲ACB
LITTLE ̲BUF
STATUS ̲INFO (m)
UMAM ̲FILE ̲DIR
CREATE ̲QEL
UMAM ̲FILE ̲ADDR (m)
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
VAR
SAVER6
RE ̲STORE : INTEGER
CONST
MAX ̲NO ̲OF ̲OUT ̲FILE ̲COUNT = 4
4.2.5.4.12.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
This module generates a Outgoing Message status. If
the Outgoing File is used then the status records are
read and sorted.
The Intermediate File and the Preparation File are
read and the status records are sorted.
Upon completion the generated status is sent either
to a VDU or to a printer.
OUT ̲STA
STATUS ̲INFO.LITTLE ̲BUF ̲PTR = ADDR(LITTLE ̲BUF) + SIZE(OUTG
̲
STA
̲ADM)
STATUS ̲INFO.FILE ̲COUNT = 1
LOOP
UMAM ̲FILE ̲ADDR.FIRST ̲BYTE = 0
CASE STATUS ̲INFO.FILE ̲COUNT OF
1: STATUS ̲INFO.FIRST ̲STATUS ̲COUNT = 1
STATUS ̲INFO.LAST ̲STATUS ̲COUNT = 4
STATUS ̲INFO.STATUS ̲TYPE EQ MIDNIGHT? - STATUS
̲
INFO.FDCB = UMAM ̲FDCB(OLD ̲OUT ̲AREA)
STATUS ̲INFO.FDCB = UMAM ̲FDCB(OUT ̲AREA)
SOURCE ̲BUFFER = REL ̲BUF
COUNT = FILE ̲DIR(STATUS ̲INFO.LTD).OUTG
2: STATUS ̲INFO.FIRST ̲STATUS ̲COUNT = 1
STATUS ̲INFO.FDCB = UMAM ̲FDCB(COLLECT ̲AREA)
SOURCE ̲BUFFER = INT ̲PREP ̲BUF
COUNT = FILE ̲DIR(STATUS ̲INFO.LTD).INTA
3: STATUS ̲INFO.FIRST ̲STATUS ̲COUNT = 5
STATUS ̲INFO.LAST ̲STATUS ̲COUNT = 13
STATUS ̲INFO.FDCB = UMAM ̲FDCB(EXPAND ̲AREA)
SOURCE ̲BUFFER = PREP ̲BUF
COUNT = FILE ̲DIR(STATUS ̲INFO.LTD).EXPAND
4: STATUS ̲INFO.FIRST ̲STATUS ̲COUNT = 5
STATUS ̲INFO.FDCB = UMAM ̲FDCB(PREPARATION ̲AREA)
SOURCE ̲BUFFER = PREP ̲BUF
COUNT = FILE ̲DIR(STATUS ̲INFO.LTD).PREP
END CASE
STATUS ̲INFO.SOURCE ̲BUFFER = SOURCE ̲BUFFER
COUNT EQ 0?
S̲O̲R̲T̲ ̲S̲T̲A̲T̲U̲S̲ ̲R̲E̲C̲O̲R̲D̲S̲ ̲(̲-̲2̲)
INCR STATUS ̲INFO.FILE ̲COUNT
UNTIL STATUS ̲INFO.FILE ̲COUNT GE MAX ̲NO ̲OF ̲OUT ̲FILE
̲COUNT + 1
END LOOP
S̲T̲O̲R̲E̲ ̲S̲O̲R̲T̲E̲D̲ ̲D̲A̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲4̲)
FIGURE 4.2.5.4.12-1
SORT ̲STATUS ̲RECORDS
STATUS ̲INFO.FILE ̲EMPTY = FALSE
READ ̲LOOP
CASE R̲E̲A̲D̲ ̲S̲T̲A̲T̲U̲S̲ ̲F̲I̲L̲E̲ ̲:̲ ̲E̲R̲R̲O̲R̲ ̲O̲K̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲2̲)̲
ERROR: STATUS ̲INFO.FILE ̲EMPTY = TRUE
END CASE
STATUS ̲INFO.WORD ̲COUNT EQ 0?
SORT ̲LOOP
S̲E̲T̲ ̲U̲P̲ ̲S̲E̲A̲R̲C̲H̲ ̲P̲A̲R̲A̲M̲(̲-̲3̲)
S̲O̲R̲T̲ ̲R̲E̲C̲O̲R̲D̲S̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲8̲)
INCR STATUS ̲INFO.FIRST ̲STATUS ̲COUNT
STATUS ̲INFO.FIRST ̲STATUS ̲COUNT GT STATUS
̲INFO.
LAST ̲STATUS ̲COUNT? EXIT
SORT ̲LOOP
END SORT ̲LOOP
S̲T̲O̲R̲E̲ ̲S̲O̲R̲T̲E̲D̲ ̲D̲A̲T̲A̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲4̲)
STATUS ̲INFO.FILE ̲EMPTY EQ TRUE? - EXIT READ
̲LOOP
END READ ̲LOOP
FIGURE 4.2.5.4.12-2
SET ̲UP ̲SEARCH ̲PARAM
STATUS ̲INFO.MESS ̲TYPE = M ̲DUMMY
EQUIVALENCE(LITTLE ̲BUF(1), OUT ̲ADM: OUT ̲STA ̲ADM)
STATUS ̲INFO.SEARCH ̲TWO = S ̲DUMMY
CASE STATUS ̲INFO.FIRST ̲STATUS ̲COUNT OF
1: STATUS ̲INFO.SEARCH ̲ONE = S ̲RELEASED
IIF ̲NO = 2
ADM ̲PTR = ADDRESS(OUT ̲ADM.NO ̲REL)
STATUS ̲INFO.DEST ̲BUFFER = RELE
2: STATUS ̲INFO.SEARCH ̲ONE = S ̲DELETED
IIF ̲NO = 5
ADM ̲PTR = ADDRESS(OUT ̲ADM.NO ̲SMG ̲DEL)
STATUS ̲INFO.DEST ̲BUFFER = ABEY
STATUS ̲INFO.MESS ̲TYPE = M ̲MSG
3: STATUS ̲INFO.SEARCH ̲ONE = S ̲SENT
IIF ̲NO = 6
ADM ̲PTR = ADDRESS(OUT ̲ADM.NO ̲COM ̲SENT)
STATUS ̲INFO.MESS ̲TYPE = M ̲COM
4: STATUS ̲INFO.SEARCH ̲ONE = S ̲DELETED
IIF ̲NO = 8
ADM ̲PTR = ADDRESS(OUT ̲ADM.NO ̲COM ̲DEL)
STATUS ̲INFO.MESS ̲TYPE = M ̲COM
cont. (-4)
FIGURE 4.2.5.4.12-3
5: STATUS ̲INFO.SEARCH ̲ONE = S ̲SENT ̲RELS
IIF ̲NO = 3
ADM ̲PTR = ADDRESS(OUT ̲ADM.NO ̲SENT ̲REL)
STATUS ̲INFO.DEST ̲BUFFER = ABEY
6: STATUS ̲INFO.SEARCH ̲ONE = S ̲SENT ̲COOR
IIF ̲NO = 3
ADM ̲PTR = ADDRESS(OUT ̲ADM.NO ̲SENT ̲COOR)
7: STATUS ̲INFO.SEARCH ̲ONE = S ̲SUSP ̲CONT
STATUS ̲INFO.SEARCH ̲TWO = S ̲SUSP ̲DRAFT
IIF ̲NO = 3
ADM ̲PTR = ADDRESS(OUT ̲ADM.NO ̲MSG ̲SUSP)
STATUS ̲INFO.MESS ̲TYPE = M ̲MSG
8: STATUS ̲INFO.SOURCE ̲ONE = S ̲APPEND ̲ABANDON
IIF ̲NO = 3
ADM ̲PTR = ADDRESS (OUT ̲ADM.NO ̲MSG ̲SUSP)
STATUS ̲INFO.MESS ̲TYPE = M ̲MSG
9: STATUS ̲INFO.SEARCH ̲ONE = S ̲APP ̲COMPLETE
STATUS ̲INFO.SEARCH ̲TWO = S ̲APP ̲ABNORMALLY
IIF ̲NO = 3
ADM ̲PTR = ADDRESS (OUT ̲ADM.NO ̲MSG ̲SUSP)
STATUS ̲INFO.MESS ̲TYPE = M ̲MSG
10: STATUS ̲INFO.SEARCH ̲ONE = S ̲DEFERRED
IIF ̲NO = 3
ADM ̲PTR = ADDRESS(OUT ̲ADM.NO ̲MSG ̲DEFERRED)
STATUS ̲INFO.MESS ̲TYPE = M ̲MSG
cont. (-5)
FIGURE 4.2.5.4.12-4
11: STATUS ̲INFO.SEARCH ̲ONE = S ̲AWAITING ̲APP ̲CONT
STATUS ̲INFO.SEARCH ̲TWO = S ̲AWAITING ̲APP ̲DRAFT
IIF ̲NO = 3
ADM ̲PTR = ADDRESS(OUT ̲ADM.NO ̲AWAIT ̲APP)
12: STATUS ̲INFO.SEARCH ̲ONE = S ̲REJECTED ̲RELEASE
IIF ̲NO = 4
STATUS ̲INFO.DEST ̲BUFFER = RELE
ADM ̲PTR = ADDRESS(OUT ̲ADM.NO ̲REJ ̲RELS)
13: STATUS ̲INFO.SEARCH ̲ONE = S ̲DEFERRED ̲RELEASE
IFF ̲NO = 4
ADM ̲PTR = ADDRESS(OUT ̲ADM.NO ̲DEF ̲RELS)
14: STATUS ̲INFO.SEARCH ̲ONE = S ̲SUSP ̲CONT
STATUS ̲INFO.SEARCH ̲TWO = S ̲SUSP ̲DRAFT
IIF ̲NO = 7
ADM ̲PTR = ADDRESS(OUT ̲ADM.NO ̲COM ̲SUSP)
STATUS ̲TYPE.MESS ̲TYPE = M ̲COM
STATUS ̲INFO.DEST ̲BUFFER = ABEJ
15: STATUS ̲TYPE.SEARCH ̲ONE = S ̲DEFFERED
IIF ̲NO = 7
ADM ̲PTR = ADDRESS(OUT ̲ADM.NO ̲COM ̲SUSP)
STATUS ̲TYPE.MESS ̲TYPE = M ̲COM
END CASE
STATUS ̲INFO.IIF ̲FIELD ̲LIST ̲PTR = ADDRESS(STA ̲CIF ̲FIELD
̲LIST
IIF ̲NO)
STATUS ̲INFO.IIF ̲ADM ̲COUNT ̲PTR = ADM ̲PTR
FIGURE 4.2.5.4.12-5
4.2.5.4.13 G̲E̲N̲ ̲S̲V̲C̲ ̲S̲T̲A̲ ̲M̲o̲d̲u̲l̲e̲
4.2.5.4.13.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
The task of the GEN ̲SVC ̲STA module is to generate a
Service Message status. The status records stored in
the Outgoing File, Intermediate File and the Release
File are read and sorted.
4.2.5.4.13.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) GEN ̲SVC ̲STA
b) GEN ̲SVC ̲STA (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̲
None
R0 - R7 (DEST)
4.2.5.4.13.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
None
4.2.5.4.13.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̲
CPS ̲PREFIX.D*GENERAL
CPS ̲PREFIX.D*DAMOS ̲GENERAL
CPS ̲PREFIX.D*CPS ̲CONF
CPS ̲PREFIX.D*CPS ̲GENERAL
CPS ̲PREFIX.D*CSF ̲GENERAL
CPS ̲PREFIX.D*QUEUE ̲MON
CPS ̲PREFIX.D*MESSAGE ̲MON
CPS ̲PREFIX.D*CPS ̲ERROR ̲HAND
CPS ̲PREFIX.D*FMS ̲GENERAL
CPS ̲PREFIX.D*IOS ̲PARAMS
CPS ̲PREFIX.D*SSC ̲GENERAL
CPS ̲PREFIX.D*SSC ̲SYS ̲CONF
CPS ̲PREFIX.D*SITE ̲CONF
CPS ̲PREFIX.D*CPS ̲APP ̲GENERAL
CPS ̲PREFIX.D*CPS ̲IIF
CPS ̲PREFIX.D*TRACE
CPS ̲PREFIX.D*CPS ̲AMOS ̲CONF
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
UMAM ̲FDCB
STATUS ̲ACB
FILE ̲DIR ̲ACB
LITTLE ̲BUF
STATUS ̲INFO (m)
UMAM ̲FILE ̲DIR
CREATE ̲QEL
UMAM ̲FILE ̲ADDR (m)
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
VAR
SAVER6
RE ̲STORE : INTEGER
CONST
MAX ̲NO ̲OF ̲SVC ̲FILE ̲COUNT = 4
4.2.5.4.13.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
This module generates a Outgoing Message status. If
the Outgoing File is used then the status records are
read and sorted.
The Intermediate File and the Preparation File are
read and the status records are sorted.
Upon completion the generated status is sent either
to a VDU or to a printer.
SVC ̲STA
STATUS ̲INFO.DEST ̲BUFFER = SVC
STATUS ̲INFO.FILE ̲COUNT = 1
LOOP
UMAM ̲FILE ̲ADDR.FIRST ̲BYTE = 0
CASE STATUS ̲INFO.FILE ̲COUNT OF
1: STATUS ̲INFO.FIRST ̲STATUS ̲COUNT = 1
STATUS ̲INFO.LAST ̲STATUS ̲COUNT = 2
STATUS ̲INFO.STATUS ̲TYPE EQ MIDNIGHT?
STATUS ̲INFO.FDCB = UMAM ̲FDCB(OLD ̲OUT ̲AREA)
STATUS ̲INFO.FDCB = UMAM ̲FDCB(OUT ̲AREA)
STATUS ̲INFO.SOURCE ̲BUFFER = REL ̲BUF
COUNT = FILE ̲DIR(STATUS ̲INFO.LTD).OUTG
2: STATUS ̲INFO.FIRST ̲STATUS ̲COUNT = 1
STATUS ̲INFO.FDCB = UMAM ̲FDCB(COLLECT ̲AREA)
STATUS ̲INFO.SOURCE ̲BUFFER = INT ̲PREP ̲BUF
COUNT = FILE ̲DIR(STATUS ̲INFO.LTD).INTA
3: STATUS ̲INFO.FIRST ̲STATUS ̲COUNT = 3
STATUS ̲INFO.LAST ̲STATUS ̲COUNT = 4
STATUS ̲INFO.FDCB = UMAM ̲FDCB(EXPAND ̲AREA)
STATUS ̲INFO.SOURCE ̲BUFFER = PREP ̲BUF
COUNT = FILE ̲DIR(STATUS ̲INFO.LTD).EXPAND
cont. (-2)
4: STATUS ̲INFO.FIRST ̲STATUS ̲COUNT = 3
STATUS ̲INFO.FDCB = UMAM ̲FDCB(PREPARATION ̲AREA)
STATUS ̲INFO.SOURCE ̲BUFFER = PREP ̲BUF
COUNT = FILE ̲DIR(STATUS ̲INFO.LTD).PREP
END CASE
COUNT EQ 0?
S̲O̲R̲T̲ ̲S̲T̲A̲T̲U̲S̲ ̲R̲E̲C̲O̲R̲D̲S̲ ̲(̲-̲2̲)̲
INCR STATUS ̲INFO.FILE ̲COUNT
STATUS ̲INFO.FILE ̲COUNT GE MAX ̲NO ̲OF ̲SVC ̲FILE ̲COUNT
+
1 EXIT
LOOP
END LOOP
S̲T̲O̲R̲E̲ ̲S̲O̲R̲T̲E̲D̲ ̲D̲A̲T̲A̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲4̲)
FIGURE 4.2.5.4.13-1
SORT ̲STATUS ̲RECORDS
STATUS ̲INFO.FILE ̲EMPTY = FALSE
READ ̲LOOP
CASE R̲E̲A̲D̲ ̲S̲T̲A̲T̲U̲S̲ ̲F̲I̲L̲E̲ ̲:̲ ̲E̲R̲R̲O̲R̲ ̲O̲K̲(̲4̲.̲2̲.̲5̲.̲6̲.̲3̲2̲)̲
ERROR? STATUS ̲INFO.FILE ̲EMPTY = TRUE
END CASE
STATUS ̲INFO.WORD ̲COUNT EQ 0?
SORT ̲LOOP
S̲E̲T̲ ̲U̲P̲ ̲S̲E̲A̲R̲C̲H̲ ̲P̲A̲R̲A̲M̲(̲-̲3̲)
S̲O̲R̲T̲ ̲R̲E̲C̲O̲R̲D̲S̲ ̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲8̲)
INCR STATUS ̲INFO.FIRST ̲STATUS ̲COUNT
STATUS ̲INFO.FIRST ̲STATUS ̲COUNT GE STATUS ̲INFO.
LAST ̲STATUS ̲COUNT? - EXIT SORT
̲LOOP
END SORT LOOP
S̲T̲O̲R̲E̲ ̲S̲O̲R̲T̲E̲D̲ ̲D̲A̲T̲A̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲4̲)
STATUS ̲INFO.FILE ̲EMPTY EQ TRUE? - EXIT READ
̲LOOP
END READ ̲LOOP
FIGURE 4.2.5.4.13-2
SET ̲UP ̲SEARCH ̲PARAM
STATUS ̲INFO.MESS ̲TYPE = M ̲SVC
STATUS ̲INFO.SEARCH ̲TWO = S ̲DUMMY
EQUIVALENCE(LITTLE ̲BUF(1), SVC ̲ADM: SVC ̲STA ̲ADM)
CASE STATUS ̲INFO.FIRST ̲STATUS ̲COUNT OF
1: STATUS ̲INFO.SEARCH ̲ONE = S ̲SENT
IIF ̲NO = 2
ADM ̲PTR = ADDRESS(SVC ̲ADM.NO ̲SENT)
2: STATUS ̲INFO.SEARCH ̲ONE = S ̲DELETED
IIF ̲NO = 4
ADM ̲PTR = ADDRESS(SVC ̲ADM.NO ̲DELETED)
3: STATUS ̲INFO.SEARCH ̲ONE = S ̲SUSP ̲CONT
STATUS ̲INFO.SEARCH ̲TWO = S ̲SUSP ̲DRAFT
IIF ̲NO = 3
ADM ̲PTR = ADDRESS(SVC ̲ADM.NO ̲DEFERRED)
4: STATUS ̲INFO.SEARCH ̲ONE = S ̲DEFERRED
IIF ̲NO = 3
ADM ̲PTR = ADDRESS(SVC ̲ADM.NO ̲DEFERRED)
END CASE
STATUS ̲INFO.IIF ̲FIELD ̲LIST ̲PTR = ADDRESS(STA ̲CIF ̲FIELD
̲LIST
(IIF ̲NO))
STATUS ̲INFO.STA ̲ADM ̲COUNT ̲PTR = ADM ̲PTR
FIGURE 4.2.5.4.13-3
4.2.5.4.14 U̲M̲A̲M̲ ̲D̲E̲L̲E̲T̲I̲O̲N̲
4.2.5.4.14.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 module:
- user deletion
- supervisor deletion
a) U̲s̲e̲r̲ ̲D̲e̲l̲e̲t̲i̲o̲n̲
If the message is available for deletion, then
it will be deleted.
If the message is not available for deletion or
is not found, a deletion report is sent to the
Supervisor Printer.
b) S̲u̲p̲e̲r̲v̲i̲s̲o̲r̲ ̲D̲e̲l̲e̲t̲i̲o̲n̲
If the message is found, then the status will be
changed to deleted.
4.2.5.4.14.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) UMAM ̲DELETION
b) UMAM ̲DELETION (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.5.4.14.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
a) D̲E̲L̲E̲T̲E̲
Searches the referenced CIF in the status files.
Changes status to deleted and makes the referenced
CIF active.
b) C̲h̲a̲n̲g̲e̲ ̲S̲t̲a̲t̲u̲s̲ ̲T̲o̲ ̲D̲e̲l̲
Calls CONVERT-OUTG-TO ̲INTA and INCLUDE ̲IN ̲INTA
and stores Expand or Preparation Area.
c) D̲e̲l̲ ̲R̲e̲s̲p̲
Sends a reply to requestor and generates a deletion
report which is sent to Supervisor Printer.
4.2.5.4.14.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
CPS ̲PREFIX.D*GENERAL
CPS ̲PREFIX.D*DAMOS ̲GENERAL
CPS ̲PREFIX.D*CPS ̲CONF
CPS ̲PREFIX.D*CPS ̲GENERAL
CPS ̲PREFIX.D*CSF ̲GENERAL
CPS ̲PREFIX.D*UTILITY ̲FUNC
CPS ̲PREFIX.D*QUEUE ̲MON
CPS ̲PREFIX.D*MESSAGE ̲MON
CPS ̲PREFIX.D*CPS ̲ERROR ̲HAND
CPS ̲PREFIX.D*FMS ̲GENERAL
CPS ̲PREFIX.D*IOS ̲PARAMS
CPS ̲PREFIX.D*SSC ̲GENERAL
CPS ̲PREFIX.D*SSC ̲SYS ̲CONF
CPS ̲PREFIX.D*SITE ̲CONF
CPS ̲PREFIX.D*CPS ̲APP ̲GENERAL
CPS ̲PREFIX.D*CPS ̲REPORTS
CPS ̲PREFIX.D*TRACE
CPS ̲PREFIX.D*CPS ̲AMOS ̲CONF
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
UMAM ̲CMDQ
CREATE ̲QEL
FILE ̲DIR ̲ACB
PREP ̲REC (m)
FILE ̲DIR (m)
UMAM ̲ATTR
BIG ̲BUF ̲CONTENTS
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
VAR
REC ̲PTR
QEL ̲PTR
PT ̲REC
RECORD ̲PTR
QEL ̲PTR
SAVER6 : INTEGER
TYPE
DEL ̲DATA ̲TYPE = RECORD
TIME :ARRAY(1...11) OF CHAR
ITEM ̲REF :ARRAY(1..59 OF CHAR
LTD :ARRAY(1..2) OF CHAR
END
CONST
DEL ̲REPORT ̲NO = REP ̲DELETION ̲REQ
DEL ̲BUF ̲PT = ADDRESS(LITTLE ̲BUF)
4.2.5.4.14.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
If the deletion request is received from a user, it
is checked whether the message is available for deletion
or not. If the message can be deleted, then the status
is changed. If the message is not available for deletion,
a deletion report is sent to the Supervisor Printer.
If the deletion request is received from the Supervisor,
then the status of the message will be changed to deleted
and the CIF is made active.
DELETE ̲REQUEST
CASE UMAM ̲ATTR.FLAG OF DELETE ̲REQ ̲TYPE
USER ̲DEL? - U̲S̲E̲R̲ ̲D̲E̲L̲E̲T̲I̲O̲N̲(̲-̲2̲)̲
SUPV ̲SVC,
MDCO ̲SVC,
MSO ̲SVC? EQUIVALENCE(UMAM
̲ATTR.HEADER.
INF,
PARAM:
DELETION
̲PARAM)
ITEM ̲REF = PARAM.ITEM ̲REF
LTD = PARAM.LTD
TIME = NIL
WINDOW = NULL
D̲E̲L̲E̲T̲E̲ ̲(̲L̲T̲D̲,̲ ̲I̲T̲E̲M̲R̲E̲F̲,̲ ̲0̲,̲ ̲N̲I̲L̲L̲)̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲4̲.̲3̲.̲1̲)̲
SUPV ̲SPECIFIED ̲CIF? - EQUIVALENCE(UMAM ̲ATTR.HEADER.INF,
PARAM:
SUPV
̲DELETION
̲PARAM)
ITEM
̲REF
= PARAM.ITEM
̲REF
LTD
= NULL
TIME
= PARAM.TIME
̲STAMP
WINDOW
= PARAM.WINDOW
D̲E̲L̲E̲T̲E̲(̲L̲T̲D̲,̲
̲I̲T̲E̲M̲
̲R̲E̲F̲,̲
̲T̲I̲M̲E̲,̲
̲W̲I̲N̲D̲O̲W̲)
(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲4̲.̲3̲.̲1̲)̲
OTHERWISE? U̲Q̲ ̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲1̲)̲
END CASE
FIGURE 4.2.5.4.14-1
USER ̲DELETION
CASE L̲O̲C̲K̲U̲P̲ ̲S̲T̲A̲T̲U̲S̲ ̲R̲E̲C̲(̲P̲A̲R̲A̲M̲ ̲I̲T̲E̲M̲ ̲R̲E̲F̲,̲ ̲P̲A̲R̲A̲M̲.̲L̲T̲D̲)̲(̲S̲T̲A̲T̲U̲S̲
̲R̲E̲C̲)̲:̲
E̲R̲R̲O̲R̲
̲O̲K̲
̲(̲4̲.̲2̲.̲5̲.̲6̲.̲2̲1̲)̲
ERROR? D̲E̲L̲ ̲R̲E̲S̲P̲(̲D̲ ̲N̲O̲T̲ ̲F̲O̲U̲N̲D̲)̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲4̲.̲3̲.̲3̲)
OK? STATUS ̲REC.STATUS = S ̲SENT ̲RELS?
D̲E̲L̲ ̲R̲E̲S̲P̲(̲D̲ ̲A̲W̲A̲I̲T̲I̲N̲G̲ ̲R̲E̲L̲S̲)̲(̲4̲.̲2̲.̲5̲.̲1̲4̲.̲3̲.̲3̲)
STATUS ̲REC.STATUS = S ̲AWAITING
̲APPEND?
S̲E̲N̲D̲ ̲R̲E̲S̲P̲O̲N̲S̲E̲(̲D̲E̲L̲E̲T̲E̲ ̲R̲E̲S̲P̲,̲
̲D̲ ̲A̲W̲A̲I̲T̲I̲N̲G̲ ̲A̲P̲P̲)̲
(4̲.̲2̲.̲5̲.̲6̲.̲4̲)
CASE L̲O̲O̲K̲U̲P̲ ̲P̲A̲S̲S̲I̲V̲E̲ ̲C̲I̲F̲S̲(̲S̲T̲A̲T̲U̲S̲
̲R̲E̲C̲.̲V̲I̲E̲W̲ ̲N̲A̲M̲E̲)
(C̲R̲E̲A̲T̲E̲
̲Q̲E̲L̲)̲:̲
̲E̲R̲R̲O̲R̲
̲O̲K̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲3̲)
ERROR?
OK? U̲N̲L̲O̲C̲K̲ ̲P̲A̲S̲S̲I̲V̲E̲ ̲C̲I̲F̲(̲C̲R̲E̲A̲T̲E̲
̲Q̲E̲L̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲2̲8̲)
U̲M̲A̲M̲ ̲D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲(̲C̲R̲E̲A̲T̲E̲ ̲Q̲E̲L̲)̲
̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲)
END CASE
C̲H̲A̲N̲G̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲T̲O̲ ̲D̲E̲L̲ ̲(̲S̲T̲A̲T̲U̲S̲ ̲R̲E̲C̲)̲(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲4̲.̲3̲.̲2̲)
S̲E̲N̲D̲ ̲R̲E̲S̲P̲O̲N̲S̲E̲(̲D̲E̲L̲E̲T̲E̲ ̲R̲E̲S̲P̲,̲ ̲D̲ ̲D̲E̲L̲E̲T̲E̲D̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲4̲)
END CASE
FIGURE 4.2.5.4.14-2
DELETE
CASE L̲O̲O̲K̲U̲P̲ ̲S̲T̲A̲T̲U̲S̲ ̲R̲E̲C̲(̲I̲T̲E̲M̲ ̲R̲E̲F̲,̲ ̲L̲T̲D̲,̲ ̲T̲I̲M̲E̲ ̲S̲T̲A̲M̲P̲,̲
̲W̲I̲N̲D̲O̲W̲)̲
(̲S̲T̲A̲T̲U̲S̲
̲R̲E̲C̲)̲:̲
̲E̲R̲R̲O̲R̲
̲O̲K̲ ̲(̲4̲.̲2̲.̲5̲.̲6̲.̲2̲1̲)̲
ERROR?
OK? - CASE L̲O̲O̲K̲U̲P̲ ̲P̲A̲S̲S̲I̲V̲E̲ ̲C̲I̲F̲S̲(̲S̲T̲A̲T̲U̲S̲ ̲R̲E̲C̲.̲V̲I̲E̲W̲
̲N̲A̲M̲E̲)̲
(C̲R̲E̲A̲T̲E̲ ̲Q̲E̲L̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲3̲)̲:̲E̲R̲R̲O̲R̲
̲O̲K̲
ERROR?
OK? - U̲N̲L̲O̲C̲K̲ ̲P̲A̲S̲S̲I̲V̲E̲ ̲C̲I̲F̲S̲ ̲(̲C̲R̲E̲A̲T̲E̲ ̲Q̲E̲L̲)̲
(̲4̲.̲2̲.̲5̲.̲6̲.̲2̲8̲)̲
U̲M̲A̲M̲ ̲D̲I̲S̲M̲A̲N̲T̲L̲E̲(̲C̲R̲E̲A̲T̲E̲ ̲Q̲E̲L̲)̲(̲4̲.̲2̲.̲5̲.̲6̲.̲1̲)
END CASE
C̲H̲A̲N̲G̲E̲ ̲S̲T̲A̲T̲U̲S̲ ̲T̲O̲ ̲D̲E̲L̲(̲S̲T̲A̲T̲U̲S̲ ̲R̲E̲C̲)̲
(̲4̲.̲2̲.̲5̲.̲4̲.̲1̲4̲.̲3̲.̲2̲)̲
S̲E̲N̲D̲ ̲R̲E̲S̲P̲O̲N̲S̲E̲(̲D̲E̲L̲E̲T̲E̲ ̲R̲E̲S̲P̲,̲D̲ ̲D̲E̲L̲E̲T̲E̲D̲)̲
(̲4̲.̲2̲.̲5̲.̲6̲.̲4̲)̲
END CASE
FIGURE 4.2.5.4.14.3-1