*COMDECK DMSCONSCH
  
  
      ******************************************************************
      * 
      * CON-SCH-NBOND.
      * 
      * A NEW TYPE "N" BOND LINE IS INDICATED BY A NON-BLANK CON-NAME 
      * FIELD.
  
       CON-SCH-NBOND. 
  
      * FIND FIRST VALID LINE.  DIAGNOSE ANY PREVIOUS LINE WITHOUT
      * CON-NAME. 
           MOVE SPACES TO CONSOLID-LINE.
           PERFORM UNTIL DATA-RETURN-CODE NOT = ZERO
             OR CAT-LINE-TYPE NOT = "N" 
             OR CON-SCH-CON-NAME NOT = SPACES 
  
             MOVE IDX-710 TO MSG-IDX
             MOVE "SCHEMA-BOND-CONNAME" TO MSG-NAME 
             PERFORM ERROR-TYPE2 THRU ERROR-TYPE2-XIT 
  
             PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT 
             PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT 
           END-PERFORM
  
      * IF FOUND NO VALID LINE, EXIT. 
           IF DATA-RETURN-CODE NOT = ZERO 
             OR CAT-LINE-TYPE NOT = "N" 
           THEN 
             GO TO CON-SCH-NBOND-XIT
           END-IF 
  
       LOOP-SCH-NBOND.
  
      * SAVE ALL VALUES GIVEN IN THIS LINE. 
           IF CON-SCH-CON-NAME NOT = SPACES 
             MOVE CON-SCH-CON-NAME TO SCH-BOND-NAME.
           IF CON-SCH-CATNAME NOT = SPACES
             MOVE CON-SCH-CATNAME TO SCH-BOND-CNAME.
           IF CON-SCH-ALIAS NOT = SPACES
             MOVE CON-SCH-ALIAS TO SCH-BOND-ALIAS.
           IF CON-SCH-AOFREC NOT = SPACES 
             MOVE CON-SCH-AOFREC TO SCH-BOND-QUAL.
  
      * MOVE NEXT LINE INTO "CAT-WORK" -- CHECK IF EXTENSION OF PREVIOUS
      * LINE. 
           PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT.
           PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT.
           IF DATA-RETURN-CODE = ZERO 
             AND CAT-LINE-TYPE = "N"
             AND CON-SCH-CON-NAME = SPACES
           THEN 
             GO TO LOOP-SCH-NBOND 
           END-IF 
  
       CON-SCH-NBOND-XIT. 
           EXIT.
  
  
      ******************************************************************
      * 
      * CON-SCH-OBOND.
      * 
      * A NEW TYPE "O" BOND LINE IS INDICATED BY A NON-BLANK DEPENDS
      * FIELD.
  
       CON-SCH-OBOND. 
  
      * FIND FIRST VALID LINE.  DIAGNOSE ANY PREVIOUS LINE WITHOUT
      * DEPENDS.
           MOVE SPACES TO CONSOLID-LINE.
           PERFORM UNTIL DATA-RETURN-CODE NOT = ZERO
             OR CAT-LINE-TYPE NOT = "O" 
             OR CON-SCH-DEPEND NOT = SPACES 
  
             MOVE IDX-710 TO MSG-IDX
             MOVE "SCHEMA-BOND-DEPENDS" TO MSG-NAME 
             PERFORM ERROR-TYPE2 THRU ERROR-TYPE2-XIT 
  
             PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT 
             PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT 
           END-PERFORM
  
      * IF FOUND NO VALID LINE, EXIT. 
           IF DATA-RETURN-CODE NOT = ZERO 
             OR CAT-LINE-TYPE NOT = "O" 
           THEN 
             GO TO CON-SCH-OBOND-XIT
           END-IF 
  
       LOOP-SCH-OBOND.
  
      * SAVE ALL VALUES GIVEN IN THIS LINE. 
           IF CON-SCH-DEPEND NOT = SPACES 
             MOVE CON-SCH-DEPEND TO SCH-BOND-CNAME. 
           IF CON-SCH-DEP-ALIAS NOT = SPACES
             MOVE CON-SCH-DEP-ALIAS TO SCH-BOND-ALIAS.
           IF CON-SCH-DEP-BOFREC NOT = SPACES 
             MOVE CON-SCH-DEP-BOFREC TO SCH-BOND-QUAL.
  
      * MOVE NEXT LINE INTO "CAT-WORK" -- CHECK IF EXTENSION OF PREVIOUS
      * LINE. 
           PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT.
           PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT.
           IF DATA-RETURN-CODE = ZERO 
             AND CAT-LINE-TYPE = "O"
             AND CON-SCH-DEPEND = SPACES
           THEN 
             GO TO LOOP-SCH-OBOND 
           END-IF 
  
       CON-SCH-OBOND-XIT. 
           EXIT.
  
  
      ******************************************************************
      * 
      * CON-SCH-BJOIN.
      * 
      * A NEW TYPE "B" JOIN LINE IS INDICATED BY A NON-BLANK ID1 FIELD. 
  
       CON-SCH-BJOIN. 
  
      * FIND FIRST VALID LINE.  DIAGNOSE ANY PREVIOUS LINE WITHOUT ID1. 
           MOVE SPACES TO CONSOLID-LINE.
           PERFORM UNTIL DATA-RETURN-CODE NOT = ZERO
             OR CAT-LINE-TYPE NOT = "B" 
             OR JOIN-SCH-ID1 NOT = SPACES 
  
             MOVE IDX-710 TO MSG-IDX
             MOVE "SCHEMA-JOIN-ID1" TO MSG-NAME 
             PERFORM ERROR-TYPE2 THRU ERROR-TYPE2-XIT 
  
             PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT 
             PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT 
           END-PERFORM
  
      * IF FOUND NO VALID LINE, EXIT. 
           IF DATA-RETURN-CODE NOT = ZERO 
             OR CAT-LINE-TYPE NOT = "B" 
           THEN 
             GO TO CON-SCH-BJOIN-XIT
           END-IF 
  
       LOOP-SCH-BJOIN.
  
      * SAVE ALL VALUES GIVEN IN THIS LINE. 
           IF JOIN-SCH-ID1 NOT = SPACES 
             MOVE JOIN-SCH-ID1 TO SCH-JOIN-ID.
           IF JOIN-SCH-ALY-1 NOT = SPACES 
             MOVE JOIN-SCH-ALY-1 TO SCH-JOIN-ALIAS. 
           IF JOIN-SCH-ID1-SUB1 NOT = SPACES
             MOVE JOIN-SCH-ID1-SUB1 TO SCH-JOIN-SUB1. 
           IF JOIN-SCH-ID1-SUB2 NOT = SPACES
             MOVE JOIN-SCH-ID1-SUB2 TO SCH-JOIN-SUB2. 
           IF JOIN-SCH-ID1-SUB3 NOT = SPACES
             MOVE JOIN-SCH-ID1-SUB3 TO SCH-JOIN-SUB3. 
           IF JOIN-SCH-CQUAL1 NOT = SPACES
             MOVE JOIN-SCH-CQUAL1 TO SCH-JOIN-QUAL. 
  
      * MOVE NEXT LINE INTO "CAT-WORK" -- CHECK IF EXTENSION OF PREVIOUS
      * LINE. 
           PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT.
           PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT.
           IF DATA-RETURN-CODE = ZERO 
             AND CAT-LINE-TYPE = "B"
             AND JOIN-SCH-ID1 = SPACES
           THEN 
             GO TO LOOP-SCH-BJOIN 
           END-IF 
  
       CON-SCH-BJOIN-XIT. 
           EXIT.
  
  
      ******************************************************************
      * 
      * CON-SCH-CJOIN.
      * 
      * A NEW TYPE "C" JOIN LINE IS INDICATED BY A NON-BLANK ID2 FIELD. 
  
       CON-SCH-CJOIN. 
  
      * FIND FIRST VALID LINE.  DIAGNOSE ANY PREVIOUS LINE WITHOUT ID1. 
           MOVE SPACES TO CONSOLID-LINE.
           PERFORM UNTIL DATA-RETURN-CODE NOT = ZERO
             OR CAT-LINE-TYPE NOT = "C" 
             OR JOIN-SCH-ID2 NOT = SPACES 
  
             MOVE IDX-710 TO MSG-IDX
             MOVE "SCHEMA-JOIN-ID2" TO MSG-NAME 
             PERFORM ERROR-TYPE2 THRU ERROR-TYPE2-XIT 
  
             PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT 
             PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT 
           END-PERFORM
  
      * IF FOUND NO VALID LINE, EXIT. 
           IF DATA-RETURN-CODE NOT = ZERO 
             OR CAT-LINE-TYPE NOT = "C" 
           THEN 
             GO TO CON-SCH-CJOIN-XIT
           END-IF 
  
       LOOP-SCH-CJOIN.
  
      * SAVE ALL VALUES GIVEN IN THIS LINE. 
           IF JOIN-SCH-ID2 NOT = SPACES 
             MOVE JOIN-SCH-ID2 TO SCH-JOIN-ID.
           IF JOIN-SCH-ALY-2 NOT = SPACES 
             MOVE JOIN-SCH-ALY-2 TO SCH-JOIN-ALIAS. 
           IF JOIN-SCH-ID2-SUB1 NOT = SPACES
             MOVE JOIN-SCH-ID2-SUB1 TO SCH-JOIN-SUB1. 
           IF JOIN-SCH-ID2-SUB2 NOT = SPACES
             MOVE JOIN-SCH-ID2-SUB2 TO SCH-JOIN-SUB2. 
           IF JOIN-SCH-ID2-SUB3 NOT = SPACES
             MOVE JOIN-SCH-ID2-SUB3 TO SCH-JOIN-SUB3. 
           IF JOIN-SCH-DQUAL1 NOT = SPACES
             MOVE JOIN-SCH-DQUAL1 TO SCH-JOIN-QUAL. 
  
      * MOVE NEXT LINE INTO "CAT-WORK" -- CHECK IF EXTENSION OF PREVIOUS
      * LINE. 
           PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT.
           PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT.
           IF DATA-RETURN-CODE = ZERO 
             AND CAT-LINE-TYPE = "C"
             AND JOIN-SCH-ID2 = SPACES
           THEN 
             GO TO LOOP-SCH-CJOIN 
           END-IF 
  
       CON-SCH-CJOIN-XIT. 
           EXIT.
  
  
      ******************************************************************
      * 
      * CON-AREA-ATT. 
      * 
      * ALL AREA ATTRIBUTE LINES ARE COMBINED INTO ONE. 
  
       CON-AREA-ATT.
           MOVE SPACES TO CONSOLID-LINE.
           IF DATA-RETURN-CODE NOT = ZERO 
           THEN 
             GO TO CON-AREA-ATT-XIT 
           END-IF 
  
       LOOP-AREA-ATT. 
           IF ATTR-A-SEQ NOT = SPACES 
             MOVE ATTR-A-SEQ TO A-ATT-SEQ.
  
      * MOVE NEXT LINE INTO "CAT-WORK" -- CHECK IF EXTENSION OF PREVIOUS
      * LINE. 
           PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT.
           PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT.
           IF DATA-RETURN-CODE = ZERO 
           THEN 
             GO TO LOOP-AREA-ATT
           END-IF 
  
       CON-AREA-ATT-XIT.
           EXIT.
  
  
      ******************************************************************
      * 
      * CON-AREA-CKEY.
      * 
      * A NEW TYPE "C" AREAKEY LINE IS INDICATED BY A NON-BLANK KEY-ID
      * FIELD.
  
       CON-AREA-CKEY. 
  
      * FIND FIRST VALID LINE.  DIAGNOSE ANY PREVIOUS LINE WITHOUT
      * KEY-ID. 
           MOVE SPACES TO CONSOLID-LINE.
           PERFORM UNTIL DATA-RETURN-CODE NOT = ZERO
             OR CAT-LINE-TYPE NOT = "C" 
             OR AK-A-CON-NAME NOT = SPACES
  
             MOVE IDX-710 TO MSG-IDX
             MOVE "AREA-AREAKEY-CKEYID" TO MSG-NAME 
             PERFORM ERROR-TYPE2 THRU ERROR-TYPE2-XIT 
  
             PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT 
             PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT 
           END-PERFORM
  
      * IF FOUND NO VALID LINE, EXIT. 
           IF DATA-RETURN-CODE NOT = ZERO 
             OR CAT-LINE-TYPE NOT = "C" 
           THEN 
             GO TO CON-AREA-CKEY-XIT
           END-IF 
  
       LOOP-AREA-CKEY.
  
      * SAVE ALL VALUES GIVEN IN THIS LINE. 
           IF AK-A-CON-NAME NOT = SPACES
             MOVE AK-A-CON-NAME TO A-KEY-ID.
           IF AK-A-CON-TYPE NOT = SPACES
             MOVE AK-A-CON-TYPE TO A-KEY-CTYPE. 
           IF AK-A-CON-DUPES NOT = SPACES 
             MOVE AK-A-CON-DUPES TO A-KEY-CDUPES. 
           IF AK-A-CON-USING NOT = SPACES 
             MOVE AK-A-CON-USING TO A-KEY-CUSING. 
  
      * MOVE NEXT LINE INTO "CAT-WORK" -- CHECK IF EXTENSION OF PREVIOUS
      * LINE. 
           PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT.
           PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT.
           IF DATA-RETURN-CODE = ZERO 
             AND CAT-LINE-TYPE = "C"
             AND AK-A-CON-NAME = SPACES 
           THEN 
             GO TO LOOP-AREA-CKEY 
           END-IF 
  
       CON-AREA-CKEY-XIT. 
           EXIT.
  
  
      ******************************************************************
      * 
      * CON-AREA-IKEY.
      * 
      * A NEW TYPE "I" AREAKEY LINE IS INDICATED BY A NON-BLANK 
      * COMPONENT-NAME FIELD. 
  
       CON-AREA-IKEY. 
  
      * FIND FIRST VALID LINE.  DIAGNOSE ANY PREVIOUS LINE WITHOUT
      * COMPONENT-NAME. 
           MOVE SPACES TO CONSOLID-LINE.
           PERFORM UNTIL DATA-RETURN-CODE NOT = ZERO
             OR CAT-LINE-TYPE NOT = "I" 
             OR AK-A-CON-ID NOT = SPACES
  
             MOVE IDX-710 TO MSG-IDX
             MOVE "AREA-AREAKEY-CIDEN" TO MSG-NAME
             PERFORM ERROR-TYPE2 THRU ERROR-TYPE2-XIT 
  
             PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT 
             PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT 
           END-PERFORM
  
      * IF FOUND NO VALID LINE, EXIT. 
           IF DATA-RETURN-CODE NOT = ZERO 
             OR CAT-LINE-TYPE NOT = "I" 
           THEN 
             GO TO CON-AREA-IKEY-XIT
           END-IF 
  
       LOOP-AREA-IKEY.
  
      * SAVE ALL VALUES GIVEN IN THIS LINE. 
           IF AK-A-CON-ID NOT = SPACES
             MOVE AK-A-CON-ID TO A-KEY-COMPONENT. 
           IF AK-A-CON-ALIAS NOT = SPACES 
             MOVE AK-A-CON-ALIAS TO A-KEY-CALIAS. 
           IF AK-A-CON-QUAL NOT = SPACES
             MOVE AK-A-CON-QUAL TO A-KEY-CQUAL. 
  
      * MOVE NEXT LINE INTO "CAT-WORK" -- CHECK IF EXTENSION OF PREVIOUS
      * LINE. 
           PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT.
           PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT.
           IF DATA-RETURN-CODE = ZERO 
             AND CAT-LINE-TYPE = "I"
             AND AK-A-CON-ID = SPACES 
           THEN 
             GO TO LOOP-AREA-IKEY 
           END-IF 
  
       CON-AREA-IKEY-XIT. 
           EXIT.
  
  
      ******************************************************************
      * 
      * CON-AREA-KKEY.
      * 
      * A NEW TYPE "K" AREAKEY LINE IS INDICATED BY A NON-BLANK 
      * KEYNAME FIELD.
  
       CON-AREA-KKEY. 
  
      * FIND FIRST VALID LINE.  DIAGNOSE ANY PREVIOUS LINE WITHOUT
      * KEYNAME.
           MOVE SPACES TO CONSOLID-LINE.
           PERFORM UNTIL DATA-RETURN-CODE NOT = ZERO
             OR CAT-LINE-TYPE NOT = "K" 
             OR AK-A-KEYNAME NOT = SPACES 
  
             MOVE IDX-710 TO MSG-IDX
             MOVE "AREA-AREAKEY-KEYNAME" TO MSG-NAME
             PERFORM ERROR-TYPE2 THRU ERROR-TYPE2-XIT 
  
             PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT 
             PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT 
           END-PERFORM
  
      * IF FOUND NO VALID LINE, EXIT. 
           IF DATA-RETURN-CODE NOT = ZERO 
             OR CAT-LINE-TYPE NOT = "K" 
           THEN 
             GO TO CON-AREA-KKEY-XIT
           END-IF 
  
       LOOP-AREA-KKEY.
  
      * SAVE ALL VALUES GIVEN IN THIS LINE. 
           IF AK-A-KEYNAME NOT = SPACES 
             MOVE AK-A-KEYNAME TO A-KEY-KNAME.
           IF AK-A-KEY-ALIAS NOT = SPACES 
             MOVE AK-A-KEY-ALIAS TO A-KEY-ALIAS.
           IF AK-A-KEY-QUAL NOT = SPACES
             MOVE AK-A-KEY-QUAL TO A-KEY-QUAL.
           IF AK-A-KEY-TYPE NOT = SPACES
             MOVE AK-A-KEY-TYPE TO A-KEY-KTYPE. 
           IF AK-A-KEY-DUPES NOT = SPACES 
             MOVE AK-A-KEY-DUPES TO A-KEY-DUPES.
           IF AK-A-KEY-USING NOT = SPACES 
             MOVE AK-A-KEY-USING TO A-KEY-USING.
  
      * MOVE NEXT LINE INTO "CAT-WORK" -- CHECK IF EXTENSION OF PREVIOUS
      * LINE. 
           PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT.
           PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT.
           IF DATA-RETURN-CODE = ZERO 
             AND CAT-LINE-TYPE = "K"
             AND AK-A-KEYNAME = SPACES
           THEN 
             GO TO LOOP-AREA-KKEY 
           END-IF 
  
       CON-AREA-KKEY-XIT. 
           EXIT.
  
  
      ******************************************************************
      * 
      * CON-AREA-PPRO.
      * 
      * A NEW TYPE "P" AREA PROCESS LINE IS INDICATED BY A NON-BLANK
      * DBPROC FIELD. 
  
       CON-AREA-PPRO. 
  
      * FIND FIRST VALID LINE.  DIAGNOSE ANY PREVIOUS LINE WITHOUT
      * DBPROC. 
           MOVE SPACES TO CONSOLID-LINE.
           PERFORM UNTIL DATA-RETURN-CODE NOT = ZERO
             OR CAT-LINE-TYPE NOT = "P" 
             OR PROC-A-DBPROC NOT = SPACES
  
             MOVE IDX-710 TO MSG-IDX
             MOVE "AREA-PROCESS-DBPROC" TO MSG-NAME 
             PERFORM ERROR-TYPE2 THRU ERROR-TYPE2-XIT 
  
             PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT 
             PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT 
           END-PERFORM
  
      * IF FOUND NO VALID LINE, EXIT. 
           IF DATA-RETURN-CODE NOT = ZERO 
             OR CAT-LINE-TYPE NOT = "P" 
           THEN 
             GO TO CON-AREA-PPRO-XIT
           END-IF 
  
       LOOP-AREA-PPRO.
  
      * SAVE ALL VALUES GIVEN IN THIS LINE. 
           IF PROC-A-DBPROC NOT = SPACES
             MOVE PROC-A-DBPROC TO A-PRO-DBP. 
           IF PROC-A-TYPE NOT = SPACES
             MOVE PROC-A-TYPE TO A-PRO-PTYPE. 
           IF PROC-A-TIME NOT = SPACES
             MOVE PROC-A-TIME TO A-PRO-TIME.
           IF PROC-A-OPTION NOT = SPACES
             MOVE PROC-A-OPTION TO A-PRO-OPT. 
  
      * MOVE NEXT LINE INTO "CAT-WORK" -- CHECK IF EXTENSION OF PREVIOUS
      * LINE. 
           PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT.
           PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT.
           IF DATA-RETURN-CODE = ZERO 
             AND CAT-LINE-TYPE = "P"
             AND PROC-A-DBPROC = SPACES 
           THEN 
             GO TO LOOP-AREA-PPRO 
           END-IF 
  
       CON-AREA-PPRO-XIT. 
           EXIT.
  
  
      ******************************************************************
      * 
      * CON-AREA-RPRO.
      * 
      * A NEW TYPE "R" AREA PROCESS LINE IS INDICATED BY A NON-BLANK
      * CATNAME FIELD.
  
       CON-AREA-RPRO. 
  
      * FIND FIRST VALID LINE.  DIAGNOSE ANY PREVIOUS LINE WITHOUT
      * CATNAME.
           MOVE SPACES TO CONSOLID-LINE.
           PERFORM UNTIL DATA-RETURN-CODE NOT = ZERO
             OR CAT-LINE-TYPE NOT = "R" 
             OR PROC-A-RC-DATA NOT = SPACES 
  
             MOVE IDX-710 TO MSG-IDX
             MOVE "AREA-PROCESS-RCDATA" TO MSG-NAME 
             PERFORM ERROR-TYPE2 THRU ERROR-TYPE2-XIT 
  
             PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT 
             PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT 
           END-PERFORM
  
      * IF FOUND NO VALID LINE, EXIT. 
           IF DATA-RETURN-CODE NOT = ZERO 
             OR CAT-LINE-TYPE NOT = "R" 
           THEN 
             GO TO CON-AREA-RPRO-XIT
           END-IF 
  
       LOOP-AREA-RPRO.
  
      * SAVE ALL VALUES GIVEN IN THIS LINE. 
           IF PROC-A-RC-DATA NOT = SPACES 
             MOVE PROC-A-RC-DATA TO A-PRO-RCDATA. 
           IF PROC-A-RC-ALIAS NOT = SPACES
             MOVE PROC-A-RC-ALIAS TO A-PRO-ALIAS. 
           IF PROC-A-RC-QUAL NOT = SPACES 
             MOVE PROC-A-RC-QUAL TO A-PRO-QUAL. 
  
      * MOVE NEXT LINE INTO "CAT-WORK" -- CHECK IF EXTENSION OF PREVIOUS
      * LINE. 
           PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT.
           PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT.
           IF DATA-RETURN-CODE = ZERO 
             AND CAT-LINE-TYPE = "R"
             AND PROC-A-RC-DATA = SPACES
           THEN 
             GO TO LOOP-AREA-RPRO 
           END-IF 
  
       CON-AREA-RPRO-XIT. 
           EXIT.
  
  
      ******************************************************************
      * 
      * CON-REC-PRO.
      * 
      * A NEW RECORD PROCESS LINE IS INDICATED BY A NON-BLANK DBPROC
      * FIELD.
  
       CON-REC-PRO. 
  
      * FIND FIRST VALID LINE.  DIAGNOSE ANY PREVIOUS LINE WITHOUT
      * DBPROC. 
           MOVE SPACES TO CONSOLID-LINE.
           PERFORM UNTIL DATA-RETURN-CODE NOT = ZERO
             OR PROCESS-SR-DBPROC NOT = SPACES
  
             MOVE IDX-710 TO MSG-IDX
             MOVE "RECORD-PROCESS-DBPROC" TO MSG-NAME 
             PERFORM ERROR-TYPE2 THRU ERROR-TYPE2-XIT 
  
             PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT 
             PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT 
           END-PERFORM
  
      * IF FOUND NO VALID LINE, EXIT. 
           IF DATA-RETURN-CODE NOT = ZERO 
           THEN 
             GO TO CON-REC-PRO-XIT
           END-IF 
  
       LOOP-REC-PRO.
  
      * SAVE ALL VALUES GIVEN IN THIS LINE. 
           IF PROCESS-SR-DBPROC NOT = SPACES
             MOVE PROCESS-SR-DBPROC TO R-PRO-DBP. 
           IF PROCESS-SR-TYPE NOT = SPACES
             MOVE PROCESS-SR-TYPE TO R-PRO-PTYPE. 
           IF PROCESS-SR-TIME NOT = SPACES
             MOVE PROCESS-SR-TIME TO R-PRO-TIME.
           IF PROCESS-SR-OPTION NOT = SPACES
             MOVE PROCESS-SR-OPTION TO R-PRO-OPT. 
  
      * MOVE NEXT LINE INTO "CAT-WORK" -- CHECK IF EXTENSION OF PREVIOUS
      * LINE. 
           PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT.
           PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT.
           IF DATA-RETURN-CODE = ZERO 
             AND PROCESS-SR-DBPROC = SPACES 
           THEN 
             GO TO LOOP-REC-PRO 
           END-IF 
  
       CON-REC-PRO-XIT. 
           EXIT.
  
  
      ******************************************************************
      * 
      * CON-ELEM-PRO. 
      * 
      * A NEW ELEMENT PROCESS LINE IS INDICATED BY A NON-BLANK DBPROC 
      * FIELD.
  
       CON-ELEM-PRO.
  
      * FIND FIRST VALID LINE.  DIAGNOSE ANY PREVIOUS LINE WITHOUT
      * DBPROC. 
           MOVE SPACES TO CONSOLID-LINE.
           PERFORM UNTIL DATA-RETURN-CODE NOT = ZERO
             OR PROCESS-DBPROC NOT = SPACES 
  
             MOVE IDX-710 TO MSG-IDX
             MOVE "ELEMENT-PROCESS-DBPROC" TO MSG-NAME
             PERFORM ERROR-TYPE2 THRU ERROR-TYPE2-XIT 
  
             PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT 
             PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT 
           END-PERFORM
  
      * IF FOUND NO VALID LINE, EXIT. 
           IF DATA-RETURN-CODE NOT = ZERO 
           THEN 
             GO TO CON-ELEM-PRO-XIT 
           END-IF 
  
       LOOP-ELEM-PRO. 
  
      * SAVE ALL VALUES GIVEN IN THIS LINE. 
           IF PROCESS-DBPROC NOT = SPACES 
             MOVE PROCESS-DBPROC TO E-PRO-DBP.
           IF PROCESS-TYPE NOT = SPACES 
             MOVE PROCESS-TYPE TO E-PRO-PTYPE.
           IF PROCESS-TIME NOT = SPACES 
             MOVE PROCESS-TIME TO E-PRO-TIME. 
           IF PROCESS-OPTION NOT = SPACES 
             MOVE PROCESS-OPTION TO E-PRO-OPT.
  
      * MOVE NEXT LINE INTO "CAT-WORK" -- CHECK IF EXTENSION OF PREVIOUS
      * LINE. 
           PERFORM MOVE-NEXT-LINE THRU MOVE-NEXT-LINE-XIT.
           PERFORM CHECK-COMMENTS THRU CHECK-COMMENTS-XIT.
           IF DATA-RETURN-CODE = ZERO 
             AND PROCESS-DBPROC = SPACES
           THEN 
             GO TO LOOP-ELEM-PRO
           END-IF 
  
       CON-ELEM-PRO-XIT.
           EXIT.
