*DECK DCUPD22 
       IDENTIFICATION DIVISION. 
       PROGRAM-ID. UPD22. 
      ******************************************* 
      * 
      *    A R E A    E N T R Y 
      * 
      ******************************************* 
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION. 
       SOURCE-COMPUTER.  CYBER. 
       OBJECT-COMPUTER.  CYBER. 
       DATA DIVISION. 
*CALL UPDCS 
*CALL DCDWA22 
*CALL QUALINE 
*CALL DCUPDSWS
       01  RT-CODES                PICTURE X(9) VALUE 
           "WFRZDTUS/". 
       01  PROCESS-CODES           PICTURE X(18) VALUE
           "CA CP DP RC US /  ".
       01  DUPES-CODES             PICTURE X(5)  VALUE
           "AIFN/". 
*CALL CODES 
       PROCEDURE DIVISION.
*CALL DCUPDKW 
      ******************************************************
      * 
      *    A R E A    E N T R Y 
      * 
      ******************************************************
      * 
      * 
      ******************************************************
           MOVE 22 TO SAVE-ENT-TYPE.
           MOVE SPACE TO NUM-EDIT.
      * 
      *    RESPONSIBILITY CATEGORY
      * 
       RESP-EDIT. 
           IF CAT-ID NOT EQUAL TO 140 
               GO TO NAME-A-EDIT. 
      * 
      *    RESPONSIBILITY - STATUS
      * 
       RESP-EDIT-STAT.
           IF FIELD-ID NOT = 05 
               GO TO RESP-EDIT-FUNC.
           MOVE RESP-A-STATUS TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO RESP-DEL-STAT. 
           MOVE STAT-CODES TO VALID-CODE-TABLE. 
           PERFORM VALID-CODE THRU VALID-CODE-XIT.
           MOVE VAL-AREA TO RESP-A-STATUS.
           GO TO CAT-MVC-MSG-CHG. 
       RESP-DEL-STAT. 
           IF RESP-A-STATUS = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO RESP-A-STATUS.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    RESPONSIBILITY - FUNCTION
      * 
       RESP-EDIT-FUNC.
           IF FIELD-ID NOT = 10 
               GO TO RESP-EDIT-DPT. 
           MOVE RESP-A-FUNC TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO RESP-DEL-FUNC. 
           MOVE FUNC-CODES TO VALID-CODE-TABLE. 
           PERFORM VALID-CODE THRU VALID-CODE-XIT.
           MOVE VAL-AREA TO RESP-A-FUNC.
           GO TO CAT-MVC-MSG-CHG. 
       RESP-DEL-FUNC. 
           IF RESP-A-FUNC = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO RESP-A-FUNC.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    RESPONSIBILITY - DEPT
      * 
       RESP-EDIT-DPT. 
           IF FIELD-ID NOT = 15 
               GO TO RESP-EDIT-PER. 
           MOVE RESP-A-DEPT TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO RESP-DEL-DPT.
           MOVE VAL-AREA TO RESP-A-DEPT.
           GO TO CAT-MVC-MSG-CHG. 
       RESP-DEL-DPT.
           IF RESP-A-DEPT = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO RESP-A-DEPT.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    RESPONSIBILITY - PERSON
      * 
       RESP-EDIT-PER. 
           IF FIELD-ID NOT = 20 
               GO TO RESP-EDIT-PHONE. 
           MOVE RESP-A-PERSON TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO RESP-DEL-PER.
           MOVE VAL-AREA TO RESP-A-PERSON.
           GO TO CAT-MVC-MSG-CHG. 
       RESP-DEL-PER.
           IF RESP-A-PERSON = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO RESP-A-PERSON.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    RESPONSIBILITY - PHONE 
      * 
      * 
       RESP-EDIT-PHONE. 
           IF FIELD-ID NOT = 25 
               GO TO RESP-EDIT-TIT. 
           MOVE RESP-A-PHONE TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO RESP-DEL-PER.
           MOVE VAL-AREA TO RESP-A-PHONE. 
           GO TO CAT-MVC-MSG-CHG. 
       RESP-DEL-PHONE.
           IF RESP-A-PHONE = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO RESP-A-PHONE. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    RESPONSIBILITY - TITLE 
      * 
       RESP-EDIT-TIT. 
           IF FIELD-ID NOT = 30 
               GO TO RESP-EDIT-MAIL.
           MOVE RESP-A-TITLE TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO RESP-DEL-TIT.
           MOVE VAL-AREA TO RESP-A-TITLE. 
           GO TO CAT-MVC-MSG-CHG. 
       RESP-DEL-TIT.
           IF RESP-A-TITLE = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE VAL-AREA TO RESP-A-TITLE. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    RESPONSIBILITY - MAIL
      * 
       RESP-EDIT-MAIL.
           IF FIELD-ID NOT = 35 
               GO TO RESP-EDIT-DATE.
           MOVE RESP-A-MAIL TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO RESP-DEL-MAIL. 
           MOVE VAL-AREA TO RESP-A-MAIL.
           GO TO CAT-MVC-MSG-CHG. 
       RESP-DEL-MAIL. 
           IF RESP-A-MAIL = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE VAL-AREA TO RESP-A-MAIL.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    RESPONSIBILITY - DATE
      * 
       RESP-EDIT-DATE.
           IF FIELD-ID NOT = 40 
               GO TO FLD-ERR. 
           MOVE RESP-A-DATE TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO RESP-DEL-DATE. 
           MOVE VAL-AREA TO RESP-A-DATE.
           GO TO CAT-MVC-MSG-CHG. 
       RESP-DEL-DATE. 
           IF RESP-A-DATE = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO RESP-A-DATE.
           GO TO CAT-MVC-MSG-DEL. 
      ******************************************
      * 
      *    NAME CATEGORY
      * 
      ******************************************
       NAME-A-EDIT. 
           IF CAT-ID NOT = 200
               GO TO ATTR-A-EDIT. 
      * 
      *    NAME - AREA
      * 
       NAME-EDIT-DMS. 
           IF FIELD-ID NOT = 05 
               GO TO FLD-ERR. 
           MOVE NAME-A-DMS TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO NAME-DEL-DMS.
           MOVE VAL-AREA TO NAME-A-DMS. 
           GO TO CAT-MVC-MSG-CHG. 
       NAME-DEL-DMS.
           IF NAME-A-DMS = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO NAME-A-DMS. 
           GO TO CAT-MVC-MSG-DEL. 
      ******************************************* 
      * 
      *    ATTRIBUTE CATEGORY 
      * 
      ******************************************* 
       ATTR-A-EDIT. 
           IF CAT-ID NOT = 210
               GO TO ALIAS-A-EDIT.
      * 
      *    ATTRIBUTE - CL 
      * 
       ATTR-EDIT-CL.
           IF FIELD-ID NOT = 01 
               GO TO ATTR-EDIT-CP.
           MOVE ATTR-A-CL TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-CL. 
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-CL.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-CL. 
           IF ATTR-A-CL = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-CL.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - CP 
      * 
       ATTR-EDIT-CP.
           IF FIELD-ID NOT = 03 
               GO TO ATTR-EDIT-C1.
           MOVE ATTR-A-CP TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-CP. 
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-CP.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-CP. 
           IF ATTR-A-CP = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-CP.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - C1 
      * 
       ATTR-EDIT-C1.
           IF FIELD-ID NOT = 05 
               GO TO ATTR-EDIT-EMK. 
           MOVE ATTR-A-C1 TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-C1. 
           MOVE VAL-AREA TO ATTR-A-C1.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-C1. 
           IF ATTR-A-C1 = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-C1.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - EMK
      * 
       ATTR-EDIT-EMK. 
           IF FIELD-ID NOT = 07 
               GO TO ATTR-EDIT-FO.
           MOVE ATTR-A-EMK TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-EMK.
           MOVE VAL-AREA TO ATTR-A-EMK. 
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-EMK.
           IF ATTR-A-EMK = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-EMK
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - FO 
      * 
       ATTR-EDIT-FO.
           IF FIELD-ID NOT = 09 
               GO TO ATTR-EDIT-HL.
           MOVE ATTR-A-FO TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-FO. 
           IF VAL-AREA NOT = "AK" AND "IS" AND "DA" 
               MOVE "AK IS DA /  " TO BIG-CODES 
               MOVE "B" TO CODE-ERR-SW
               GO TO VALIDATION-ERROR.
           MOVE VAL-AREA TO ATTR-A-FO.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-FO. 
           IF ATTR-A-FO = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-FO.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - HL 
      * 
       ATTR-EDIT-HL.
           IF FIELD-ID NOT = 11 
               GO TO ATTR-EDIT-HMB. 
           MOVE ATTR-A-HL TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-HL. 
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-HL.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-HL. 
           IF ATTR-A-HL = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-HL.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - HMB
      * 
       ATTR-EDIT-HMB. 
           IF FIELD-ID NOT = 13 
               GO TO ATTR-EDIT-KL.
           MOVE ATTR-A-HMB TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-HMB.
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-HMB. 
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-HMB.
           IF ATTR-A-HMB = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-HMB. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - KL 
      * 
       ATTR-EDIT-KL.
           IF FIELD-ID NOT = 15 
               GO TO ATTR-EDIT-KP.
           MOVE ATTR-A-KL TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-KL. 
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-KL.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-KL. 
           IF ATTR-A-KL = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-KL.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - KP 
      * 
       ATTR-EDIT-KP.
           IF FIELD-ID NOT = 17 
               GO TO ATTR-EDIT-KT.
           MOVE ATTR-A-KP TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-KP. 
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-KP.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-KP. 
           IF ATTR-A-KP = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-KP.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - KT 
      * 
       ATTR-EDIT-KT.
           IF FIELD-ID NOT = 19 
               GO TO ATTR-EDIT-LL.
           MOVE ATTR-A-KT TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-KT. 
           MOVE VAL-AREA TO ATTR-A-KT.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-KT. 
           IF ATTR-A-KT = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-KT.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - LL 
      * 
       ATTR-EDIT-LL.
           IF FIELD-ID NOT = 21 
               GO TO ATTR-EDIT-LP.
           MOVE ATTR-A-LL TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-LL. 
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-LL.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-LL. 
           IF ATTR-A-LL = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-LL.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - LP 
      * 
       ATTR-EDIT-LP.
           IF FIELD-ID NOT = 23 
               GO TO ATTR-EDIT-BT.
           MOVE ATTR-A-LP TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-LP. 
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-LP.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-LP. 
           IF ATTR-A-LP = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-LP.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      * 
      *    ATTRIBUTE - BT 
      * 
       ATTR-EDIT-BT.
           IF FIELD-ID NOT = 24 
               GO TO ATTR-EDIT-MBL. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-BT. 
           IF VAL-AREA NOT = "I" AND "C"
             AND "K" AND "E"
               MOVE "I  C  K  E  /" TO BIG-CODES
               MOVE "B" TO CODE-ERR-SW
               GO TO VALIDATION-ERROR 
           END-IF 
           MOVE VAL-AREA TO ATTR-A-BT.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-BT. 
           IF ATTR-A-BT = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-BT.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - MBL
      * 
       ATTR-EDIT-MBL. 
           IF FIELD-ID NOT = 25 
               GO TO ATTR-EDIT-MNR. 
           MOVE ATTR-A-MBL TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-MBL.
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-MBL. 
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-MBL.
           IF ATTR-A-MBL = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-MBL. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - MNR
      * 
       ATTR-EDIT-MNR. 
           IF FIELD-ID NOT = 26 
               GO TO ATTR-EDIT-MRL. 
           MOVE ATTR-A-MNR TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-MNR.
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-MNR. 
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-MNR.
           IF ATTR-A-MNR = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-MNR. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - MRL
      * 
       ATTR-EDIT-MRL. 
           IF FIELD-ID NOT = 27 
               GO TO ATTR-EDIT-ORG. 
           MOVE ATTR-A-MRL TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-MRL.
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-MRL. 
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-MRL.
           IF ATTR-A-MRL = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-MRL. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - ORG
      * 
       ATTR-EDIT-ORG. 
           IF FIELD-ID NOT = 29 
               GO TO ATTR-EDIT-RB.
           MOVE ATTR-A-ORG TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-ORG.
           IF VAL-AREA NOT = "OLD" AND "NEW"
               MOVE "OLDNEW/  " TO BIG-CODES
               MOVE "B" TO CODE-ERR-SW
               GO TO VALIDATION-ERROR.
           MOVE VAL-AREA TO ATTR-A-ORG. 
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-ORG.
           IF ATTR-A-ORG = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-ORG. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - RB 
      * 
       ATTR-EDIT-RB.
           IF FIELD-ID NOT = 30 
               GO TO ATTR-EDIT-RKP. 
           MOVE ATTR-A-RB TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-RB. 
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-RB.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-RB. 
           IF ATTR-A-RB = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-RB.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - RKP
      * 
       ATTR-EDIT-RKP. 
           IF FIELD-ID NOT = 31 
               GO TO ATTR-EDIT-RKW. 
           MOVE ATTR-A-RKP TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-RKP.
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-RKP. 
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-RKP.
           IF ATTR-A-RKP = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-RKP. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - RKW
      * 
       ATTR-EDIT-RKW. 
           IF FIELD-ID NOT = 33 
               GO TO ATTR-EDIT-RMK. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-RKW.
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-RKW. 
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-RKW.
           IF ATTR-A-RKW = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-RKW. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - RMK
      * 
      *    ATTRIBUTE - RMK
      * 
       ATTR-EDIT-RMK. 
           IF FIELD-ID NOT = 35 
               GO TO ATTR-EDIT-RT.
           MOVE ATTR-A-RMK TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-RMK.
           MOVE VAL-AREA TO ATTR-A-RMK. 
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-RMK.
           IF ATTR-A-RMK = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-RMK. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - RT 
      * 
       ATTR-EDIT-RT.
           IF FIELD-ID NOT = 37 
               GO TO ATTR-EDIT-SEQ. 
           MOVE ATTR-A-RT TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-RT. 
           MOVE RT-CODES TO VALID-CODE-TABLE. 
           PERFORM VALID-CODE THRU VALID-CODE-XIT.
           MOVE VAL-AREA TO ATTR-A-RT.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-RT. 
           IF ATTR-A-RT = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-RT.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - SEQ
      * 
       ATTR-EDIT-SEQ. 
           IF FIELD-ID NOT = 39 
               GO TO ATTR-EDIT-TL.
           MOVE ATTR-A-SEQ TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-SEQ.
           IF VAL (1) NOT EQUAL "A" AND "C" AND "D" 
               MOVE "A  C  D  /  " TO BIG-CODES 
               MOVE "B" TO CODE-ERR-SW
               GO TO VALIDATION-ERROR.
           MOVE VAL-AREA TO ATTR-A-SEQ. 
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-SEQ.
           IF ATTR-A-SEQ = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-SEQ. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ATTRIBUTE - TL 
      * 
  
       ATTR-EDIT-TL.
           IF FIELD-ID NOT = 41 
               GO TO FLD-ERR. 
           MOVE ATTR-A-TL TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ATTR-DEL-TL. 
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO ATTR-A-TL.
           GO TO CAT-MVC-MSG-CHG. 
       ATTR-DEL-TL. 
           IF ATTR-A-TL = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ATTR-A-TL.
           GO TO CAT-MVC-MSG-DEL. 
      ******************************************* 
      * 
      *    ALIAS CATEGORY 
      * 
      ******************************************* 
       ALIAS-A-EDIT.
           IF CAT-ID NOT = 211
               GO TO STC-A-EDIT.
      * 
      *    ALIAS - NAME 
      * 
       ALIAS-EDIT-NAME. 
           IF FIELD-ID NOT = 05 
               GO TO FLD-ERR. 
           MOVE ALY-A-DMS TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO ALIAS-DEL-NAME.
           MOVE VAL-AREA TO ALY-A-DMS.
           GO TO CAT-MVC-MSG-CHG. 
       ALIAS-DEL-NAME.
           IF ALY-A-DMS = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ALY-A-DMS.
           GO TO CAT-MVC-MSG-DEL. 
      ******************************************
      * 
      *    STRUCTURE CATEGORY 
      * 
      ******************************************
       STC-A-EDIT.
           IF CAT-ID NOT = 300
               GO TO PROCESS-A-EDIT.
      * 
      *    STRUCTURE - NAME 
      * 
  
           IF FIELD-ID NOT = 05 
               GO TO STC-EDIT-ALY.
           MOVE STC-A-RNAME TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO STC-DEL-NAME.
           PERFORM CK-CATNAME THRU CK-CATNAME-XIT.
           PERFORM CHANGE-DELETE THRU CHANGE-DELETE-EXIT. 
           MOVE "S" TO TYPE-CATAL-NAME. 
           MOVE VAL-AREA TO NEW-CATAL-NAME STC-A-RNAME. 
           GO TO CAT-MVC-MSG-CHG. 
       STC-DEL-NAME.
           IF STC-A-RNAME = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO STC-A-RNAME.
           PERFORM FIELD-DELETE THRU FIELD-DELETE-EXIT. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    STRUCTURE - ALIAS NUMBER 
      * 
       STC-EDIT-ALY.
           IF FIELD-ID NOT = 10 
               GO TO STC-EDIT-RCVAL.
           MOVE STC-A-ALIAS-NO TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO STC-DEL-ALY. 
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO STC-A-ALIAS-NO. 
           GO TO CAT-MVC-MSG-CHG. 
       STC-DEL-ALY. 
           IF STC-A-ALIAS-NO = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO STC-A-ALIAS-NO. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    STC - RECORD CODE VALUE
      * 
       STC-EDIT-RCVAL.
           IF FIELD-ID NOT EQUAL TO 15
               GO TO STC-EDIT-INC.
           MOVE STC-A-RC-VALUE TO OLD-VALUE.
           IF VAL (1) EQUAL "$" 
               GO TO STC-DEL-RCVAL. 
           IF QUOTE-SW EQUAL "Y"
               MOVE VAL-AREA TO STC-A-RC-VALUE
               MOVE "L" TO STC-A-VAL-TYPE 
           ELSE 
               IF VAL (1) IS NUMERIC
                 OR VAL (1) EQUAL "-" 
                   MOVE 10 TO FLD-LEN (FLD) 
                   PERFORM MOVE-NUM THRU VALID-NUM-XIT
                   MOVE SPACES TO STC-A-RC-VALUE
                   MOVE NUM-HOLD-X TO STC-A-RC-VALUE (1 : 10) 
                   MOVE 30 TO FLD-LEN (FLD) 
                   MOVE "N" TO STC-A-VAL-TYPE 
               END-IF 
           END-IF 
           GO TO CAT-MVC-MSG-CHG. 
       STC-DEL-RCVAL. 
           IF STC-A-RC-VALUE EQUAL SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO STC-A-RC-VALUE. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    STC - INCLUDE
      * 
       STC-EDIT-INC.
           IF FIELD-ID NOT EQUAL TO 20
               GO TO FLD-ERR. 
           MOVE STC-A-INCLUDE TO OLD-VALUE. 
           IF VAL (1) EQUAL "$" 
               GO TO STC-DEL-INC. 
           MOVE VAL-AREA TO STC-A-INCLUDE.
           GO TO CAT-MVC-MSG-CHG. 
       STC-DEL-INC. 
           IF STC-A-INCLUDE EQUAL SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO STC-A-INCLUDE.
           GO TO CAT-MVC-MSG-DEL. 
      ********************************************* 
      *    PROCESS CATEGORY 
      * 
      ********************************************* 
       PROCESS-A-EDIT.
           IF CAT-ID NOT = 400
               GO TO ACCESS-A-EDIT. 
      * 
      *    PROCESS - DATA BASE PROCEDURE NAME 
      * 
       PROCESS-EDIT-DBP.
           IF FIELD-ID NOT = 05 
               GO TO PROCESS-EDIT-USE.
           MOVE PROC-A-DBPROC TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO PROCESS-DEL-DBP. 
           MOVE "P" TO PROC-A-LINETYPE. 
           IF VAL-AREA NOT EQUAL "SYSTEM" 
               PERFORM CK-CATNAME THRU CK-CATNAME-XIT 
               PERFORM CHANGE-DELETE THRU CHANGE-DELETE-EXIT
               MOVE VAL-AREA TO NEW-CATAL-NAME
               MOVE "P" TO TYPE-CATAL-NAME
           ELSE 
               MOVE SPACES TO TYPE-CATAL-NAME 
               MOVE SPACES TO NEW-CATAL-NAME
           END-IF 
           MOVE VAL-AREA TO PROC-A-DBPROC.
           GO TO CAT-MVC-MSG-CHG. 
       PROCESS-DEL-DBP. 
           IF PROC-A-DBPROC = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           IF PROC-A-DBPROC NOT = "SYSTEM"
               PERFORM FIELD-DELETE THRU FIELD-DELETE-EXIT
           ELSE 
               MOVE SPACES TO TYPE-CATAL-NAME 
           END-IF 
           MOVE SPACES TO PROC-A-DBPROC.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    PROCESS - DBPROC USAGE (TYPE)
      * 
       PROCESS-EDIT-USE.
           IF FIELD-ID NOT EQUAL TO 10
               GO TO PROCESS-EDIT-TIME. 
           IF VAL (1) EQUAL "$" 
               GO TO PROCESS-DEL-USE. 
           MOVE VAL-AREA TO HOLD-FORMAT.
           MOVE PROCESS-CODES TO BIG-CODES. 
           PERFORM FORMAT-VALIDATION THRU FORMAT-VALIDATION-EXIT. 
           MOVE VAL-AREA TO PROC-A-TYPE.
           MOVE "P" TO PROC-A-LINETYPE. 
           GO TO CAT-MVC-MSG-CHG. 
       PROCESS-DEL-USE. 
           IF PROC-A-TYPE EQUAL TO SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO PROC-A-TYPE.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    PROCESS - DBPROC TIME
      * 
       PROCESS-EDIT-TIME. 
           IF FIELD-ID NOT EQUAL TO 15
               GO TO PROCESS-EDIT-OPT.
           IF VAL (1) EQUAL "$" 
               GO TO PROCESS-DEL-TIME.
           MOVE "A  B  E  /  " TO BIG-CODES.
           PERFORM CHECK-SLASHES THRU CHECK-SLASHES-EXIT. 
           MOVE VAL-AREA TO PROC-A-TIME.
           MOVE "P" TO PROC-A-LINETYPE. 
           GO TO CAT-MVC-MSG-CHG. 
       PROCESS-DEL-TIME.
           IF PROC-A-TIME EQUAL TO SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO PROC-A-TIME.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    PROCESS - OPTION 
      * 
       PROCESS-EDIT-OPT.
           IF FIELD-ID NOT EQUAL TO 20
               GO TO PROCESS-EDIT-RC-DATA.
           IF VAL (1) EQUAL "$" 
               GO TO PROCESS-DEL-OPT. 
           MOVE "O  C  U  R  /  " TO  BIG-CODES.
           PERFORM CHECK-SLASHES THRU CHECK-SLASHES-EXIT. 
           MOVE VAL-AREA TO PROC-A-OPTION.
           MOVE "P" TO PROC-A-LINETYPE. 
           GO TO CAT-MVC-MSG-CHG. 
       PROCESS-DEL-OPT. 
           IF PROC-A-OPTION EQUAL TO SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO PROC-A-OPTION.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    PROCESS - RC DATA NAME 
      * 
       PROCESS-EDIT-RC-DATA.
           IF FIELD-ID NOT = 25 
               GO TO PROCESS-EDIT-RC-QUAL.
           MOVE PROC-A-RC-DATA TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO PROCESS-DEL-RC-DATA. 
           PERFORM CK-CATNAME THRU CK-CATNAME-XIT.
           PERFORM CHANGE-DELETE THRU CHANGE-DELETE-EXIT. 
           MOVE "R" TO PROC-A-RC-LINETYPE.
           MOVE VAL-AREA TO PROC-A-RC-DATA SAVE-NAME. 
           PERFORM SET-REL-TABLE THRU SET-REL-TABLE-EXIT. 
           GO TO CAT-MVC-MSG-CHG. 
       PROCESS-DEL-RC-DATA. 
           IF PROC-A-RC-DATA = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           PERFORM FIELD-DELETE THRU FIELD-DELETE-EXIT. 
           MOVE SPACES TO PROC-A-RC-DATA. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    PROCESS - RC DATA QUALIFIER
      * 
       PROCESS-EDIT-RC-QUAL.
           IF FIELD-ID NOT = 30 
               GO TO PROCESS-EDIT-RC-ALIAS. 
           MOVE PROC-A-RC-QUAL TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO PROCESS-DEL-RC-QUAL. 
           PERFORM CK-CATNAME THRU CK-CATNAME-XIT.
           PERFORM CHANGE-DELETE THRU CHANGE-DELETE-EXIT. 
           MOVE "R" TO PROC-A-RC-LINETYPE.
           MOVE VAL-AREA TO PROC-A-RC-QUAL. 
           MOVE VAL-AREA TO SAVE-NAME.
           PERFORM SET-REL-TABLE THRU SET-REL-TABLE-EXIT. 
           GO TO CAT-MVC-MSG-CHG. 
       PROCESS-DEL-RC-QUAL. 
           IF PROC-A-RC-QUAL = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           PERFORM FIELD-DELETE THRU FIELD-DELETE-EXIT. 
           MOVE SPACES TO PROC-A-RC-QUAL. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    PROCESS - RC DATA ALIAS
      * 
       PROCESS-EDIT-RC-ALIAS. 
           IF FIELD-ID NOT = 35 
               GO TO FLD-ERR. 
           MOVE PROC-A-RC-ALIAS TO OLD-VALUE. 
           IF VAL (1) = "$" 
               GO TO PROCESS-DEL-RC-ALIAS.
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE "R" TO PROC-A-RC-LINETYPE.
           MOVE NUM-HOLD-X TO PROC-A-RC-ALIAS.
           GO TO CAT-MVC-MSG-CHG. 
       PROCESS-DEL-RC-ALIAS.
           IF PROC-A-RC-ALIAS = SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO PROC-A-RC-ALIAS.
           GO TO CAT-MVC-MSG-DEL. 
      ************************************************
      *    ACCESS CATEGORY
      ************************************************
       ACCESS-A-EDIT. 
           IF CAT-ID NOT EQUAL TO 425 
               GO TO MDINFO-A-EDIT. 
      * 
      *    ACCESS - MODE
      * 
       ACCESS-EDIT-MODE.
           IF FIELD-ID NOT = 05 
               GO TO ACCESS-EDIT-LOCK.
           MOVE ACC-A-MODE TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO ACCESS-DEL-MODE. 
           MOVE "U  R  /  " TO BIG-CODES. 
           PERFORM CHECK-SLASHES THRU CHECK-SLASHES-EXIT. 
           MOVE "M" TO ACC-A-LINETYPE.
           MOVE VAL-AREA TO ACC-A-MODE. 
           GO TO CAT-MVC-MSG-CHG. 
       ACCESS-DEL-MODE. 
           IF ACC-A-MODE = SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO ACC-A-MODE. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    ACCESS - LOCK
      * 
       ACCESS-EDIT-LOCK.
           IF FIELD-ID NOT = 10 
               GO TO FLD-ERR. 
           MOVE ACC-A-LOCK TO OLD-VALUE.
           IF VAL (1) = "$" 
               GO TO ACCESS-DEL-LOCK. 
      *    THE VALUE FOR THE LOCK MAY BE EITHER 
      *    A LITERAL OR A DATABASE PROCEDURE. 
      *    SET LINETYPE AND TYPE ACCORDINGLY
           IF VAL (1) NUMERIC OR QUOTE-SW EQUAL "Y" 
               MOVE "L" TO ACC-A-TYPE 
               MOVE SPACES TO NEW-CATAL-NAME
               MOVE SPACES TO TYPE-CATAL-NAME 
           ELSE 
               PERFORM CK-CATNAME THRU CK-CATNAME-XIT 
               PERFORM CHANGE-DELETE THRU CHANGE-DELETE-EXIT
               MOVE "P" TO ACC-A-TYPE 
               MOVE VAL-AREA TO NEW-CATAL-NAME
               MOVE "P" TO TYPE-CATAL-NAME
           END-IF 
           MOVE "L" TO ACC-A-LOCK-LINETYPE. 
           MOVE VAL-AREA TO ACC-A-LOCK. 
           GO TO CAT-MVC-MSG-CHG. 
       ACCESS-DEL-LOCK. 
           IF ACC-A-LOCK EQUAL SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           IF ACC-A-TYPE = "P"
               PERFORM FIELD-DELETE THRU FIELD-DELETE-EXIT
           END-IF 
           MOVE SPACES TO ACC-A-LOCK-LINETYPE 
               ACC-A-LOCK ACC-A-TYPE. 
           GO TO CAT-MVC-MSG-DEL. 
      ************************************************* 
      *    MDINFO CATEGORY
      ************************************************* 
       MDINFO-A-EDIT. 
           IF CAT-ID NOT EQUAL TO 450 
               GO TO AREAKEYS-A-EDIT. 
      * 
      *    MDINFO - INDEX FILE
      * 
       MD-EDIT-XN.
           IF FIELD-ID NOT EQUAL TO 05
               GO TO MD-EDIT-UN.
           MOVE MD-A-INDX-FILE TO OLD-VALUE.
           IF VAL (1) EQUAL "$" 
               GO TO MD-DEL-XN. 
           PERFORM CHANGE-DELETE THRU CHANGE-DELETE-EXIT. 
           MOVE VAL-AREA TO MD-A-INDX-FILE. 
           MOVE "S" TO TYPE-CATAL-NAME. 
           MOVE VAL-AREA TO NEW-CATAL-NAME. 
           GO TO CAT-MVC-MSG-CHG. 
       MD-DEL-XN. 
           IF MD-A-INDX-FILE EQUAL SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           PERFORM FIELD-DELETE THRU FIELD-DELETE-EXIT. 
           MOVE SPACES TO MD-A-UN.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    MDINFO - USER NUMBER 
      * 
       MD-EDIT-UN.
           IF FIELD-ID NOT EQUAL TO 10
               GO TO MD-EDIT-PW.
           MOVE MD-A-UN TO OLD-VALUE. 
           IF VAL (1) EQUAL "$" 
               GO TO MD-DEL-UN. 
           MOVE VAL-AREA TO MD-A-UN.
           GO TO CAT-MVC-MSG-CHG. 
       MD-DEL-UN. 
           IF MD-A-UN EQUAL SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO MD-A-UN.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    MDINFO - PASSWORD
      * 
       MD-EDIT-PW.
           IF FIELD-ID NOT EQUAL TO 15
               GO TO MD-EDIT-FAM. 
           MOVE MD-A-PW TO OLD-VALUE. 
           IF VAL (1) EQUAL "$" 
               GO TO MD-DEL-PW. 
           MOVE VAL-AREA TO MD-A-PW.
           GO TO CAT-MVC-MSG-CHG. 
       MD-DEL-PW. 
           IF MD-A-PW EQUAL SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO MD-A-PW.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    MDINFO - FAMILY
      * 
       MD-EDIT-FAM. 
           IF FIELD-ID NOT EQUAL TO 20
               GO TO MD-EDIT-PACK.
           MOVE MD-A-FAMILY TO OLD-VALUE. 
           IF VAL (1) EQUAL "$" 
               GO TO MD-DEL-FAM.
           MOVE VAL-AREA TO MD-A-FAMILY.
           GO TO CAT-MVC-MSG-CHG. 
       MD-DEL-FAM.
           IF MD-A-FAMILY EQUAL SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO MD-A-FAMILY.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    MDINFO - PACK
      * 
       MD-EDIT-PACK.
           IF FIELD-ID NOT EQUAL TO 25
               GO TO MD-EDIT-SET. 
           MOVE MD-A-PACK TO OLD-VALUE. 
           IF VAL (1) EQUAL "$" 
               GO TO MD-DEL-PACK. 
           MOVE VAL-AREA TO MD-A-PACK.
           GO TO CAT-MVC-MSG-CHG. 
       MD-DEL-PACK. 
           IF MD-A-PACK EQUAL SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO MD-A-PACK.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    MDINFO - SET 
      * 
       MD-EDIT-SET. 
           IF FIELD-ID NOT EQUAL TO 30
               GO TO MD-EDIT-VSN. 
           MOVE MD-A-SET TO OLD-VALUE.
           IF VAL (1) EQUAL "$" 
               GO TO MD-DEL-SET.
           MOVE VAL-AREA TO MD-A-SET. 
           GO TO CAT-MVC-MSG-CHG. 
       MD-DEL-SET.
           IF MD-A-SET EQUAL SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO MD-A-SET. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    MDINFO - VSN 
      * 
       MD-EDIT-VSN. 
           IF FIELD-ID NOT EQUAL TO 35
               GO TO MD-EDIT-DT.
           MOVE MD-A-VSN TO OLD-VALUE.
           IF VAL (1) EQUAL "$" 
               GO TO MD-DEL-VSN.
           MOVE VAL-AREA TO MD-A-VSN. 
           GO TO CAT-MVC-MSG-CHG. 
       MD-DEL-VSN.
           IF MD-A-VSN EQUAL SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO MD-A-VSN. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    MDINFO - DT
      * 
       MD-EDIT-DT.
           IF FIELD-ID NOT EQUAL TO 40
               GO TO MD-EDIT-LOG. 
           MOVE MD-A-DT TO OLD-VALUE. 
           IF VAL (1) EQUAL "$" 
               GO TO MD-DEL-DT. 
           MOVE VAL-AREA TO MD-A-DT.
           GO TO CAT-MVC-MSG-CHG. 
       MD-DEL-DT. 
           IF MD-A-DT EQUAL SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO MD-A-DT.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    MDINFO - LOG 
      * 
       MD-EDIT-LOG. 
           IF FIELD-ID NOT EQUAL TO 45
               GO TO MD-EDIT-PFN. 
           MOVE MD-A-LOG TO OLD-VALUE.
           IF VAL (1) EQUAL "$" 
               GO TO MD-DEL-LOG.
           MOVE 8 TO MAX-LENGTH.
           MOVE "AR BR BB /  " TO BIG-CODES.
           PERFORM CHECK-SLASHES THRU CHECK-SLASHES-EXIT. 
           MOVE VAL-AREA TO MD-A-LOG. 
           GO TO CAT-MVC-MSG-CHG. 
       MD-DEL-LOG.
           IF MD-A-LOG EQUAL SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO MD-A-LOG. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    MDINFO - PFN 
      * 
       MD-EDIT-PFN. 
           IF FIELD-ID NOT EQUAL TO 50
               GO TO FLD-ERR. 
           MOVE MD-A-PFN TO OLD-VALUE.
           IF VAL (1) EQUAL "$" 
               GO TO MD-DEL-PFN.
           MOVE VAL-AREA TO MD-A-PFN. 
           GO TO CAT-MVC-MSG-CHG. 
       MD-DEL-PFN.
           IF MD-A-PFN EQUAL SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO MD-A-PFN. 
           GO TO CAT-MVC-MSG-DEL. 
      ***************************************************** 
      *    AREAKEYS CATEGORY
      ***************************************************** 
       AREAKEYS-A-EDIT. 
           IF CAT-ID NOT EQUAL TO 500 
               GO TO CAT-ERR. 
      * 
      *    AK - KEY NAME
      * 
       AK-EDIT-KNAME. 
           IF FIELD-ID NOT EQUAL TO 05
               GO TO AK-EDIT-KALIAS.
           MOVE AK-A-KEYNAME TO OLD-VALUE.
           IF VAL (1) EQUAL TO "$"
               GO TO AK-DEL-KNAME.
           PERFORM CK-CATNAME THRU CK-CATNAME-XIT.
           PERFORM CHANGE-DELETE THRU CHANGE-DELETE-EXIT. 
           MOVE "K" TO AK-A-LINETYPE. 
           MOVE VAL-AREA TO AK-A-KEYNAME SAVE-NAME. 
           PERFORM SET-REL-TABLE THRU SET-REL-TABLE-EXIT. 
           GO TO CAT-MVC-MSG-CHG. 
       AK-DEL-KNAME.
           IF AK-A-KEYNAME EQUAL TO SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           PERFORM FIELD-DELETE THRU FIELD-DELETE-EXIT. 
           MOVE SPACES TO AK-A-KEYNAME. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    AK - KEY ALIAS 
      * 
       AK-EDIT-KALIAS.
           IF FIELD-ID NOT EQUAL TO 10
               GO TO AK-EDIT-KQUAL. 
           MOVE AK-A-KEY-ALIAS TO OLD-VALUE.
           IF VAL (1) EQUAL TO "$"
               GO TO AK-DEL-KQUAL.
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO AK-A-KEY-ALIAS. 
           MOVE "K" TO AK-A-LINETYPE. 
           GO TO CAT-MVC-MSG-CHG. 
       AK-DEL-KALIAS. 
           IF AK-A-KEY-ALIAS EQUAL TO SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO AK-A-KEY-ALIAS. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    AK - KEY QUAL
      * 
       AK-EDIT-KQUAL. 
           IF FIELD-ID NOT EQUAL TO 13
               GO TO AK-EDIT-KTYPE. 
           MOVE AK-A-KEY-QUAL TO OLD-VALUE. 
           IF VAL (1) EQUAL TO "$"
               GO TO AK-DEL-KQUAL.
           PERFORM CK-CATNAME THRU CK-CATNAME-XIT.
           PERFORM CHANGE-DELETE THRU CHANGE-DELETE-EXIT. 
           MOVE VAL-AREA TO AK-A-KEY-QUAL SAVE-NAME.
           PERFORM SET-REL-TABLE THRU SET-REL-TABLE-EXIT. 
           MOVE "K" TO AK-A-LINETYPE. 
           GO TO CAT-MVC-MSG-CHG. 
       AK-DEL-KQUAL.
           IF AK-A-KEY-QUAL EQUAL TO SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO AK-A-KEY-QUAL.
           PERFORM FIELD-DELETE THRU FIELD-DELETE-EXIT. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    AK - KEY TYPE
      * 
       AK-EDIT-KTYPE. 
           IF FIELD-ID NOT EQUAL TO 15
               GO TO AK-EDIT-DUPES. 
           MOVE AK-A-KEY-TYPE TO OLD-VALUE. 
           IF VAL (1) EQUAL TO "$"
               GO TO AK-DEL-KTYPE.
           IF VAL (1) NOT EQUAL TO "A" AND "P"
               MOVE "A  P  /  " TO BIG-CODES
               MOVE "B" TO CODE-ERR-SW
               GO TO VALIDATION-ERROR.
           MOVE VAL-AREA TO AK-A-KEY-TYPE.
           MOVE "K" TO AK-A-LINETYPE. 
           GO TO CAT-MVC-MSG-CHG. 
       AK-DEL-KTYPE.
           IF AK-A-KEY-TYPE EQUAL TO SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO AK-A-KEY-TYPE.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    AK - KEY DUPES 
      * 
       AK-EDIT-DUPES. 
           IF FIELD-ID NOT EQUAL TO 20
               GO TO AK-EDIT-USING. 
           MOVE AK-A-KEY-DUPES TO OLD-VALUE.
           IF VAL (1) EQUAL TO "$"
               GO TO AK-DEL-DUPES.
           MOVE DUPES-CODES TO VALID-CODE-TABLE.
           PERFORM VALID-CODE THRU VALID-CODE-XIT.
           MOVE VAL-AREA TO AK-A-KEY-DUPES. 
           MOVE "K" TO AK-A-LINETYPE. 
           GO TO CAT-MVC-MSG-CHG. 
       AK-DEL-DUPES.
           IF AK-A-KEY-DUPES EQUAL TO SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO AK-A-KEY-DUPES. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    AK - KEY USING 
      * 
       AK-EDIT-USING. 
           IF FIELD-ID NOT EQUAL TO 25
               GO TO AK-EDIT-CNAME. 
           MOVE AK-A-KEY-USING TO OLD-VALUE.
           IF VAL (1) EQUAL TO "$"
               GO TO AK-DEL-USING.
           IF VAL (1) NOT EQUAL TO "Y" AND "N"
               MOVE "Y  N  /  " TO BIG-CODES
               MOVE "B" TO CODE-ERR-SW
               GO TO VALIDATION-ERROR.
           MOVE VAL-AREA TO AK-A-KEY-USING. 
           MOVE "K" TO AK-A-LINETYPE. 
           GO TO CAT-MVC-MSG-CHG. 
       AK-DEL-USING.
           IF AK-A-KEY-TYPE EQUAL TO SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO AK-A-KEY-TYPE.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    AK - CONCATENATED KEY ID 
      * 
       AK-EDIT-CNAME. 
           IF FIELD-ID NOT EQUAL TO 30
               GO TO AK-EDIT-CTYPE. 
           MOVE AK-A-CON-NAME TO OLD-VALUE. 
           IF VAL (1) EQUAL TO "$"
               GO TO AK-DEL-CNAME.
           MOVE VAL-AREA TO AK-A-CON-NAME.
           MOVE "C" TO AK-A-CON-LINETYPE. 
           GO TO CAT-MVC-MSG-CHG. 
       AK-DEL-CNAME.
           IF AK-A-CON-NAME EQUAL TO SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO AK-A-CON-NAME.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    AK - CONCATENATED KEY TYPE 
  
       AK-EDIT-CTYPE. 
           IF FIELD-ID NOT EQUAL TO 35
               GO TO AK-EDIT-CDUPES.
           MOVE AK-A-CON-TYPE TO OLD-VALUE. 
           IF VAL (1) EQUAL TO "$"
               GO TO AK-DEL-CTYPE.
           IF VAL (1) NOT EQUAL TO "A" AND "P"
               MOVE "A  P  /  " TO BIG-CODES
               MOVE "B" TO CODE-ERR-SW
               GO TO VALIDATION-ERROR.
           MOVE VAL-AREA TO AK-A-CON-TYPE.
           MOVE "C" TO AK-A-CON-LINETYPE. 
           GO TO CAT-MVC-MSG-CHG. 
       AK-DEL-CTYPE.
           IF AK-A-CON-TYPE EQUAL TO SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO AK-A-CON-TYPE.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    AK - CONCATENATED KEY DUPES
      * 
       AK-EDIT-CDUPES.
           IF FIELD-ID NOT EQUAL TO 40
               GO TO AK-EDIT-CUSING.
           MOVE AK-A-CON-DUPES TO OLD-VALUE.
           IF VAL (1) EQUAL TO "$"
               GO TO AK-DEL-CDUPES. 
           MOVE DUPES-CODES TO VALID-CODE-TABLE.
           PERFORM VALID-CODE THRU VALID-CODE-XIT.
           MOVE VAL-AREA TO AK-A-CON-DUPES. 
           MOVE "C" TO AK-A-CON-LINETYPE. 
           GO TO CAT-MVC-MSG-CHG. 
       AK-DEL-CDUPES. 
           IF AK-A-CON-DUPES EQUAL TO SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO AK-A-CON-DUPES. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    AK - CONCATENATED KEY USING
      * 
       AK-EDIT-CUSING.
           IF FIELD-ID NOT EQUAL TO 42
               GO TO AK-EDIT-CONID. 
           MOVE AK-A-CON-USING TO OLD-VALUE.
           IF VAL (1) EQUAL TO "$"
               GO TO AK-DEL-CUSING. 
           IF VAL (1) NOT EQUAL TO "Y" AND "N"
               MOVE "Y  N  /  " TO BIG-CODES
               MOVE "B" TO CODE-ERR-SW
               GO TO VALIDATION-ERROR.
           MOVE VAL-AREA TO AK-A-CON-USING. 
           MOVE "C" TO AK-A-CON-LINETYPE. 
           GO TO CAT-MVC-MSG-CHG. 
       AK-DEL-CUSING. 
           IF AK-A-CON-TYPE EQUAL TO SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO AK-A-CON-TYPE.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    AK -  CONCATENATED KEY ID
      * 
       AK-EDIT-CONID. 
           IF FIELD-ID NOT EQUAL TO 45
               GO TO AK-EDIT-CON-ALIAS. 
           MOVE AK-A-CON-ID TO OLD-VALUE. 
           IF VAL (1) EQUAL TO "$"
               GO TO AK-DEL-CONID.
           PERFORM CK-CATNAME THRU CK-CATNAME-XIT.
           PERFORM CHANGE-DELETE THRU CHANGE-DELETE-EXIT. 
           MOVE "I" TO AK-A-COMP-LINETYPE.
           MOVE VAL-AREA TO AK-A-CON-ID SAVE-NAME.
           PERFORM SET-REL-TABLE THRU SET-REL-TABLE-EXIT. 
           GO TO CAT-MVC-MSG-CHG. 
       AK-DEL-CONID.
           IF AK-A-CON-ID EQUAL TO SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           PERFORM FIELD-DELETE THRU FIELD-DELETE-EXIT. 
           MOVE SPACES TO AK-A-CON-ID.
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    AK - CONCAENATED KEY ALIAS 
      * 
       AK-EDIT-CON-ALIAS. 
           IF FIELD-ID NOT EQUAL TO 50
               GO TO AK-EDIT-CON-QUAL.
           MOVE AK-A-CON-ALIAS TO OLD-VALUE.
           IF VAL (1) EQUAL TO "$"
               GO TO AK-DEL-CON-ALIAS.
           PERFORM MOVE-NUM THRU VALID-NUM-XIT. 
           MOVE NUM-HOLD-X TO AK-A-CON-ALIAS. 
           MOVE "I" TO AK-A-COMP-LINETYPE.
           GO TO CAT-MVC-MSG-CHG. 
       AK-DEL-CON-ALIAS.
           IF AK-A-CON-ALIAS EQUAL TO SPACES
               GO TO CAT-MVC-MSG-ERR-DEL. 
           MOVE SPACES TO AK-A-CON-ALIAS. 
           GO TO CAT-MVC-MSG-DEL. 
      * 
      *    AK - CONCATENATED KEY QUALIFIER
      * 
       AK-EDIT-CON-QUAL.
           IF FIELD-ID NOT EQUAL TO 55
               GO TO FLD-ERR. 
           MOVE AK-A-CON-QUAL TO OLD-VALUE. 
           IF VAL (1) EQUAL TO "$"
               GO TO AK-DEL-CON-QUAL. 
           PERFORM CK-CATNAME THRU CK-CATNAME-XIT.
           PERFORM CHANGE-DELETE THRU CHANGE-DELETE-EXIT. 
           MOVE VAL-AREA TO AK-A-CON-QUAL SAVE-NAME.
           MOVE "I" TO AK-A-COMP-LINETYPE.
           PERFORM SET-REL-TABLE THRU SET-REL-TABLE-EXIT. 
           GO TO CAT-MVC-MSG-CHG. 
       AK-DEL-CON-QUAL. 
           IF AK-A-CON-QUAL EQUAL TO SPACES 
               GO TO CAT-MVC-MSG-ERR-DEL. 
           PERFORM FIELD-DELETE THRU FIELD-DELETE-EXIT. 
           MOVE SPACES TO AK-A-CON-QUAL.
           GO TO CAT-MVC-MSG-DEL. 
*CALL CPROCS
