*DECK     DCRPT245
00001  IDENTIFICATION DIVISION.                                         04/25/78
       PROGRAM-ID. RPT245.
*CALL COPYRIGHT 
      *    THIS MODULE PRINTS A RESOURCE FOR A $REPORT OR $FILE REQUEST 
      *    IN ADDITION IF A FILE HAS BEEN REQUESTED THIS MODULE FORMATS 
      *    RECORDS FOR RESOURCES. THE MODULE ALSO FORMATS INDEX REPORT
      *    DETAIL RECORDS.
      *    ENTRY TYPE 45 = RESOURCE 
00011  ENVIRONMENT DIVISION.                                            DCRPT245
00012  CONFIGURATION SECTION.                                           DCRPT245
       SOURCE-COMPUTER. CYBER.
       OBJECT-COMPUTER. CYBER.
00015  INPUT-OUTPUT SECTION.                                            DCRPT245
00016  DATA DIVISION.                                                   DCRPT245
*CALL RPTCS 
*CALL     WRKSTG77                                                         CL**5
*CALL     MAST1WS                                                          CL**5
*CALL     TESTWACOM                                                        CL**5
*CALL     DCDWA45                                                          CL**5
00021  01  COMMON-RPTDATA.                                              DCRPT245
00022 *                                                                 DCRPT245
00023 *    THIS REFINES LINE FORMATS  FIELD VALUES, CODES AND WORK AREASDCRPT245
00024 *    WHICH ARE COMMON TO ALL ENTRY TYPES.                         DCRPT245
00025 ******************************************************************DCRPT245
00026 *    STANDARD CATEGORY RPT DETAIL LINES COMMON TO ALL ENTRY TYPES DCRPT245
00027 ******************************************************************DCRPT245
00028      03  00-CAT-DETAIL-LINES.                                     DCRPT245
00029 *    CONTROL CATEGORY                                             DCRPT245
00030          05  CAT00010-LINE.                                       DCRPT245
00031              07  FLD0001005-HDG  PICTURE X(11).                   DCRPT245
00032              07  FLD0001005-VAL  PICTURE X(32).                   DCRPT245
00033              07  FILLER          PICTURE X.                       DCRPT245
00034              07  FLD0001010-HDG  PICTURE X(7).                    DCRPT245
00035              07  FLD0001010-VAL.                                     CL**2
00036                  09  FLD0001010-POS1 PICTURE X.                      CL**2
00037                  09  FILLER          PICTURE X(7).                   CL**2
00038              07  FILLER          PICTURE X.                       DCRPT245
00039              07  FLD0001015-HDG  PICTURE X(9).                    DCRPT245
00040              07  FLD0001015-VAL  PICTURE X.                       DCRPT245
00041 *    KEYWORD CATEGORY                                             DCRPT245
00042          05  CAT00020-LINE REDEFINES CAT00010-LINE.               DCRPT245
00043              07  FLD0002005-HDG  PICTURE X(3).                    DCRPT245
00044              07  FLD0002005-VAL PICTURE X(67).                       CL**2
00045 *"   DESCRIPTION CATEGORY                                         DCRPT245
00046          05  CAT00030-LINE REDEFINES CAT00020-LINE.               DCRPT245
00047              07  FLD0003005-VAL  PICTURE X.                       DCRPT245
00048              07  FLD0003010-VAL  PICTURE X(66).                   DCRPT245
00049              07  FILLER          PICTURE X(3).                    DCRPT245
00050 *    OTHER CATEGORY                                               DCRPT245
00051          05  CAT00900-LINE REDEFINES CAT00020-LINE.               DCRPT245
00052              07  FLD0090005-VAL  PICTURE X.                       DCRPT245
00053              07  FLD0090010-VAL  PICTURE X(66).                   DCRPT245
00054              07  FILLER          PICTURE X(3).                    DCRPT245
00055 ******************************************************************DCRPT245
00056 *    STANDARD FIELD HEADING CONSTANTS FOR DETAIL LINES            DCRPT245
00057 *        COMMON TO ALL ENTRY TYPES                                DCRPT245
00058 ******************************************************************DCRPT245
00059      03  00-FIELD-HDG-CONSTANTS.                                  DCRPT245
00060          05  FLD0001005-HCONA    PICTURE X(11)  VALUE             DCRPT245
00061             "  ALIAS OF ".                                        DCRPT245
00062          05  FLD0001010-HCON     PICTURE X(7)   VALUE             DCRPT245
00063             "STATUS=".                                            DCRPT245
00064          05  FLD0001015-HCON     PICTURE X(9)   VALUE             DCRPT245
00065             "SECURITY=".                                          DCRPT245
00066          05  FLD0002005-HCON     PICTURE X(3)   VALUE             DCRPT245
00067             "   ".                                                   CL**2
00068          05  FLD0001005-HCONV    PICTURE X(11)  VALUE             DCRPT245
00069             "VERSION OF ".                                        DCRPT245
00070          05  SUB-HEADING-LINE.                                       CL**2
00071              07  FILLER          PICTURE X(14)   VALUE               CL**2
00072             "CATALOGUE NAME".                                        CL**2
00073              07  FILLER          PICTURE X(8)    VALUE SPACE.        CL**2
00074              07  FILLER          PICTURE X(8)    VALUE               CL**2
00075             "REV LINE".                                              CL**2
00076              07  FILLER          PICTURE X(5)    VALUE SPACE.        CL**2
00077              07  FILLER          PICTURE X(4)    VALUE               CL**2
00078             "TYPE".                                                  CL**2
00079              07  FILLER          PICTURE X(92)   VALUE SPACE.        CL**2
00080          05  CONTINUATION-LINE.                                      CL**2
00081              07  CATA-NAME-LINE  PICTURE X(56)   VALUE SPACE.        CL**2
00082              07  FILLER          PICTURE X(72)   VALUE SPACE.        CL**2
00083              07  STATEMENT-LINE.                                     CL**2
00084                  09  FILLER      PICTURE X(5)    VALUE SPACE.        CL**2
00085                  09  FILLER      PICTURE X(30)   VALUE               CL**2
00086                 "* CONTINUED FROM PREVIOUS PAGE".                    CL**2
00087                  09  FILLER      PICTURE X(97)   VALUE SPACE.        CL**2
00088 *********************************************************            CL**2
00089 *     FIELD CODES AND THEIR MEANINGS                                 CL**2
00090 *       COMMON TO ALL ENTRY TYPES-FOR COMMON CATS                    CL**2
00091 **********************************************************           CL**2
00092      03  00-CAT-CODES.                                               CL**2
00093 *  STATUS OF ENTRY                                                   CL**2
00094          05  FLD0001010-CV           PICTURE X(4)    VALUE           CL**2
00095         "EPO9".                                                      CL**2
00096          05  FLD0001010-CD  REDEFINES  FLD0001010-CV.                CL**2
00097              07  FLD0001010-CODES PICTURE X OCCURS 4.                CL**2
00098          05  FLD0001010-MV       PICTURE X(32)       VALUE           CL**2
00099         "EXISTINGPROPOSEDOBSOLETEXXXXXXXX".                          CL**2
00100          05  FLD0001010-MD  REDEFINES  FLD0001010-MV.                CL**2
00101              07  FLD0001010-MNG  PICTURE X(8) OCCURS 4.              CL**2
00102      03  WORK-FIELDS.                                             DCRPT245
00103          05  DATA-OPEN-SW PICTURE X.                                 CL**2
00104          05  HIT-WORK-REC.                                        DCRPT245
00105          07  HIT-WORK-NAME       PICTURE X(32).                   DCRPT245
00106          07  HIT-WORK-ENTTYPE    PICTURE XX.                      DCRPT245
00107          05  HIT-TBL-LIMIT       PICTURE   99    VALUE            DCRPT245
00108            25.                                                    DCRPT245
00109          05  HIT-TBL-LIMIT-PLUS1 PICTURE   99    VALUE            DCRPT245
00110              26.                                                  DCRPT245
00111          05  FRLINE-LIMIT        PICTURE 9(4).                    DCRPT245
00112          05  TOLINE-LIMIT        PICTURE 9(4).                    DCRPT245
00113          05  FORLINE-LIMIT       PICTURE 9(4).                    DCRPT245
00114          05  CATLINE-COUNTER     PICTURE 9(4).                    DCRPT245
00115          05  ENTRY-NAME          PICTURE X(32).                   DCRPT245
00116          05  ENTRY-TYPE-NO       PICTURE 99.                      DCRPT245
00117          05  ENTRY-TYPE-NAME     PICTURE X(8).                    DCRPT245
00118          05  CATEGORY-NUMBER     PICTURE XXX.                     DCRPT245
00119          05  CATEGORY-OUTPUT-SW  PICTURE X.                       DCRPT245
00120          05  1ST-HIT-OVER-SW  PICTURE X VALUE "X".                   CL**2
00121          05  HIT-COUNTER   PICTURE 9(5) VALUE 0.                     CL**2
00122          05  HITS-PER-RECORD  PICTURE 99 VALUE 91.                   CL**2
00123          05  CON-KEY          PICTURE S9(8) COMP SYNC.               CL**2
00124          05  SUB1                PICTURE   S99  COMP SYNC.        DCRPT245
00125          05  SUB2                PICTURE   S99  COMP SYNC.        DCRPT245
00126          05  SUB3                PICTURE   S99  COMP SYNC.        DCRPT245
00127          05  SUB4                PICTURE   S99  COMP SYNC.        DCRPT245
00128          05  SUB5                PICTURE   S99  COMP SYNC.        DCRPT245
00129          05  SUB6                PICTURE   S99  COMP SYNC.        DCRPT245
00130           05  DISPLAY-LINE-LENGTH PICTURE XXX VALUE "132".           CL**2
00131      03  QUERY-MESSAGES.                                          DCRPT245
00132          05  NO-LINES-MSG.                                        DCRPT245
00133              07  FILLER          PICTURE XX VALUE SPACES.         DCRPT245
00134              07  NLM             PICTURE X(55)   VALUE            DCRPT245
00135             "DCRPT-015-I * REQUESTED LINES NOT PRESENT FOR CATEGOR   CL**2
00136 -           "Y.".                                                 DCRPT245
00137          05  NO-CAT-MSG.                                          DCRPT245
00138              07  FILLER          PICTURE XX VALUE SPACES.         DCRPT245
00139              07  NC7             PICTURE X(45)   VALUE            DCRPT245
00140             "DCRPT-020-I * REQUESTED CATEGORY NOT DEFINED.".         CL**2
00141              07  FILLER          PICTURE X(9) VALUE SPACES.       DCRPT245
00142          05  NO-CATS-MSG.                                         DCRPT245
00143              07  FILLER          PICTURE XX VALUE SPACES.         DCRPT245
00144              07  NCPM            PICTURE X(47)   VALUE            DCRPT245
00145             "DCRPT-025-I * REQUESTED CATEGORIES NOT DEFINED.".       CL**2
00146              07  FILLER          PICTURE X(9)    VALUE SPACES.    DCRPT245
00153          05  LIST-LINE-MSG.                                       DCRPT245
00154              07 FILLER           PICTURE XX    VALUE SPACES.      DCRPT245
00155              07  LIST-LINE-NAME  PICTURE X(32).                   DCRPT245
00156              07  FILLER          PICTURE XX    VALUE SPACES.      DCRPT245
00157              07  LIST-LINE-ENTTYPE PICTURE X(8) VALUE                CL**2
00158             "EXTERNAL".                                              CL**2
00159              07  FILLER          PICTURE X(12) VALUE SPACES.      DCRPT245
*CALL     RPTDEF45                                                         CL**5
*CALL     QTBL2                                                            CL**2
*CALL     RPTWORK                                                          CL**2
00179                                                                    DCRPT24
00180  PROCEDURE DIVISION.                                                 CL**2
*CALL     CATRTS                                                           CL**2
00188 *                                                                 DCRPT245
00189 *    INITIALIZE LINE RETRIEVAL LIMITS FOR QUERY                   DCRPT245
00190 *                                                                 DCRPT245
00191  3400-INIT-LINELIMS.                                              DCRPT245
00192      IF QTBL-OUT-FRLINE EQUAL TO SPACES                           DCRPT245
00193          MOVE 0001 TO FRLINE-LIMIT                                DCRPT245
00194         ELSE                                                      DCRPT245
00195          MOVE QTBL-OUT-FRLINE TO FRLINE-LIMIT.                    DCRPT245
00196      IF QTBL-OUT-TOLINE EQUAL TO SPACES                           DCRPT245
00197          MOVE 9999 TO TOLINE-LIMIT                                DCRPT245
00198         ELSE                                                      DCRPT245
00199          MOVE QTBL-OUT-TOLINE TO TOLINE-LIMIT.                    DCRPT245
00200      IF QTBL-OUT-FORLINES EQUAL TO SPACES                         DCRPT245
00201          MOVE 9999 TO FORLINE-LIMIT                               DCRPT245
00202         ELSE                                                      DCRPT245
00203          MOVE QTBL-OUT-FORLINES TO FORLINE-LIMIT.                 DCRPT245
00204 *                                                                 DCRPT245
00205 *    DETERMINE IF SHOW IF FOR A CATEGORY OR SUPER CATEGORY        DCRPT245
00206 *                                                                 DCRPT245
00207      MOVE QTBL-OUT-CAT TO CATEGORY-NUMBER.                           CL**2
00208      MOVE HIT-WORK-NAME TO DATA-ENTRY-NAME.                       DCRPT245
00209      MOVE HIT-WORK-ENTTYPE TO DATA-ENTRY-TYPE.                    DCRPT245
00210      MOVE "N" TO CATEGORY-OUTPUT-SW.                              DCRPT245
00211      IF CATEGORY-NUMBER EQUAL TO "999"                            DCRPT245
00212          GO TO 3450-SHOW-ALL.                                     DCRPT245
00213      IF CATEGORY-NUMBER EQUAL TO "998"                               CL**2
00214          GO TO 3465-SHOW-COMP.                                       CL**2
00215      IF CATEGORY-NUMBER EQUAL TO "996"                            DCRPT245
00216          GO TO 3450-SHOW-ALL.                                     DCRPT245
00217      IF CATEGORY-NUMBER EQUAL TO "997"                            DCRPT245
00218          GO TO 3460-SHOW-CHAR.                                    DCRPT245
00219      IF CATEGORY-NUMBER EQUAL TO "995"                               CL**2
00220          GO TO 3467-SHOW-PERS.                                       CL**2
00221 *                                                                 DCRPT245
00222 *    SHOW ONE CATEGORY HE ASKED FOR                               DCRPT245
00223 *                                                                    CL**2
00224      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT245
00225      GO TO 1100-NEXT-OUTPUT.                                         CL**2
00226 *                                                                 DCRPT245
00227 *    SHOW ALL                                                     DCRPT245
00228 *                                                                 DCRPT245
00229  3450-SHOW-ALL.                                                   DCRPT245
00230      MOVE "010" TO CATEGORY-NUMBER.                               DCRPT245
00231      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT245
00232      MOVE "020" TO CATEGORY-NUMBER.                               DCRPT245
00233      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT245
00234 *                                                                    CL**2
00235  3460-SHOW-CHAR.                                                  DCRPT245
00236 *                                                                    CL**2
00237      MOVE "030" TO CATEGORY-NUMBER.                               DCRPT245
00238      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT245
00239      IF QTBL-OUT-CAT EQUAL TO "996"                               DCRPT245
00240          GO TO 3470-CHECK-SUPER.                                  DCRPT245
00241      MOVE "140" TO CATEGORY-NUMBER.                                  CL**2
00242      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT245
00243      MOVE "200" TO CATEGORY-NUMBER.                                  CL**2
00244      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT245
00245      MOVE "250" TO CATEGORY-NUMBER.                                  CL**2
00246      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT245
00247      MOVE "900" TO CATEGORY-NUMBER.                                  CL**2
00248      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT245
00249      IF QTBL-OUT-CAT EQUAL TO "997"                                  CL**2
00250          GO TO 3470-CHECK-SUPER.                                     CL**2
00251  3465-SHOW-COMP.                                                     CL**2
00252      IF QTBL-OUT-CAT EQUAL TO "999"                                  CL**2
00253          GO TO 3466-JUST-COMP.                                       CL**2
00254      MOVE "030" TO CATEGORY-NUMBER.                                  CL**2
00255      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.        CL**2
00256  3466-JUST-COMP.                                                     CL**2
00257      MOVE "800" TO CATEGORY-NUMBER.                                  CL**2
00258      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.        CL**2
00259      GO TO 3470-CHECK-SUPER.                                         CL**2
00260  3467-SHOW-PERS.                                                     CL**2
00261      MOVE "030" TO CATEGORY-NUMBER.                                  CL**2
00262      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.        CL**2
00263      MOVE "140" TO CATEGORY-NUMBER.                                  CL**2
00264      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.        CL**2
00265 *                                                                 DCRPT245
00266 *    CHECK TO SEE IF ANY OUTPUT FOR RESOURCE                         CL**2
00267 *                                                                 DCRPT245
00268  3470-CHECK-SUPER.                                                   CL**2
00269      IF CATEGORY-OUTPUT-SW EQUAL TO "Y"                           DCRPT245
00270          GO TO 1100-NEXT-OUTPUT.                                     CL**2
00271  3475-NO-CATS.                                                    DCRPT245
00272      MOVE NO-CATS-MSG TO STD-RPT-MESSAGE.                         DCRPT245
00273      IF RTBL-OPT-FORMAT EQUAL "D"                                    CL**2
00274          MOVE "Y" TO CATEGORY-811-SW.                                CL**2
00275      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT245
00276      GO TO 1100-NEXT-OUTPUT.                                         CL**2
00277                                                                    DCRPT24
00278 ******************************************************************DCRPT245
00279 *                                                                 DCRPT245
00280 *    DISPLAY CATEGORY                                             DCRPT245
00281 *        RETRIEVES LINES FOR SPECIFIED CATEGORY AND FORMATS       DCRPT245
00282 *        EITHER A 70, 80 OR 132 CHARACTER LINE                    DCRPT245
00283 *                                                                 DCRPT245
00284 ******************************************************************DCRPT245
00285  3500-DISPLAY-CATEGORY.                                           DCRPT245
00286      MOVE CATEGORY-NUMBER TO DATA-ENTRY-CAT.                      DCRPT245
00287      MOVE 0001 TO CATLINE-COUNTER.                                DCRPT245
00288      PERFORM READ-CATEGORY THRU READ-CATEGORY-XIT.                DCRPT245
00289      IF DATA-RETURN-CODE EQUAL TO "0"                                CL**2
00290          GO TO 3510-CK-1ST-LINE.                                     CL**2
00291 *                                                                    CL**2
00292 *    CHECK FOR SUPER CAT AND BYPASS MSG                              CL**2
00293 *                                                                    CL**2
00294      IF QTBL-OUT-CAT GREATER THAN 950                                CL**2
00295          GO TO 3749-DISPLAY-CAT-XIT.                                 CL**2
00296      GO TO 3715-NOCAT-LINE.                                          CL**2
00297 *                                                                 DCRPT245
00298 *    CHECK IF FIRST CATEGORY LINE IS IN DESIRED RANGE             DCRPT245
00299 *        READ PAST LINES WITH NUMBERS LOWER THAN LOW LIMIT        DCRPT245
00300 *                                                                 DCRPT245
00301  3510-CK-1ST-LINE.                                                DCRPT245
00302      IF CAT-LINE LESS THAN FRLINE-LIMIT                           DCRPT245
00303          GO TO 3515-BYPASS-LINE.                                  DCRPT245
00304 *                                                                 DCRPT245
00305 *    RETRIEVE 1ST LINE OF CATEGORY                                DCRPT245
00306 *                                                                 DCRPT245
00307      IF CAT-LINE GREATER THAN TOLINE-LIMIT                        DCRPT245
00308          GO TO 3517-CK-SUPER-CAT.                                    CL**2
00309      GO TO 3520-OUTPUT-CATHDR.                                    DCRPT245
00310  3515-BYPASS-LINE.                                                DCRPT245
00311      PERFORM READ-NEXT-DATA THRU READ-NEXT-DATA-XIT.              DCRPT245
00312      IF DATA-RETURN-CODE EQUAL TO "0" OR "3"                      DCRPT245
00313          GO TO 3510-CK-1ST-LINE.                                  DCRPT245
00314  3517-CK-SUPER-CAT.                                                  CL**2
00315      IF QTBL-OUT-CAT GREATER THAN 950                                CL**2
00316          GO TO 3749-DISPLAY-CAT-XIT.                                 CL**2
00317      GO TO 3715-NOCAT-LINE.                                          CL**2
00318 *                                                                 DCRPT245
00319 *    LOOKUP AND OUTPUT CATEGORY HEADER LINE                       DCRPT245
00320 *                                                                 DCRPT245
00321  3520-OUTPUT-CATHDR.                                              DCRPT245
00322      MOVE 1 TO SUB4.                                              DCRPT245
00323  3525-NEXT-CATNUM.                                                DCRPT245
00324      IF ENT45-CATNUMS (SUB4) EQUAL TO CATEGORY-NUMBER                CL**2
00325          GO TO 3530-DISPLAY-HDG.                                  DCRPT245
00326      ADD 1 TO SUB4.                                               DCRPT245
00327      GO TO 3525-NEXT-CATNUM.                                      DCRPT245
00328  3530-DISPLAY-HDG.                                                DCRPT245
00329      IF RTBL-OPT-REPORT EQUAL "N"                                    CL**2
00330          GO TO 3532-FMT-FILE-DETAIL.                                 CL**2
00331      MOVE SPACES TO STD-RPT-CATHDG.                                  CL**2
00332      MOVE ENT45-CATHDRS (SUB4) TO CATEGORY-HEADER.                   CL**2
00333      MOVE CATEGORY-HEADER TO CATEGORY-NAME-WORK.                     CL**2
00334      IF RTBL-OPT-FORMAT EQUAL "D"                                    CL**2
00335          MOVE "Y" TO CATEGORY-811-SW                                 CL**2
00336          MOVE CATEGORY-HEADER TO CAT-HEADER-811                      CL**2
00337          MOVE CATEGORY-HEADER-811 TO STD-REPORT-REC.                 CL**2
00338      MOVE 2 TO PRT-CTL.                                              CL**2
00339      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT245
00340      MOVE 1 TO PRT-CTL.                                              CL**2
00341      MOVE SPACES TO STD-RPT-CATHDG.                                  CL**2
00342      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                     CL**2
00343      MOVE "Y" TO CATEGORY-OUTPUT-SW.                              DCRPT245
00344 *****************************************************************    CL**2
00345 *                                                                    CL**2
00346 *     FORMAT$FILE REQUEST DETAIL RECORDS                             CL**2
00347 *          A RECORD IS FORMATTED FOR EACH SELECTED LINE              CL**2
00348 *                                                                    CL**2
00349 ***************************************************************      CL**2
00350  3532-FMT-FILE-DETAIL.                                               CL**2
00351      IF RTBL-HDR-REQTYPE EQUAL TO "RR" OR "RS" OR "RT"               CL**2
00352          GO TO 3540-FMT-CAT-DETAIL.                                  CL**2
00353 *                                                                    CL**2
00354 *     USE 1ST 3 CHRS OF CATEGORY HDG TO IDENTIFY OUTPUT CATEGORY     CL**2
00355 *                                                                    CL**2
00356      MOVE 1 TO HDG-SUB.                                              CL**2
00357 *     FIND THE FIRST DASH IN THE HDG                                 CL**2
00358  3534-FIND-DASH.                                                     CL**2
00359      IF CATEGORY-HDG-CHR (HDG-SUB) NOT EQUAL "-"                     CL**2
00360          ADD 1 TO HDG-SUB                                            CL**2
00361          GO TO 3534-FIND-DASH.                                       CL**2
00362  3536-BYPASS-DASH.                                                   CL**2
00363      IF CATEGORY-HDG-CHR (HDG-SUB) EQUAL TO "-"                      CL**2
00364          ADD 1 TO HDG-SUB                                            CL**2
00365          GO TO 3536-BYPASS-DASH.                                     CL**2
00366      MOVE CATEGORY-HDG-CHR (HDG-SUB) TO CATEGORY-ABB-CHR1.           CL**2
00367      ADD 1 TO HDG-SUB.                                               CL**2
00368      MOVE CATEGORY-HDG-CHR (HDG-SUB) TO CATEGORY-ABB-CHR2.           CL**2
00369      ADD 1 TO HDG-SUB.                                               CL**2
00370      MOVE CATEGORY-HDG-CHR (HDG-SUB) TO CATEGORY-ABB-CHR3.           CL**2
00371 *                                                                    CL**2
00372 *     FORMAT DETAIL RECORD                                           CL**2
00373 *                                                                    CL**2
00374      MOVE RTBL-HDR-REQNO TO USER-L200-REQNO.                         CL**2
00375      MOVE EXT-HOLD-CATNAME TO USER-L200-CNAME.                       CL**2
00376      MOVE EXT-HOLD-TYPE TO USER-L200-ENTTYPE.                        CL**2
00377      MOVE CATEGORY-NAME-ABBRV TO USER-L200-CAT.                      CL**2
00378      MOVE CAT-LENGTH    TO USER-L200-LENGTH.                         CL**2
00379      MOVE CAT-LINE      TO USER-L200-LINE.                           CL**2
00380      MOVE CAT-REV       TO USER-L200-REV.                            CL**2
00381      MOVE CAT-DETAIL    TO USER-L200-DATA.                           CL**2
00382      MOVE "U" TO CATTBL-FILE-TYPE.                                   CL**2
00383      IF CAT-LENGTH GREATER THAN 67                                   CL**2
00384      MOVE "5" TO USER-L200-RECTYPE                                   CL**2
00385          MOVE "5" TO CATTBL-RECORD-TYPE                              CL**2
00386      ELSE                                                            CL**2
00387      MOVE "4" TO USER-L200-RECTYPE                                   CL**2
00388          MOVE "4" TO CATTBL-RECORD-TYPE.                             CL**2
00389      PERFORM 0900-USERFILE-OUT THRU 0999-USERFILE-OUT-XIT.           CL**2
00390      IF RTBL-OPT-REPORT EQUAL "N"                                    CL**2
00391          GO TO 3700-GET-NEXT-LINE.                                   CL**2
00392 *                                                                 DCRPT245
00393 *    FORMAT CATEGORY DETAIL LINES                                 DCRPT245
00394 *        IF 70 CHR FORMAT PUT OUT LINE NO ON SEP LINE             DCRPT245
00395 *                                                                 DCRPT245
00396  3540-FMT-CAT-DETAIL.                                             DCRPT245
00397      IF RTBL-OPT-FORMAT EQUAL "S"                                    CL**2
00398          GO TO 3550-FMT-LINE-PREFIX.                              DCRPT245
00399      IF RTBL-OPT-FORMAT EQUAL "D"                                    CL**2
00400          GO TO 3550-FMT-LINE-PREFIX.                                 CL**2
00401      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT245
00402      GO TO 3560-FORMAT-REPORT.                                       CL**2
00403  3550-FMT-LINE-PREFIX.                                            DCRPT245
00404      IF CATEGORY-NUMBER NOT EQUAL TO "800"                           CL**2
00405          GO TO 3555-MOVE-LINE.                                       CL**2
00406      IF FIRST-REC-SW EQUAL TO "Y"                                    CL**2
00407          GO TO 3560-FORMAT-REPORT.                                   CL**2
00408  3555-MOVE-LINE.                                                     CL**2
00409      MOVE CAT-REV            TO  STDRPT-REVNO.                    DCRPT245
00410      MOVE CAT-LINE           TO  STDRPT-LINE.                     DCRPT245
00411 *                                                                 DCRPT245
00412 *    CHECK FOR COMMENT LINE                                       DCRPT245
00413  3560-FORMAT-REPORT.                                                 CL**2
00414      IF CAT-COMMENT NOT EQUAL TO "*"                                 CL**2
00415          GO TO 3565-CATEGORY-CHECK.                                  CL**2
00416      IF CATEGORY-NUMBER EQUAL TO "800"                               CL**2
00417          GO TO 3565-CATEGORY-CHECK.                                  CL**2
00418      PERFORM 5300-FMT-CAT030 THRU 5399-FMT-CAT030-XIT.               CL**2
00419      GO TO 3700-GET-NEXT-LINE.                                       CL**2
00420 *                                                                 DCRPT245
00421 *    CHECK FOR CATEGORY NUMBERS AND ENTER FORMATTING RT           DCRPT245
00422 *                                                                 DCRPT245
00423  3565-CATEGORY-CHECK.                                                CL**2
00424      IF CATEGORY-NUMBER EQUAL TO "010"                            DCRPT245
00425          PERFORM 5100-FMT-CAT010 THRU 5199-FMT-CAT010-XIT         DCRPT245
00426          GO TO 3700-GET-NEXT-LINE.                                DCRPT245
00427      IF CATEGORY-NUMBER EQUAL TO "020"                            DCRPT245
00428          PERFORM 5200-FMT-CAT020 THRU 5299-FMT-CAT020-XIT         DCRPT245
00429          GO TO 3700-GET-NEXT-LINE.                                DCRPT245
00430      IF CATEGORY-NUMBER EQUAL TO "030"                            DCRPT245
00431          PERFORM 5300-FMT-CAT030 THRU 5399-FMT-CAT030-XIT         DCRPT245
00432          GO TO 3700-GET-NEXT-LINE.                                DCRPT245
00433      IF CATEGORY-NUMBER EQUAL TO "140"                               CL**2
00434          PERFORM 22000-FMT-CAT-140 THRU 22099-FMT-CAT140-XIT         CL**2
00435          GO TO 3700-GET-NEXT-LINE.                                DCRPT245
00436      IF CATEGORY-NUMBER EQUAL TO "200"                               CL**2
00437          PERFORM 22200-FMT-CAT-200 THRU 22299-FMT-CAT200-XIT         CL**2
00438          GO TO 3700-GET-NEXT-LINE.                                DCRPT245
00439      IF CATEGORY-NUMBER EQUAL TO "250"                               CL**2
00440          PERFORM 22600-FMT-CAT-250 THRU 22699-FMT-CAT250-XIT         CL**2
00441          GO TO 3700-GET-NEXT-LINE.                                DCRPT245
00442      IF CATEGORY-NUMBER EQUAL TO "800"                               CL**2
00443          PERFORM 22800-FMT-CAT800 THRU 22899-FMT-CAT800-XIT          CL**2
00444          GO TO 3700-GET-NEXT-LINE.                                DCRPT245
00445      IF CATEGORY-NUMBER EQUAL TO "900"                               CL**2
00446          PERFORM 5900-FMT-CAT900 THRU 5999-FMT-CAT900-XIT            CL**2
00447      GO TO 3710-NOCAT-DATA.                                          CL**2
00448 *                                                                 DCRPT245
00449 *    RETRIEVE NEXT LINE OF CATEGORY - CK FOR END                  DCRPT245
00450 *                                                                 DCRPT245
00451  3700-GET-NEXT-LINE.                                              DCRPT245
00452      IF CATLINE-COUNTER EQUAL TO FORLINE-LIMIT                    DCRPT245
00453        GO TO 3749-DISPLAY-CAT-XIT.                                DCRPT245
00454      PERFORM READ-NEXT-DATA THRU READ-NEXT-DATA-XIT.              DCRPT245
00455      IF DATA-RETURN-CODE EQUAL TO  1 OR 2                         DCRPT245
00456          GO TO 3749-DISPLAY-CAT-XIT.                              DCRPT245
00457      IF CAT-LINE GREATER THAN TOLINE-LIMIT                        DCRPT245
00458          GO TO 3749-DISPLAY-CAT-XIT.                              DCRPT245
00459      ADD 1 TO CATLINE-COUNTER.                                       CL**2
00460      GO TO 3532-FMT-FILE-DETAIL.                                     CL**2
00461  3749-DISPLAY-CAT-XIT.                                            DCRPT245
00462      EXIT.                                                        DCRPT245
00463                                                                    DCRPT24
00464 *                                                                 DCRPT245
00465 *   FORMAT WARNING AND INFORMATION MESSAGES                       DCRPT245
00466 *                                                                 DCRPT245
00467  3710-NOCAT-DATA.                                                 DCRPT245
00468      MOVE NO-CAT-MSG   TO        STD-RPT-MESSAGE.                 DCRPT245
00469      IF RTBL-OPT-FORMAT EQUAL "D"                                    CL**2
00470          MOVE "Y" TO CATEGORY-811-SW.                                CL**2
00471      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT245
00472      GO TO 1100-NEXT-OUTPUT.                                         CL**2
00473  3715-NOCAT-LINE.                                                 DCRPT245
00474      MOVE NO-LINES-MSG  TO       STD-RPT-MESSAGE.                 DCRPT245
00475      IF RTBL-OPT-FORMAT EQUAL "D"                                    CL**2
00476          MOVE "Y" TO CATEGORY-811-SW.                                CL**2
00477      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT245
00478      GO TO 1100-NEXT-OUTPUT.                                         CL**2
00479                                                                    DCRPT24
00480  3800-NOMORE-HITS.                                                DCRPT245
00481 *                                                                 DCRPT245
00482 *    ON-LINE VERSION WILL DETERMINE NEXT STEP HERE                DCRPT245
00483 *                                                                 DCRPT245
00484      GO TO 1500-REPORT-END.                                          CL**2
00485                                                                    DCRPT24
00486 ***************************************************************** DCRPT245
00487 *                                                                 DCRPT245
00488 *    FORMAT CATEGORY 010 DETAIL LINE                              DCRPT245
00489 *        CATEGORY 010 = CONTROL                                   DCRPT245
00490 *                                                                 DCRPT245
00491 ***************************************************************** DCRPT245
00492  5100-FMT-CAT010.                                                 DCRPT245
00493      MOVE SPACES TO CAT00010-LINE.                                DCRPT245
00494 *                                                                 DCRPT245
00495 *    FORMAT ALIAS VERSION FIELD                                   DCRPT245
00496 *                                                                 DCRPT245
00497  5105-FMT-FLD05.                                                  DCRPT245
00498      IF CTL-ALY-VER EQUAL TO SPACES GO TO 5110-FMT-FLD010.        DCRPT245
00499      IF DATA-ENTRY-TYPE GREATER THAN 15                           DCRPT245
00500          MOVE FLD0001005-HCONV TO FLD0001005-HDG                  DCRPT245
00501       ELSE                                                        DCRPT245
00502          MOVE FLD0001005-HCONA TO FLD0001005-HDG.                 DCRPT245
00503      MOVE CTL-ALY-VER TO FLD0001005-VAL.                          DCRPT245
00504 *                                                                 DCRPT245
00505 *     FORMAT STATUS FIELD                                         DCRPT245
00506 *                                                                 DCRPT245
00507  5110-FMT-FLD010.                                                 DCRPT245
00508      IF CTL-STATUS EQUAL TO SPACES GO TO 5115-FMT-FLD015.         DCRPT245
00509      MOVE FLD0001010-HCON TO FLD0001010-HDG.                      DCRPT245
00510          GO TO 5112-INTERPRET-CODE.                                  CL**2
00511  5111-JUST-CODE.                                                     CL**2
00512      MOVE CTL-STATUS TO FLD0001010-POS1.                             CL**2
00513      GO TO 5115-FMT-FLD015.                                          CL**2
00514  5112-INTERPRET-CODE.                                                CL**2
00515      MOVE 01 TO SUB3.                                                CL**2
00516  5113-NEXT-CODE-CK.                                                  CL**2
00517      IF FLD0001010-CODES  (SUB3) EQUAL TO "9"                        CL**2
00518          GO TO 5111-JUST-CODE.                                       CL**2
00519      IF FLD0001010-CODES (SUB3) EQUAL TO CTL-STATUS                  CL**2
00520          GO TO 5114-EXTRACT-MNG.                                     CL**2
00521      ADD 1 TO SUB3.                                                  CL**2
00522      GO TO 5113-NEXT-CODE-CK.                                        CL**2
00523  5114-EXTRACT-MNG.                                                   CL**2
00524      MOVE FLD0001010-MNG (SUB3) TO FLD0001010-VAL.                   CL**2
00525 *                                                                 DCRPT245
00526 *     FORMAT SECURITY FIELD                                       DCRPT245
00527 *                                                                 DCRPT245
00528  5115-FMT-FLD015.                                                 DCRPT245
00529      IF CTL-SECURITY EQUAL TO SPACES                              DCRPT245
00530          GO TO 5120-OUTPUT-LINE.                                     CL**2
00531      MOVE FLD0001015-HCON TO FLD0001015-HDG.                      DCRPT245
00532      MOVE CTL-SECURITY    TO FLD0001015-VAL.                      DCRPT245
00533 *                                                                 DCRPT245
00534 *     FORMATTING OF CATEGORY LINE COMPLETE                        DCRPT245
00535  5120-OUTPUT-LINE.                                                DCRPT245
00536      IF CAT00010-LINE EQUAL TO SPACES GO TO 5199-FMT-CAT010-XIT.  DCRPT245
00537      MOVE CAT00010-LINE TO STDRPT-70CHR.                          DCRPT245
00538      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT245
00539 *                                                                 DCRPT245
00540  5199-FMT-CAT010-XIT.                                             DCRPT245
00541      EXIT.                                                        DCRPT245
00542                                                                    DCRPT24
00543 ***************************************************************** DCRPT245
00544 *                                                                 DCRPT245
00545 *    FORMAT CATEGORY 020 LINE                                     DCRPT245
00546 *        CATEGORY 020 = KEYWORD                                   DCRPT245
00547 *                                                                 DCRPT245
00548 ***************************************************************** DCRPT245
00549  5200-FMT-CAT020.                                                 DCRPT245
00550      MOVE SPACES TO CAT00020-LINE.                                DCRPT245
00551 *                                                                 DCRPT245
00552 *    FORMAT KEYWORD FIELD                                         DCRPT245
00553 *                                                                 DCRPT245
00554  5205-FMT-FLD05.                                                  DCRPT245
00555      MOVE FLD0002005-HCON TO FLD0002005-HDG.                      DCRPT245
00556      MOVE KEY-WORDS TO FLD0002005-VAL.                            DCRPT245
00557 *                                                                 DCRPT245
00558 *    FORMATTING OF CATEGORY LINE COMPLETE                         DCRPT245
00559 *                                                                 DCRPT245
00560  5210-OUTPUT-LINE.                                                DCRPT245
00561      MOVE CAT00020-LINE TO STDRPT-70CHR.                          DCRPT245
00562      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT245
00563  5299-FMT-CAT020-XIT.                                             DCRPT245
00564      EXIT.                                                        DCRPT245
00565                                                                    DCRPT24
00566 ***************************************************************** DCRPT245
00567 *                                                                 DCRPT245
00568 *    FORMAT CATEGORY 030 LINE                                     DCRPT245
00569 *        CATEGORY 030 = DESCRIPTION                               DCRPT245
00570 *                                                                 DCRPT245
00571 ***************************************************************** DCRPT245
00572  5300-FMT-CAT030.                                                 DCRPT245
00573      MOVE SPACES TO CAT00030-LINE.                                   CL**2
00574      MOVE DESC-FLAG      TO FLD0003005-VAL.                       DCRPT245
00575      MOVE DESC-COMMENT   TO FLD0003010-VAL.                       DCRPT245
00576  5310-OUTPUT-LINE.                                                DCRPT245
00577      MOVE CAT00030-LINE  TO STDRPT-70CHR.                         DCRPT245
00578      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT245
00579  5399-FMT-CAT030-XIT.                                             DCRPT245
00580      EXIT.                                                        DCRPT245
00581                                                                    DCRPT24
00582 ***************************************************************** DCRPT245
00583 *                                                                 DCRPT245
00584 *    FORMAT CATEGORY 900 LINE                                     DCRPT245
00585 *        CATEGORY 900 = OTHER                                     DCRPT245
00586 ***************************************************************** DCRPT245
00587  5900-FMT-CAT900.                                                 DCRPT245
00588      MOVE SPACES TO CAT00900-LINE.                                   CL**2
00589      MOVE DESC-FLAG    TO FLD0090005-VAL.                            CL**2
00590      MOVE DESC-COMMENT TO FLD0090010-VAL.                            CL**2
00591  5910-OUTPUT-LINE.                                                DCRPT245
00592      MOVE CAT00900-LINE TO STDRPT-70CHR.                             CL**2
00593      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT245
00594  5999-FMT-CAT900-XIT.                                             DCRPT245
00595      EXIT.                                                        DCRPT245
00596                                                                    DCRPT24
*CALL     RPTRT45                                                          CL**5
*CALL     DISPLAY2                                                         CL**2
*CALL     WRITELNI                                                         CL**2
00600  USER-ROUTINE.                                                       CL**2
00601      IF RTBL-OPT-FORMAT EQUAL "D"                                    CL**2
00602          MOVE SUB-HEAD-811 TO PRINT-DATA                             CL**2
00603          PERFORM WRITE-LINE THRU WRITE-LINE-XIT                      CL**2
00604          MOVE SUB-HEAD2-811 TO PRINT-DATA                            CL**2
00605      ELSE                                                            CL**2
00606      MOVE SUB-HEADING-LINE TO PRINT-DATA.                            CL**2
00607      ADD 2 TO LINE-CT.                                               CL**2
00608      PERFORM WRITE-LINE THRU WRITE-LINE-XIT.                         CL**2
00609      IF SEC-PAGE-SW EQUAL TO "Y"                                     CL**2
00610          MOVE LIST-LINE-MSG TO CATA-NAME-LINE                        CL**2
00611          MOVE CONTINUATION-LINE TO PRINT-DATA                        CL**2
00612          MOVE 1 TO PRT-CTL                                           CL**2
00613          PERFORM WRITE-LINE THRU WRITE-LINE-XIT                      CL**2
00614          MOVE 1 TO PRT-CTL                                           CL**2
00615          MOVE STATEMENT-LINE TO PRINT-DATA                           CL**2
00616      PERFORM WRITE-LINE THRU WRITE-LINE-XIT.                         CL**2
00617      MOVE "Y" TO SEC-PAGE-SW.                                        CL**2
00618  USER-ROUTINE-XIT.                                                   CL**2
00619      EXIT.                                                           CL**2
*CALL     RPT811                                                           CL**2
00624                                                                    DCRPT24
*CALL     MAST1RFL                                                         CL**2
*CALL     MAST1RFC                                                         CL**5
*CALL     MAST1RNL                                                         CL**5
*CALL     MAST1EXT                                                         CL**5
*CALL     MAST1RDR                                                         CL**2
*CALL     MAST1ALG                                                         CL**5
