*DECK     DCRPT255
00001  IDENTIFICATION DIVISION.                                         04/25/78
       PROGRAM-ID. RPT255.
*CALL COPYRIGHT 
      *    THIS MODULE PRINTS A TASK FOR A $REPORT OR $FILE REQUEST 
      *    IN ADDITION IF A FILE HAS BEEN REQUESTED THIS MODULE FORMATS 
      *    RECORDS FOR TASKS. THE MODULE ALSO FORMATS INDEX REPORT
      *    DETAIL RECORDS.
      *    ENTRY TYPE 55 = TASK 
00011  ENVIRONMENT DIVISION.                                            DCRPT255
00012  CONFIGURATION SECTION.                                           DCRPT255
       SOURCE-COMPUTER. CYBER.
       OBJECT-COMPUTER. CYBER.
00015  INPUT-OUTPUT SECTION.                                            DCRPT255
00016  DATA DIVISION.                                                   DCRPT255
*CALL RPTCS 
*CALL     WRKSTG77                                                         CL**5
*CALL     MAST1WS                                                          CL**5
*CALL     TESTWACOM                                                        CL**5
*CALL     DCDWA55                                                          CL**5
00021  01  COMMON-RPTDATA.                                              DCRPT255
00022 *                                                                 DCRPT255
00023 *    THIS REFINES LINE FORMATS  FIELD VALUES, CODES AND WORK AREASDCRPT255
00024 *    WHICH ARE COMMON TO ALL ENTRY TYPES.                         DCRPT255
00025 ******************************************************************DCRPT255
00026 *    STANDARD CATEGORY RPT DETAIL LINES COMMON TO ALL ENTRY TYPES DCRPT255
00027 ******************************************************************DCRPT255
00028      03  00-CAT-DETAIL-LINES.                                     DCRPT255
00029 *    CONTROL CATEGORY                                             DCRPT255
00030          05  CAT00010-LINE.                                       DCRPT255
00031              07  FLD0001005-HDG  PICTURE X(11).                   DCRPT255
00032              07  FLD0001005-VAL  PICTURE X(32).                   DCRPT255
00033              07  FILLER          PICTURE X.                       DCRPT255
00034              07  FLD0001010-HDG  PICTURE X(7).                    DCRPT255
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.                       DCRPT255
00039              07  FLD0001015-HDG  PICTURE X(9).                    DCRPT255
00040              07  FLD0001015-VAL  PICTURE X.                       DCRPT255
00041 *    KEYWORD CATEGORY                                             DCRPT255
00042          05  CAT00020-LINE REDEFINES CAT00010-LINE.               DCRPT255
00043              07  FLD0002005-HDG  PICTURE X(3).                    DCRPT255
00044              07  FLD0002005-VAL PICTURE X(67).                       CL**2
00045 *    DESCRIPTION CATEGORY                                            CL**2
00046          05  CAT00030-LINE REDEFINES CAT00020-LINE.               DCRPT255
00047              07  FLD0003005-VAL  PICTURE X.                       DCRPT255
00048              07  FLD0003010-VAL  PICTURE X(66).                   DCRPT255
00049              07  FILLER          PICTURE X(3).                    DCRPT255
00050 *    OTHER CATEGORY                                               DCRPT255
00051          05  CAT00900-LINE  REDEFINES  CAT00030-LINE.                CL**2
00052              07  FLD0090005-VAL  PICTURE X.                       DCRPT255
00053              07  FLD0090010-VAL  PICTURE X(66).                   DCRPT255
00054              07  FILLER          PICTURE X(3).                    DCRPT255
00055 ******************************************************************DCRPT255
00056 *    STANDARD FIELD HEADING CONSTANTS FOR DETAIL LINES            DCRPT255
00057 *        COMMON TO ALL ENTRY TYPES                                DCRPT255
00058 ******************************************************************DCRPT255
00059      03  00-FIELD-HDG-CONSTANTS.                                  DCRPT255
00060          05  FLD0001005-HCONA    PICTURE X(11)  VALUE             DCRPT255
00061             "  ALIAS OF ".                                        DCRPT255
00062          05  FLD0001010-HCON     PICTURE X(7)   VALUE             DCRPT255
00063             "STATUS=".                                            DCRPT255
00064          05  FLD0001015-HCON     PICTURE X(9)   VALUE             DCRPT255
00065             "SECURITY=".                                          DCRPT255
00066          05  FLD0002005-HCON     PICTURE X(3)   VALUE             DCRPT255
00067             "   ".                                                   CL**2
00068          05  FLD0001005-HCONV    PICTURE X(11)  VALUE             DCRPT255
00069             "VERSION OF ".                                        DCRPT255
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(9)    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.                                             DCRPT255
00103          05  DATA-OPEN-SW PICTURE X.                                 CL**2
00104          05  HIT-WORK-REC.                                        DCRPT255
00105              07  HIT-WORK-NAME       PICTURE X(32).                  CL**2
00106              07  HIT-WORK-ENTTYPE    PICTURE XX.                     CL**2
00107          05  HIT-TBL-LIMIT       PICTURE   99    VALUE            DCRPT255
00108            25.                                                    DCRPT255
00109          05  HIT-TBL-LIMIT-PLUS1 PICTURE   99    VALUE            DCRPT255
00110              26.                                                  DCRPT255
00111          05  FRLINE-LIMIT        PICTURE 9(4).                    DCRPT255
00112          05  TOLINE-LIMIT        PICTURE 9(4).                    DCRPT255
00113          05  FORLINE-LIMIT       PICTURE 9(4).                    DCRPT255
00114          05  CATLINE-COUNTER     PICTURE 9(4).                    DCRPT255
00115          05  ENTRY-NAME          PICTURE X(32).                   DCRPT255
00116          05  ENTRY-TYPE-NO       PICTURE 99.                      DCRPT255
00117          05  ENTRY-TYPE-NAME     PICTURE X(8).                    DCRPT255
00118          05  CATEGORY-NUMBER     PICTURE XXX.                     DCRPT255
00119          05  CATEGORY-OUTPUT-SW  PICTURE X.                       DCRPT255
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.        DCRPT255
00125          05  SUB2                PICTURE   S99  COMP SYNC.        DCRPT255
00126          05  SUB3                PICTURE   S99  COMP SYNC.        DCRPT255
00127          05  SUB4                PICTURE   S99  COMP SYNC.        DCRPT255
00128          05  SUB5                PICTURE   S99  COMP SYNC.        DCRPT255
00129          05  SUB6                PICTURE   S99  COMP SYNC.        DCRPT255
00130          05  DISPLAY-LINE-LENGTH     PICTURE XXX VALUE "132".        CL**2
00131      03  QUERY-MESSAGES.                                          DCRPT255
00132          05  NO-LINES-MSG.                                        DCRPT255
00133              07  FILLER          PICTURE XX VALUE SPACES.         DCRPT255
00134              07  NLM             PICTURE X(55)   VALUE            DCRPT255
00135             "DCRPT-015-I * REQUESTED LINES NOT PRESENT FOR CATEGOR   CL**2
00136 -           "Y.".                                                 DCRPT255
00137          05  NO-CAT-MSG.                                          DCRPT255
00138              07  FILLER          PICTURE XX VALUE SPACES.         DCRPT255
00139              07  NC7             PICTURE X(45)   VALUE            DCRPT255
00140             "DCRPT-020-I * REQUESTED CATEGORY NOT DEFINED.".         CL**2
00141              07  FILLER          PICTURE X(9) VALUE SPACES.       DCRPT255
00142          05  NO-CATS-MSG.                                         DCRPT255
00143              07  FILLER          PICTURE XX VALUE SPACES.         DCRPT255
00144              07  NCPM            PICTURE X(47)   VALUE            DCRPT255
00145             "DCRPT-025-I * REQUESTED CATEGORIES NOT DEFINED.".       CL**2
00146              07  FILLER          PICTURE X(9)    VALUE SPACES.    DCRPT255
00153          05  LIST-LINE-MSG.                                       DCRPT255
00154              07 FILLER           PICTURE XX    VALUE SPACES.      DCRPT255
00155              07  LIST-LINE-NAME  PICTURE X(32).                   DCRPT255
00156              07  FILLER          PICTURE XX    VALUE SPACES.      DCRPT255
00157              07  LIST-LINE-ENTTYPE PICTURE X(8) VALUE                CL**2
00158             "TASK    ".                                              CL**2
00159              07  FILLER          PICTURE X(12) VALUE SPACES.      DCRPT255
*CALL     RPTDEF55                                                         CL**5
*CALL     QTBL2                                                            CL**2
*CALL     RPTWORK                                                          CL**2
00179                                                                    DCRPT25
00180  PROCEDURE DIVISION.                                                 CL**2
*CALL     CATRTS                                                           CL**2
00188 *                                                                 DCRPT255
00189 *    INITIALIZE LINE RETRIEVAL LIMITS FOR QUERY                   DCRPT255
00190 *                                                                 DCRPT255
00191  3400-INIT-LINELIMS.                                              DCRPT255
00192      IF QTBL-OUT-FRLINE EQUAL TO SPACES                           DCRPT255
00193          MOVE 0001 TO FRLINE-LIMIT                                DCRPT255
00194         ELSE                                                      DCRPT255
00195          MOVE QTBL-OUT-FRLINE TO FRLINE-LIMIT.                    DCRPT255
00196      IF QTBL-OUT-TOLINE EQUAL TO SPACES                           DCRPT255
00197          MOVE 9999 TO TOLINE-LIMIT                                DCRPT255
00198         ELSE                                                      DCRPT255
00199          MOVE QTBL-OUT-TOLINE TO TOLINE-LIMIT.                    DCRPT255
00200      IF QTBL-OUT-FORLINES EQUAL TO SPACES                         DCRPT255
00201          MOVE 9999 TO FORLINE-LIMIT                               DCRPT255
00202         ELSE                                                      DCRPT255
00203          MOVE QTBL-OUT-FORLINES TO FORLINE-LIMIT.                 DCRPT255
00204 *                                                                 DCRPT255
00205 *    DETERMINE IF SHOW IF FOR A CATEGORY OR SUPER CATEGORY        DCRPT255
00206 *                                                                 DCRPT255
00207      MOVE QTBL-OUT-CAT TO CATEGORY-NUMBER.                           CL**2
00208      MOVE HIT-WORK-NAME TO DATA-ENTRY-NAME.                       DCRPT255
00209      MOVE HIT-WORK-ENTTYPE TO DATA-ENTRY-TYPE.                    DCRPT255
00210      MOVE "N" TO CATEGORY-OUTPUT-SW.                              DCRPT255
00211      IF CATEGORY-NUMBER EQUAL TO "999"                            DCRPT255
00212          GO TO 3450-SHOW-ALL.                                     DCRPT255
00213      IF CATEGORY-NUMBER EQUAL TO "998"                               CL**2
00214          GO TO 3465-SHOW-COMP.                                       CL**2
00215      IF CATEGORY-NUMBER EQUAL TO "996"                            DCRPT255
00216          GO TO 3450-SHOW-ALL.                                     DCRPT255
00217      IF CATEGORY-NUMBER EQUAL TO "997"                            DCRPT255
00218          GO TO 3460-SHOW-CHAR.                                    DCRPT255
00219      IF CATEGORY-NUMBER EQUAL TO "995"                               CL**2
00220          GO TO 3467-SHOW-PERS.                                       CL**2
00221 *                                                                 DCRPT255
00222 *    SHOW ONE CATEGORY HE ASKED FOR                               DCRPT255
00223 *                                                                    CL**2
00224      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT255
00225      GO TO 1100-NEXT-OUTPUT.                                         CL**2
00226 *                                                                 DCRPT255
00227 *    SHOW ALL                                                     DCRPT255
00228 *                                                                 DCRPT255
00229  3450-SHOW-ALL.                                                   DCRPT255
00230      MOVE "010" TO CATEGORY-NUMBER.                               DCRPT255
00231      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT255
00232      MOVE "020" TO CATEGORY-NUMBER.                               DCRPT255
00233      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT255
00234 *                                                                    CL**2
00235  3460-SHOW-CHAR.                                                  DCRPT255
00236 *                                                                    CL**2
00237      MOVE "030" TO CATEGORY-NUMBER.                               DCRPT255
00238      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT255
00239      IF QTBL-OUT-CAT EQUAL TO "996"                               DCRPT255
00240          GO TO 3470-CHECK-SUPER.                                  DCRPT255
00241      MOVE "140" TO CATEGORY-NUMBER.                                  CL**2
00242      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT255
00243      MOVE "200" TO CATEGORY-NUMBER.                                  CL**2
00244      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT255
00245      MOVE "280" TO CATEGORY-NUMBER.                                  CL**2
00246      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.        CL**2
00247      MOVE "900" TO CATEGORY-NUMBER.                                  CL**2
00248      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCRPT255
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 *                                                                 DCRPT255
00266 *    CHECK TO SEE IF ANY OUTPUT FOR TASK.                            CL**2
00267 *                                                                 DCRPT255
00268  3470-CHECK-SUPER.                                                DCRPT255
00269      IF CATEGORY-OUTPUT-SW EQUAL TO "Y"                           DCRPT255
00270          GO TO 1100-NEXT-OUTPUT.                                     CL**2
00271  3475-NO-CATS.                                                    DCRPT255
00272      MOVE NO-CATS-MSG TO STD-RPT-MESSAGE.                         DCRPT255
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.                  DCRPT255
00276      GO TO 1100-NEXT-OUTPUT.                                         CL**2
00277                                                                    DCRPT25
00278 ******************************************************************DCRPT255
00279 *                                                                 DCRPT255
00280 *    DISPLAY CATEGORY                                             DCRPT255
00281 *        RETRIEVES LINES FOR SPECIFIED CATEGORY AND FORMATS       DCRPT255
00282 *        EITHER A 70, 80 OR 132 CHARACTER LINE                    DCRPT255
00283 *                                                                 DCRPT255
00284 ******************************************************************DCRPT255
00285  3500-DISPLAY-CATEGORY.                                           DCRPT255
00286      MOVE CATEGORY-NUMBER TO DATA-ENTRY-CAT.                      DCRPT255
00287      MOVE 0001 TO CATLINE-COUNTER.                                DCRPT255
00288      PERFORM READ-CATEGORY THRU READ-CATEGORY-XIT.                DCRPT255
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 *                                                                 DCRPT255
00298 *    CHECK IF FIRST CATEGORY LINE IS IN DESIRED RANGE             DCRPT255
00299 *        READ PAST LINES WITH NUMBERS LOWER THAN LOW LIMIT        DCRPT255
00300 *                                                                 DCRPT255
00301  3510-CK-1ST-LINE.                                                DCRPT255
00302      IF CAT-LINE LESS THAN FRLINE-LIMIT                           DCRPT255
00303          GO TO 3515-BYPASS-LINE.                                  DCRPT255
00304 *                                                                 DCRPT255
00305 *    RETRIEVE 1ST LINE OF CATEGORY                                DCRPT255
00306 *                                                                 DCRPT255
00307      IF CAT-LINE GREATER THAN TOLINE-LIMIT                        DCRPT255
00308          GO TO 3517-CK-SUPER-CAT.                                    CL**2
00309      GO TO 3520-OUTPUT-CATHDR.                                    DCRPT255
00310  3515-BYPASS-LINE.                                                DCRPT255
00311      PERFORM READ-NEXT-DATA THRU READ-NEXT-DATA-XIT.              DCRPT255
00312      IF DATA-RETURN-CODE EQUAL TO "0" OR "3"                      DCRPT255
00313          GO TO 3510-CK-1ST-LINE.                                  DCRPT255
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 *                                                                 DCRPT255
00319 *    LOOKUP AND OUTPUT CATEGORY HEADER LINE                       DCRPT255
00320 *                                                                 DCRPT255
00321  3520-OUTPUT-CATHDR.                                                 CL**2
00322      MOVE 1 TO SUB4.                                              DCRPT255
00323  3525-NEXT-CATNUM.                                                   CL**2
00324      IF ENT55-CATNUMS (SUB4) EQUAL TO CATEGORY-NUMBER                CL**2
00325          GO TO 3530-DISPLAY-HDG.                                  DCRPT255
00326      ADD 1 TO SUB4.                                               DCRPT255
00327      GO TO 3525-NEXT-CATNUM.                                      DCRPT255
00328  3530-DISPLAY-HDG.                                                DCRPT255
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 ENT55-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.                  DCRPT255
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.                              DCRPT255
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 SPACES TO USER-LINE200-REC.                                CL**2
00375      MOVE RTBL-HDR-REQNO TO USER-L200-REQNO.                         CL**2
00376      MOVE EXT-HOLD-CATNAME TO USER-L200-CNAME.                       CL**2
00377      MOVE EXT-HOLD-TYPE TO USER-L200-ENTTYPE.                        CL**2
00378      MOVE CATEGORY-NAME-ABBRV TO USER-L200-CAT.                      CL**2
00379      MOVE CAT-LENGTH    TO USER-L200-LENGTH.                         CL**2
00380      MOVE CAT-LINE      TO USER-L200-LINE.                           CL**2
00381      MOVE CAT-REV       TO USER-L200-REV.                            CL**2
00382      MOVE CAT-DETAIL    TO USER-L200-DATA.                           CL**2
00383      MOVE "U" TO CATTBL-FILE-TYPE.                                   CL**2
00384      IF CAT-LENGTH GREATER THAN 67                                   CL**2
00385      MOVE "5" TO USER-L200-RECTYPE                                   CL**2
00386          MOVE "5" TO CATTBL-RECORD-TYPE                              CL**2
00387      ELSE                                                            CL**2
00388      MOVE "4" TO USER-L200-RECTYPE                                   CL**2
00389          MOVE "4" TO CATTBL-RECORD-TYPE.                             CL**2
00390      PERFORM 0900-USERFILE-OUT THRU 0999-USERFILE-OUT-XIT.           CL**2
00391      IF RTBL-OPT-REPORT EQUAL "N"                                    CL**2
00392          GO TO 3700-GET-NEXT-LINE.                                   CL**2
00393 *                                                                 DCRPT255
00394 *    FORMAT CATEGORY DETAIL LINES                                 DCRPT255
00395 *        IF 70 CHR FORMAT PUT OUT LINE NO ON SEP LINE             DCRPT255
00396 *                                                                 DCRPT255
00397  3540-FMT-CAT-DETAIL.                                             DCRPT255
00398      IF RTBL-OPT-FORMAT EQUAL "D"                                    CL**2
00399          GO TO 3550-FMT-LINE-PREFIX.                                 CL**2
00400      IF RTBL-OPT-FORMAT EQUAL "S"                                    CL**2
00401          GO TO 3550-FMT-LINE-PREFIX.                              DCRPT255
00402      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT255
00403      GO TO 3560-FORMAT-REPORT.                                       CL**2
00404  3550-FMT-LINE-PREFIX.                                            DCRPT255
00405      IF CATEGORY-NUMBER NOT EQUAL TO "800"                           CL**2
00406          GO TO 3555-MOVE-LINE.                                       CL**2
00407      IF FIRST-REC-SW EQUAL TO "Y"                                    CL**2
00408          GO TO 3560-FORMAT-REPORT.                                   CL**2
00409  3555-MOVE-LINE.                                                     CL**2
00410      IF RTBL-OPT-FORMAT EQUAL "D"                                    CL**2
00411          MOVE 98765 TO STDRPT-REVNO                                  CL**2
00412          MOVE CAT-LINE TO STDRPT-LINE                                CL**2
00413          GO TO 3560-FORMAT-REPORT                                    CL**2
00414      ELSE                                                            CL**2
00415          MOVE CAT-REV TO STDRPT-REVNO                                CL**2
00416      MOVE CAT-LINE TO STDRPT-LINE.                                   CL**2
00417 *                                                                 DCRPT255
00418 *    CHECK FOR COMMENT LINE                                       DCRPT255
00419  3560-FORMAT-REPORT.                                                 CL**2
00420      IF CAT-COMMENT NOT EQUAL TO "*"                                 CL**2
00421          GO TO 3565-CATEGORY-CHECK.                                  CL**2
00422      IF CATEGORY-NUMBER EQUAL TO "800"                               CL**2
00423          GO TO 3565-CATEGORY-CHECK.                                  CL**2
00424      PERFORM 5300-FMT-CAT030 THRU 5399-FMT-CAT030-XIT.               CL**2
00425      GO TO 3700-GET-NEXT-LINE.                                       CL**2
00426 *                                                                 DCRPT255
00427 *    CHECK FOR CATEGORY NUMBERS AND ENTER FORMATTING RT           DCRPT255
00428  3565-CATEGORY-CHECK.                                                CL**2
00429      IF CATEGORY-NUMBER EQUAL TO "010"                            DCRPT255
00430          PERFORM 5100-FMT-CAT010 THRU 5199-FMT-CAT010-XIT         DCRPT255
00431      GO TO 3700-GET-NEXT-LINE.                                       CL**2
00432      IF CATEGORY-NUMBER EQUAL TO "020"                            DCRPT255
00433          PERFORM 5200-FMT-CAT020 THRU 5299-FMT-CAT020-XIT         DCRPT255
00434      GO TO 3700-GET-NEXT-LINE.                                       CL**2
00435      IF CATEGORY-NUMBER EQUAL TO "030"                            DCRPT255
00436          PERFORM 5300-FMT-CAT030 THRU 5399-FMT-CAT030-XIT         DCRPT255
00437          GO TO 3700-GET-NEXT-LINE.                                DCRPT255
00438      IF CATEGORY-NUMBER EQUAL TO "140"                               CL**2
00439          PERFORM 25000-FMT-CAT-140 THRU 25099-FMT-CAT140-XIT         CL**2
00440          GO TO 3700-GET-NEXT-LINE.                                DCRPT255
00441      IF CATEGORY-NUMBER EQUAL TO "200"                               CL**2
00442          PERFORM 25200-FMT-CAT-200 THRU 25299-FMT-CAT200-XIT         CL**2
00443          GO TO 3700-GET-NEXT-LINE.                                DCRPT255
00444      IF CATEGORY-NUMBER EQUAL TO "280"                               CL**2
00445          PERFORM 25600-FMT-CAT280 THRU 25699-FMT-CAT280-XIT          CL**2
00446          GO TO 3700-GET-NEXT-LINE.                                DCRPT255
00447      IF CATEGORY-NUMBER EQUAL TO "800"                               CL**2
00448          PERFORM 25800-FMT-CAT800 THRU 25899-FMT-CAT800-XIT          CL**2
00449          GO TO 3700-GET-NEXT-LINE.                                DCRPT255
00450      IF CATEGORY-NUMBER EQUAL TO "900"                            DCRPT255
00451          PERFORM 5900-FMT-CAT900 THRU 5999-FMT-CAT900-XIT         DCRPT255
00452          GO TO 3700-GET-NEXT-LINE.                                DCRPT255
00453          GO TO 3710-NOCAT-DATA.                                      CL**2
00454 *                                                                 DCRPT255
00455 *    RETRIEVE NEXT LINE OF CATEGORY - CK FOR END                  DCRPT255
00456 *                                                                 DCRPT255
00457  3700-GET-NEXT-LINE.                                              DCRPT255
00458      IF CATLINE-COUNTER EQUAL TO FORLINE-LIMIT                    DCRPT255
00459        GO TO 3749-DISPLAY-CAT-XIT.                                DCRPT255
00460      PERFORM READ-NEXT-DATA THRU READ-NEXT-DATA-XIT.              DCRPT255
00461      IF DATA-RETURN-CODE EQUAL TO  1 OR 2                         DCRPT255
00462          GO TO 3749-DISPLAY-CAT-XIT.                              DCRPT255
00463      IF CAT-LINE GREATER THAN TOLINE-LIMIT                        DCRPT255
00464          GO TO 3749-DISPLAY-CAT-XIT.                              DCRPT255
00465      ADD 1 TO CATLINE-COUNTER.                                       CL**2
00466      GO TO 3532-FMT-FILE-DETAIL.                                     CL**2
00467  3749-DISPLAY-CAT-XIT.                                            DCRPT255
00468      EXIT.                                                        DCRPT255
00469                                                                    DCRPT25
00470 *                                                                 DCRPT255
00471 *   FORMAT WARNING AND INFORMATION MESSAGES                       DCRPT255
00472 *                                                                 DCRPT255
00473  3710-NOCAT-DATA.                                                 DCRPT255
00474      MOVE NO-CAT-MSG   TO        STD-RPT-MESSAGE.                 DCRPT255
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.                  DCRPT255
00478      GO TO 1100-NEXT-OUTPUT.                                         CL**2
00479  3715-NOCAT-LINE.                                                 DCRPT255
00480      MOVE NO-LINES-MSG  TO       STD-RPT-MESSAGE.                 DCRPT255
00481      IF RTBL-OPT-FORMAT EQUAL "D"                                    CL**2
00482          MOVE "Y" TO CATEGORY-811-SW.                                CL**2
00483      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT255
00484      GO TO 1100-NEXT-OUTPUT.                                         CL**2
00485                                                                    DCRPT25
00486  3800-NOMORE-HITS.                                                DCRPT255
00487 *                                                                 DCRPT255
00488 *    ON-LINE VERSION WILL DETERMINE NEXT STEP HERE                DCRPT255
00489 *                                                                 DCRPT255
00490      GO TO 1500-REPORT-END.                                          CL**2
00491                                                                    DCRPT25
00492 ***************************************************************** DCRPT255
00493 *                                                                 DCRPT255
00494 *    FORMAT CATEGORY 010 DETAIL LINE                              DCRPT255
00495 *        CATEGORY 010 = CONTROL                                   DCRPT255
00496 *                                                                 DCRPT255
00497 ***************************************************************** DCRPT255
00498  5100-FMT-CAT010.                                                 DCRPT255
00499      MOVE SPACES TO CAT00010-LINE.                                DCRPT255
00500 *                                                                 DCRPT255
00501 *    FORMAT ALIAS VERSION FIELD                                   DCRPT255
00502 *                                                                 DCRPT255
00503  5105-FMT-FLD05.                                                  DCRPT255
00504      IF CTL-ALY-VER EQUAL TO SPACES GO TO 5110-FMT-FLD010.        DCRPT255
00505      IF DATA-ENTRY-TYPE GREATER THAN 15                           DCRPT255
00506          MOVE FLD0001005-HCONV TO FLD0001005-HDG                  DCRPT255
00507       ELSE                                                        DCRPT255
00508          MOVE FLD0001005-HCONA TO FLD0001005-HDG.                 DCRPT255
00509      MOVE CTL-ALY-VER TO FLD0001005-VAL.                          DCRPT255
00510 *                                                                 DCRPT255
00511 *     FORMAT STATUS FIELD                                         DCRPT255
00512 *                                                                 DCRPT255
00513  5110-FMT-FLD010.                                                 DCRPT255
00514      IF CTL-STATUS EQUAL TO SPACES GO TO 5115-FMT-FLD015.         DCRPT255
00515      MOVE FLD0001010-HCON TO FLD0001010-HDG.                      DCRPT255
00516          GO TO 5112-INTERPRET-CODE.                                  CL**2
00517  5111-JUST-CODE.                                                     CL**2
00518      MOVE CTL-STATUS TO FLD0001010-POS1.                             CL**2
00519      GO TO 5115-FMT-FLD015.                                          CL**2
00520  5112-INTERPRET-CODE.                                                CL**2
00521      MOVE 01 TO SUB3.                                                CL**2
00522  5113-NEXT-CODE-CK.                                                  CL**2
00523      IF FLD0001010-CODES  (SUB3) EQUAL TO "9"                        CL**2
00524          GO TO 5111-JUST-CODE.                                       CL**2
00525      IF FLD0001010-CODES (SUB3) EQUAL TO CTL-STATUS                  CL**2
00526          GO TO 5114-EXTRACT-MNG.                                     CL**2
00527      ADD 1 TO SUB3.                                                  CL**2
00528      GO TO 5113-NEXT-CODE-CK.                                        CL**2
00529  5114-EXTRACT-MNG.                                                   CL**2
00530      MOVE FLD0001010-MNG (SUB3) TO FLD0001010-VAL.                   CL**2
00531 *                                                                 DCRPT255
00532 *     FORMAT SECURITY FIELD                                       DCRPT255
00533 *                                                                 DCRPT255
00534  5115-FMT-FLD015.                                                 DCRPT255
00535      IF CTL-SECURITY EQUAL TO SPACES                              DCRPT255
00536          GO TO 5120-OUTPUT-LINE.                                     CL**2
00537      MOVE FLD0001015-HCON TO FLD0001015-HDG.                      DCRPT255
00538      MOVE CTL-SECURITY    TO FLD0001015-VAL.                      DCRPT255
00539 *                                                                 DCRPT255
00540 *     FORMATTING OF CATEGORY LINE COMPLETE                        DCRPT255
00541  5120-OUTPUT-LINE.                                                DCRPT255
00542      IF CAT00010-LINE EQUAL TO SPACES GO TO 5199-FMT-CAT010-XIT.  DCRPT255
00543      MOVE CAT00010-LINE TO STDRPT-70CHR.                          DCRPT255
00544      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT255
00545 *                                                                 DCRPT255
00546  5199-FMT-CAT010-XIT.                                             DCRPT255
00547      EXIT.                                                        DCRPT255
00548                                                                    DCRPT25
00549 ***************************************************************** DCRPT255
00550 *                                                                 DCRPT255
00551 *    FORMAT CATEGORY 020 LINE                                     DCRPT255
00552 *        CATEGORY 020 = KEYWORD                                   DCRPT255
00553 *                                                                 DCRPT255
00554 ***************************************************************** DCRPT255
00555  5200-FMT-CAT020.                                                 DCRPT255
00556      MOVE SPACES TO CAT00020-LINE.                                DCRPT255
00557 *                                                                 DCRPT255
00558 *    FORMAT KEYWORD FIELD                                         DCRPT255
00559 *                                                                 DCRPT255
00560  5205-FMT-FLD05.                                                  DCRPT255
00561      MOVE FLD0002005-HCON TO FLD0002005-HDG.                      DCRPT255
00562      MOVE KEY-WORDS TO FLD0002005-VAL.                            DCRPT255
00563 *                                                                 DCRPT255
00564 *    FORMATTING OF CATEGORY LINE COMPLETE                         DCRPT255
00565 *                                                                 DCRPT255
00566  5210-OUTPUT-LINE.                                                DCRPT255
00567      MOVE CAT00020-LINE TO STDRPT-70CHR.                          DCRPT255
00568      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT255
00569  5299-FMT-CAT020-XIT.                                             DCRPT255
00570      EXIT.                                                        DCRPT255
00571                                                                    DCRPT25
00572 ***************************************************************** DCRPT255
00573 *                                                                 DCRPT255
00574 *    FORMAT CATEGORY 030 LINE                                     DCRPT255
00575 *        CATEGORY 030 = DESCRIPTION                               DCRPT255
00576 *                                                                 DCRPT255
00577 ***************************************************************** DCRPT255
00578  5300-FMT-CAT030.                                                 DCRPT255
00579      MOVE SPACES TO CAT00030-LINE.                                   CL**2
00580      MOVE DESC-FLAG      TO FLD0003005-VAL.                       DCRPT255
00581      MOVE DESC-COMMENT TO FLD0003010-VAL.                            CL**2
00582      MOVE CAT00030-LINE  TO STDRPT-70CHR.                         DCRPT255
00583      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT255
00584  5399-FMT-CAT030-XIT.                                             DCRPT255
00585      EXIT.                                                        DCRPT255
00586                                                                    DCRPT25
00587 ***************************************************************** DCRPT255
00588 *                                                                 DCRPT255
00589 *    FORMAT CATEGORY 900 LINE                                     DCRPT255
00590 *        CATEGORY 900 = OTHER                                     DCRPT255
00591 ***************************************************************** DCRPT255
00592  5900-FMT-CAT900.                                                 DCRPT255
00593      MOVE SPACES TO CAT00900-LINE.                                   CL**2
00594      MOVE DESC-FLAG    TO FLD0090005-VAL.                            CL**2
00595      MOVE DESC-COMMENT TO FLD0090010-VAL.                            CL**2
00596  5910-OUTPUT-LINE.                                                DCRPT255
00597      MOVE CAT00900-LINE TO STDRPT-70CHR.                             CL**2
00598      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCRPT255
00599  5999-FMT-CAT900-XIT.                                             DCRPT255
00600      EXIT.                                                        DCRPT255
00601                                                                    DCRPT25
*CALL     RPTRT55                                                          CL**5
*CALL     DISPLAY2                                                         CL**2
*CALL     WRITELNI                                                         CL**2
00605  USER-ROUTINE.                                                       CL**2
00606      IF RTBL-OPT-FORMAT EQUAL "D"                                    CL**2
00607          MOVE SUB-HEAD-811 TO PRINT-DATA                             CL**2
00608          PERFORM WRITE-LINE THRU WRITE-LINE-XIT                      CL**2
00609          MOVE SUB-HEAD2-811 TO PRINT-DATA                            CL**2
00610      ELSE                                                            CL**2
00611          MOVE SUB-HEADING-LINE TO PRINT-DATA.                        CL**2
00612      ADD 2 TO LINE-CT.                                               CL**2
00613      PERFORM WRITE-LINE THRU WRITE-LINE-XIT.                         CL**2
00614      MOVE SPACES TO PRINT-DATA.                                      CL**2
00615      PERFORM WRITE-LINE THRU WRITE-LINE-XIT.                         CL**2
00616      IF SEC-PAGE-SW EQUAL TO "Y"                                     CL**2
00617          MOVE LIST-LINE-MSG TO CATA-NAME-LINE                        CL**2
00618          MOVE CONTINUATION-LINE TO PRINT-DATA                        CL**2
00619          MOVE 1 TO PRT-CTL                                           CL**2
00620          PERFORM WRITE-LINE THRU WRITE-LINE-XIT                      CL**2
00621          MOVE 1 TO PRT-CTL                                           CL**2
00622          MOVE STATEMENT-LINE TO PRINT-DATA                           CL**2
00623          PERFORM WRITE-LINE THRU WRITE-LINE-XIT.                     CL**2
00624      MOVE "Y" TO SEC-PAGE-SW.                                        CL**2
00625  USER-ROUTINE-XIT.                                                   CL**2
00626      EXIT.                                                           CL**2
*CALL     RPT811                                                           CL**2
00631                                                                    DCRPT25
*CALL     MAST1RFL                                                         CL**2
*CALL     MAST1RFC                                                         CL**5
*CALL     MAST1RNL                                                         CL**5
*CALL     MAST1EXT                                                         CL**5
*CALL     MAST1RDR                                                         CL**2
*CALL     MAST1ALG                                                         CL**5
