*DECK     DCQRY205
00001  IDENTIFICATION DIVISION.                                         08/06/78
       PROGRAM-ID. QRY205.
*CALL COPYRIGHT 
      * 
      *    THIS SEGMENT FORMATS THE QUERY RESPONSE REPORT 
      *    FOR QUERIES ON ELEMENTS (ENTITY-ID = 05).
      * 
00009  ENVIRONMENT DIVISION.                                            DCQRY205
00010  CONFIGURATION SECTION.                                           DCQRY205
       SOURCE-COMPUTER. CYBER.
       OBJECT-COMPUTER. CYBER.
*CALL UPQRYSN 
00013  INPUT-OUTPUT SECTION.                                            DCQRY205
00014  FILE-CONTROL.                                                    DCQRY205
           SELECT MAST1 ASSIGN TO "MAST1" 
               ACCESS MODE IS RANDOM
               ORGANIZATION IS DIRECT 
               RECORD KEY IS DATA-KEY.
           SELECT MAST3 ASSIGN TO "MAST3" 
               ORGANIZATION IS RELATIVE 
               ACCESS MODE IS RANDOM
               RELATIVE KEY IS CON-KEY
               USE "PRUF = YES".
           SELECT SYSPRINT ASSIGN TO "OUTPUT".
00022  DATA DIVISION.                                                   DCQRY205
00023  FILE SECTION.                                                    DCQRY205
*CALL     MAST1FD                                                          CL**5
*CALL     MAST3FD                                                          CL**5
*CALL     SYSPRTFD                                                         CL**5
*CALL QRYCS 
*CALL     WRKSTG77                                                         CL**5
*CALL     MAST1WS                                                          CL**5
*CALL     TESTWACOM                                                        CL**5
*CALL     DCDWA05                                                          CL**5
*CALL RPTDEF05
00496                                                                    DCQRY20
00497  PROCEDURE DIVISION.                                                 CL**2
*CALL     DCQRYCOM                                                         CL**2
00501 *                                                                    CL**2
00502  3460-SHOW-CHAR.                                                  DCQRY205
00503 *                                                                    CL**2
00504      MOVE "030" TO CATEGORY-NUMBER.                               DCQRY205
00505      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCQRY205
00506      IF QTBL-OUT-CAT EQUAL TO "996" OR "998" OR "995"                CL**2
00507          GO TO 3470-CHECK-SUPER.                                  DCQRY205
00508      MOVE "100" TO CATEGORY-NUMBER.                               DCQRY205
00509      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCQRY205
00510      MOVE "110" TO CATEGORY-NUMBER.                               DCQRY205
00511      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCQRY205
00516      MOVE "200" TO CATEGORY-NUMBER.                               DCQRY205
00517      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCQRY205
00518      MOVE "210" TO CATEGORY-NUMBER.                                  CL**2
00519      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.        CL**2
00520      MOVE "211" TO CATEGORY-NUMBER.                               DCQRY205
00521      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.     DCQRY205
           MOVE "400" TO CATEGORY-NUMBER
           PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT. 
00522      MOVE "900" TO CATEGORY-NUMBER.                                  CL**2
00523      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.        CL**2
00524      IF QTBL-OUT-CAT EQUAL "997"                                     CL**2
00525          GO TO 3470-CHECK-SUPER.                                     CL**2
00526  3465-SHOW-COMP.                                                     CL**2
00527      IF QTBL-OUT-CAT EQUAL "999"                                     CL**2
00528          GO TO 3466-JUST-COMP.                                       CL**2
00529      MOVE "030" TO CATEGORY-NUMBER.                                  CL**2
00530      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.        CL**2
00531  3466-JUST-COMP.                                                     CL**2
00532      GO TO 3467-SHOW-PERS.                                           CL**2
00533  3467-SHOW-PERS.                                                     CL**2
00534      IF QTBL-OUT-CAT NOT EQUAL "995"                                 CL**2
00535          GO TO 3470-CHECK-SUPER.                                     CL**2
00536      MOVE "030" TO CATEGORY-NUMBER.                                  CL**2
00537      PERFORM 3500-DISPLAY-CATEGORY THRU 3749-DISPLAY-CAT-XIT.        CL**2
00538 *                                                                 DCQRY205
00539 *    CHECK TO SEE IF ANY OUTPUT FOR ENTYR                         DCQRY205
00540 *                                                                 DCQRY205
00541  3470-CHECK-SUPER.                                                DCQRY205
00542      IF CATEGORY-OUTPUT-SW EQUAL TO "Y"                           DCQRY205
00543          GO TO 3100-NEXT-HIT.                                     DCQRY205
00544  3475-NO-CATS.                                                       CL**2
00545      MOVE NO-CATS-MSG TO STD-RPT-MESSAGE.                         DCQRY205
00546      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCQRY205
00547      GO TO 3100-NEXT-HIT.                                         DCQRY205
00548                                                                    DCQRY20
00549 ******************************************************************DCQRY205
00550 *                                                                 DCQRY205
00551 *    DISPLAY CATEGORY                                             DCQRY205
00552 *        RETRIEVES LINES FOR SPECIFIED CATEGORY AND FORMATS       DCQRY205
00553 *        EITHER A 70, 80 OR 132 CHARACTER LINE                    DCQRY205
00554 *                                                                 DCQRY205
00555 ******************************************************************DCQRY205
00556  3500-DISPLAY-CATEGORY.                                           DCQRY205
00557      MOVE CATEGORY-NUMBER TO DATA-ENTRY-CAT.                      DCQRY205
00558      MOVE 0001 TO CATLINE-COUNTER.                                DCQRY205
00559      PERFORM READ-CATEGORY THRU READ-CATEGORY-XIT.                DCQRY205
00560      IF DATA-RETURN-CODE EQUAL TO "0"                                CL**2
00561          GO TO 3510-CK-1ST-LINE.                                     CL**2
00562 *                                                                    CL**2
00563 *    CHECK FOR SUPER CAT AND BYPASS MSG                              CL**2
00564 *                                                                    CL**2
00565      IF QTBL-OUT-CAT GREATER THAN 950                                CL**2
00566      GO TO 3749-DISPLAY-CAT-XIT.                                     CL**2
00567      GO TO 3715-NOCAT-LINE.                                          CL**2
00568 *                                                                 DCQRY205
00569 *    CHECK IF FIRST CATEGORY LINE IS IN DESIRED RANGE             DCQRY205
00570 *        READ PAST LINES WITH NUMBERS LOWER THAN LOW LIMIT        DCQRY205
00571 *                                                                 DCQRY205
00572  3510-CK-1ST-LINE.                                                DCQRY205
00573      IF CAT-LINE LESS THAN FRLINE-LIMIT                           DCQRY205
00574          GO TO 3515-BYPASS-LINE.                                  DCQRY205
00575 *                                                                 DCQRY205
00576 *    RETRIEVE 1ST LINE OF CATEGORY                                DCQRY205
00577 *                                                                 DCQRY205
00578      IF CAT-LINE GREATER THAN TOLINE-LIMIT                        DCQRY205
00579          GO TO 3717-CK-SUPER-CAT.                                    CL**2
00580      GO TO 3520-OUTPUT-CATHDR.                                    DCQRY205
00581  3515-BYPASS-LINE.                                                DCQRY205
00582      PERFORM READ-NEXT-DATA THRU READ-NEXT-DATA-XIT.              DCQRY205
00583      IF DATA-RETURN-CODE EQUAL TO "0" OR "3"                      DCQRY205
00584          GO TO 3510-CK-1ST-LINE.                                  DCQRY205
00585  3717-CK-SUPER-CAT.                                                  CL**2
00586      IF QTBL-OUT-CAT GREATER THAN 950                                CL**2
00587          GO TO 3749-DISPLAY-CAT-XIT.                                 CL**2
00588      GO TO 3715-NOCAT-LINE.                                          CL**2
00589 *                                                                 DCQRY205
00590 *    LOOKUP AND OUTPUT CATEGORY HEADER LINE                       DCQRY205
00591 *                                                                 DCQRY205
00592  3520-OUTPUT-CATHDR.                                              DCQRY205
00593      MOVE 1 TO SUB4.                                                 CL**2
00594  3525-NEXT-CATNUM.                                                DCQRY205
00595      IF ENT05-CATNUMS (SUB4) EQUAL TO CATEGORY-NUMBER                CL**2
00596          GO TO 3530-DISPLAY-HDG.                                  DCQRY205
00597      ADD 1 TO SUB4.                                               DCQRY205
00598      GO TO 3525-NEXT-CATNUM.                                      DCQRY205
00599  3530-DISPLAY-HDG.                                                DCQRY205
00600      MOVE SPACES TO STD-RPT-CATHDG.                                  CL**2
00601      MOVE ENT05-CATHDRS (SUB4) TO CATEGORY-HEADER.                   CL**2
00602      MOVE 2 TO PRT-CTL.                                              CL**2
00603      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                     CL**2
00604      MOVE 1 TO PRT-CTL.                                              CL**2
00605      MOVE SPACES TO STD-RPT-CATHDG.                                  CL**2
00606      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                     CL**2
00607      MOVE "Y" TO CATEGORY-OUTPUT-SW.                              DCQRY205
00608 *                                                                 DCQRY205
00609 *    FORMAT CATEGORY DETAIL LINES                                 DCQRY205
00610 *        IF 70 CHR FORMAT PUT OUT LINE NO ON SEP LINE             DCQRY205
00611 *                                                                 DCQRY205
00612  3540-FMT-CAT-DETAIL.                                             DCQRY205
00613       IF DISPLAY-LINE-LENGTH NOT EQUAL TO "070"                      CL**2
00614          GO TO 3550-FMT-LINE-PREFIX.                              DCQRY205
00615      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCQRY205
00616      GO TO 3560-OUTPUT-STD.                                       DCQRY205
00617  3550-FMT-LINE-PREFIX.                                            DCQRY205
00618      MOVE CAT-REV            TO  STDRPT-REVNO.                    DCQRY205
00619      MOVE CAT-LINE           TO  STDRPT-LINE.                     DCQRY205
00620 *                                                                 DCQRY205
00621 *    CHECK FOR COMMENT LINE                                       DCQRY205
00622  3560-OUTPUT-STD.                                                 DCQRY205
00623      IF CAT-COMMENT EQUAL TO "*"                                     CL**2
00624          PERFORM 5300-FMT-CAT030 THRU 5399-FMT-CAT030-XIT         DCQRY205
00625          GO TO 3700-GET-NEXT-LINE.                                DCQRY205
00626 *                                                                 DCQRY205
00627 *    CHECK FOR CATEGORY NUMBERS AND ENTER FORMATTING RT           DCQRY205
00628 *                                                                 DCQRY205
00629      IF CATEGORY-NUMBER EQUAL TO "010"                            DCQRY205
00630          PERFORM 5100-FMT-CAT010 THRU 5199-FMT-CAT010-XIT         DCQRY205
00631          GO TO 3700-GET-NEXT-LINE.                                DCQRY205
00632      IF CATEGORY-NUMBER EQUAL TO "020"                            DCQRY205
00633          PERFORM 5200-FMT-CAT020 THRU 5299-FMT-CAT020-XIT         DCQRY205
00634          GO TO 3700-GET-NEXT-LINE.                                DCQRY205
00635      IF CATEGORY-NUMBER EQUAL TO "030"                            DCQRY205
00636          PERFORM 5300-FMT-CAT030 THRU 5399-FMT-CAT030-XIT         DCQRY205
00637          GO TO 3700-GET-NEXT-LINE.                                DCQRY205
00638      IF CATEGORY-NUMBER EQUAL TO "100"                            DCQRY205
00639          PERFORM 6000-FMT-CAT100 THRU 6299-FMT-CAT100-XIT         DCQRY205
00640          GO TO 3700-GET-NEXT-LINE.                                DCQRY205
00641      IF CATEGORY-NUMBER EQUAL TO "110"                            DCQRY205
00642          PERFORM 6500-FMT-CAT110 THRU 6599-FMT-CAT110-XIT         DCQRY205
00643          GO TO 3700-GET-NEXT-LINE.                                DCQRY205
00650      IF CATEGORY-NUMBER EQUAL TO "200"                            DCQRY205
00651          PERFORM 7700-FMT-CAT200 THRU 7799-FMT-CAT200-XIT         DCQRY205
00652          GO TO 3700-GET-NEXT-LINE.                                DCQRY205
00653      IF CATEGORY-NUMBER EQUAL TO "210"                            DCQRY205
00654          PERFORM 7800-FMT-CAT05210 THRU 7999-FMT-CAT05210-XIT     DCQRY205
00655          GO TO 3700-GET-NEXT-LINE.                                DCQRY205
00656      IF CATEGORY-NUMBER EQUAL TO "211"                            DCQRY205
00657          PERFORM 8000-FMT-CAT211 THRU 8199-FMT-CAT211-XIT         DCQRY205
00658          GO TO 3700-GET-NEXT-LINE.                                DCQRY205
           IF CATEGORY-NUMBER IS EQUAL TO "400" 
           THEN 
              PERFORM FMT-CAT400 THRU FMT-CAT400-XIT
              GO TO 3700-GET-NEXT-LINE
           END-IF.
00659      IF CATEGORY-NUMBER EQUAL TO "900"                            DCQRY205
00660          PERFORM 5900-FMT-CAT900 THRU 5999-FMT-CAT900-XIT         DCQRY205
00661          GO TO 3700-GET-NEXT-LINE.                                DCQRY205
00662      GO TO 3710-NOCAT-DATA.                                          CL**2
00663 *                                                                 DCQRY205
00664 *    RETRIEVE NEXT LINE OF CATEGORY - CK FOR END                  DCQRY205
00665 *                                                                 DCQRY205
00666  3700-GET-NEXT-LINE.                                              DCQRY205
00667      IF CATLINE-COUNTER EQUAL TO FORLINE-LIMIT                    DCQRY205
00668        GO TO 3749-DISPLAY-CAT-XIT.                                DCQRY205
00669      PERFORM READ-NEXT-DATA THRU READ-NEXT-DATA-XIT.              DCQRY205
00670      IF DATA-RETURN-CODE EQUAL TO  1 OR 2                         DCQRY205
00671          GO TO 3749-DISPLAY-CAT-XIT.                              DCQRY205
00672      IF CAT-LINE GREATER THAN TOLINE-LIMIT                        DCQRY205
00673          GO TO 3749-DISPLAY-CAT-XIT.                              DCQRY205
00674      ADD 1 TO CATLINE-COUNTER.                                       CL**2
00675      GO TO 3540-FMT-CAT-DETAIL.                                   DCQRY205
00676  3749-DISPLAY-CAT-XIT.                                            DCQRY205
00677      EXIT.                                                        DCQRY205
00678                                                                    DCQRY20
00679 *                                                                 DCQRY205
00680 *   FORMAT WARNING AND INFORMATION MESSAGES                       DCQRY205
00681 *                                                                 DCQRY205
00682  3710-NOCAT-DATA.                                                 DCQRY205
00683      MOVE NO-CAT-MSG   TO        STD-RPT-MESSAGE.                 DCQRY205
00684      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCQRY205
00685      GO TO 3100-NEXT-HIT.                                            CL**2
00686  3715-NOCAT-LINE.                                                 DCQRY205
00687      MOVE NO-LINES-MSG  TO       STD-RPT-MESSAGE.                 DCQRY205
00688      PERFORM DISPLAY-LINE THRU DISPLAY-LINE-XIT.                  DCQRY205
00689      GO TO 3100-NEXT-HIT.                                            CL**2
00690                                                                    DCQRY20
00691  3800-NOMORE-HITS.                                                DCQRY205
00692 *                                                                 DCQRY205
00693 *    ON-LINE VERSION WILL DETERMINE NEXT STEP HERE                DCQRY205
00694 *                                                                 DCQRY205
00695      GO TO 1500-QUERY-END.                                        DCQRY205
00696                                                                    DCQRY20
*CALL     RPTRTCOM                                                         CL**2
*CALL RPTRT05 
*CALL     DISPLAYLN                                                        CL**5
*CALL     WRITELN                                                          CL**5
01303  USER-ROUTINE.                                                       CL**2
01304      MOVE SUB-HEADING-LINE TO PRINT-DATA.                            CL**2
01305      ADD 2 TO LINE-CT.                                               CL**2
01306      PERFORM WRITE-LINE THRU WRITE-LINE-XIT.                         CL**2
01307      MOVE SPACES TO PRINT-DATA.                                      CL**2
01308      PERFORM WRITE-LINE THRU WRITE-LINE-XIT.                         CL**2
01309      IF SEC-PAGE-SW EQUAL TO "Y"                                     CL**2
01310          MOVE LIST-LINE-MSG TO CATA-NAME-LINE                        CL**2
01311          MOVE CONTINUATION-LINE TO PRINT-DATA                        CL**2
01312          MOVE 1 TO PRT-CTL                                           CL**2
01313          PERFORM WRITE-LINE THRU WRITE-LINE-XIT                      CL**2
01314          MOVE 1 TO PRT-CTL                                           CL**2
01315          MOVE STATEMENT-LINE TO PRINT-DATA                           CL**2
01316          PERFORM WRITE-LINE THRU WRITE-LINE-XIT.                     CL**2
01317      MOVE "Y" TO SEC-PAGE-SW.                                        CL**2
01318  USER-ROUTINE-XIT.                                                   CL**2
01319      EXIT.                                                           CL**2
01320  PROGRAM-END-BAD.                                                    CL**2
01321      MOVE PROGRAM-PROBLEM-MSG TO STD-RPT-MESSAGE.                    CL**2
01322      GO TO 1900-ABORT-RUN.                                           CL**2
01323                                                                    DCQRY20
*CALL     MAST1RFC                                                         CL**5
*CALL     MAST1RNL                                                         CL**5
*CALL     MAST1EXT                                                         CL**5
*CALL     MAST1READ                                                        CL**5
*CALL     MAST1ALG                                                         CL**5
