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