284 lines
22 KiB
COBOL
284 lines
22 KiB
COBOL
00001 IDENTIFICATION DIVISION. 11/01/13
|
|
00002 PROGRAM-ID. DTSBU310. DTSBU310
|
|
00003 AUTHOR. NGC. LV001
|
|
00004 DATE-WRITTEN. OCTOBER 2013. DTSBU310
|
|
00005 DATE-COMPILED. DTSBU310
|
|
00006 DTSBU310
|
|
00007 ***** DTSBU310
|
|
00008 * DTSBU310
|
|
00009 * FUNCTION: BUILD ITM FILE THAT PROVIDES AN INDEX TO DTSBU310
|
|
00010 * REPORTS USING THE BATCH AND ITEM NUMBER. DTSBU310
|
|
00011 * DTSBU310
|
|
00012 * DTSBU310
|
|
00013 ***** DTSBU310
|
|
00014 DTSBU310
|
|
00015 ENVIRONMENT DIVISION. DTSBU310
|
|
00016 INPUT-OUTPUT SECTION. DTSBU310
|
|
00017 FILE-CONTROL. DTSBU310
|
|
00018 SELECT BATCH-ITEM-FILE ASSIGN TO DTSFBIO DTSBU310
|
|
00019 FILE STATUS IS BATCH-ITEM-STATUS. DTSBU310
|
|
00020 DTSBU310
|
|
00021 DATA DIVISION. DTSBU310
|
|
00022 FILE SECTION. DTSBU310
|
|
00023 FD BATCH-ITEM-FILE DTSBU310
|
|
00024 RECORDING MODE IS F. DTSBU310
|
|
00025 DTSBU310
|
|
00026 01 BATCH-ITEM-REC PIC X(17). DTSBU310
|
|
00027 DTSBU310
|
|
00028 DTSBU310
|
|
00029 WORKING-STORAGE SECTION. DTSBU310
|
|
000295 77 PAN-VALET PICTURE X(24) VALUE '001DTSBU310 11/01/13'. DTSBU310
|
|
00030 77 PAN-VALET PICTURE X(24) VALUE '007DTSBU310 10/17/13'. DTSBU310
|
|
00031 77 PAN-VALET PICTURE X(24) VALUE '037DTSBZ203 01/02/13'. DTSBU310
|
|
00032 SKIP3 DTSBU310
|
|
00033 01 W-AREA. DTSBU310
|
|
00034 05 W-ABEND-CD PIC S9(04) COMP VALUE +310.DTSBU310
|
|
00035 05 ABEND-MSG PIC X(60). DTSBU310
|
|
00036 DTSBU310
|
|
00037 05 W-MOD-NAME PIC X(08) VALUE 'DTSBU310'.DTSBU310
|
|
00038 DTSBU310
|
|
00039 05 W-ERROR-IND PIC X(01) VALUE 'N'. DTSBU310
|
|
00040 88 W-ERROR-YES-88 VALUE 'Y'. DTSBU310
|
|
00041 88 W-ERROR-NO-88 VALUE 'N'. DTSBU310
|
|
00042 DTSBU310
|
|
00043 05 BATCH-ITEM-STATUS PIC X(02). DTSBU310
|
|
00044 88 BATCH-ITEM-OK-88 VALUE '00'. DTSBU310
|
|
00045 DTSBU310
|
|
00046 05 W-START-YRQ PIC S9(05) COMP-3. DTSBU310
|
|
00047 DTSBU310
|
|
00048 05 W-RPT-CNT PIC 9(06). DTSBU310
|
|
00049 DTSBU310
|
|
00050 05 W-TRACE-IND PIC X(01). DTSBU310
|
|
00051 DTSBU310
|
|
00052 DTSBU310
|
|
00053 01 WITM-REC. DTSBU310
|
|
00054 ++INCLUDE DTSIWITM DTSBU310
|
|
00055 DTSBU310
|
|
00056 01 L910-LINK-AREA. DTSBU310
|
|
00057 ++INCLUDE DTSIL910 DTSBU310
|
|
00058 EJECT DTSBU310
|
|
00059 01 MSKL-REC. DTSBU310
|
|
00060 ++INCLUDE DTSIMSKL DTSBU310
|
|
00061 EJECT DTSBU310
|
|
00062 01 MHDR-REC. DTSBU310
|
|
00063 ++INCLUDE DTSIMHDR DTSBU310
|
|
00064 EJECT DTSBU310
|
|
00065 01 MPRF-REC. DTSBU310
|
|
00066 ++INCLUDE DTSIMPRF DTSBU310
|
|
00067 EJECT DTSBU310
|
|
00068 01 MQTR-REC. DTSBU310
|
|
00069 ++INCLUDE DTSIMQTR DTSBU310
|
|
00070 EJECT DTSBU310
|
|
00071 01 MRPT-REC. DTSBU310
|
|
00072 ++INCLUDE DTSIMRPT DTSBU310
|
|
00073 EJECT DTSBU310
|
|
00074 01 L001-LINK-AREA. DTSBU310
|
|
00075 ++INCLUDE DTSIL001 DTSBU310
|
|
00076 DTSBU310
|
|
00077 01 L004-LINK-AREA. DTSBU310
|
|
00078 ++INCLUDE DTSIL004 DTSBU310
|
|
00079 DTSBU310
|
|
00080 01 L005-LINK-AREA. DTSBU310
|
|
00081 ++INCLUDE DTSIL005 DTSBU310
|
|
00082 DTSBU310
|
|
00083 PROCEDURE DIVISION. DTSBU310
|
|
00084 PERFORM I0000-INITIATE THRU I0000-EXIT. DTSBU310
|
|
00085 IF W-ERROR-NO-88 DTSBU310
|
|
00086 PERFORM P0000-PROCESS THRU P0000-EXIT DTSBU310
|
|
00087 PERFORM T0000-TERMINATE THRU T0000-EXIT DTSBU310
|
|
00088 END-IF. DTSBU310
|
|
00089 GOBACK. DTSBU310
|
|
00090 DTSBU310
|
|
00091 I0000-INITIATE. DTSBU310
|
|
00092 MOVE 'N' TO W-TRACE-IND. DTSBU310
|
|
00093 DTSBU310
|
|
00094 DTSBU310
|
|
00095 PERFORM I2000-OPEN-FILES-1 THRU I2000-EXIT. DTSBU310
|
|
00096 DTSBU310
|
|
00097 PERFORM I3000-START-YRQ THRU I3000-EXIT. DTSBU310
|
|
00098 DTSBU310
|
|
00099 I0000-EXIT. DTSBU310
|
|
00100 EXIT. DTSBU310
|
|
00101 DTSBU310
|
|
00102 DTSBU310
|
|
00103 I2000-OPEN-FILES-1. DTSBU310
|
|
00104 MOVE W-TRACE-IND TO L910-TRACE-IND. DTSBU310
|
|
00105 DTSBU310
|
|
00106 MOVE W-MOD-NAME TO L910-MOD-NAME. DTSBU310
|
|
00107 DTSBU310
|
|
00108 OPEN OUTPUT BATCH-ITEM-FILE. DTSBU310
|
|
00109 IF NOT BATCH-ITEM-OK-88 DTSBU310
|
|
00110 DISPLAY 'CANNOT OPEN BATCH ITEM FILE ' DTSBU310
|
|
00111 BATCH-ITEM-STATUS DTSBU310
|
|
00112 SET W-ERROR-YES-88 TO TRUE DTSBU310
|
|
00113 GO TO I2000-EXIT DTSBU310
|
|
00114 END-IF. DTSBU310
|
|
00115 DTSBU310
|
|
00116 PERFORM S910-OPEN-READ THRU S910-EXIT. DTSBU310
|
|
00117 DTSBU310
|
|
00118 I2000-EXIT. DTSBU310
|
|
00119 EXIT. DTSBU310
|
|
00120 DTSBU310
|
|
00121 I3000-START-YRQ. DTSBU310
|
|
00122 SET L005-FROM-SYS TO TRUE. DTSBU310
|
|
00123 CALL 'DTSBU005' USING L005-LINK-AREA. DTSBU310
|
|
00124 MOVE L005-DATE TO L004-DATE. DTSBU310
|
|
00125 PERFORM S004-FROM-DATE THRU S004-EXIT. DTSBU310
|
|
00126 SUBTRACT +20 FROM L004-ABS-QTR. DTSBU310
|
|
00127 PERFORM S004-FROM-ABS THRU S004-EXIT. DTSBU310
|
|
00128 MOVE L004-QTR-5-9 TO W-START-YRQ. DTSBU310
|
|
00129 DTSBU310
|
|
00130 DISPLAY 'START QUARTER: ' L004-SLASH-QTR. DTSBU310
|
|
00131 DTSBU310
|
|
00132 I3000-EXIT. DTSBU310
|
|
00133 EXIT. DTSBU310
|
|
00134 DTSBU310
|
|
00135 DTSBU310
|
|
00136 P0000-PROCESS. DTSBU310
|
|
00137 MOVE +0 TO W-RPT-CNT. DTSBU310
|
|
00138 DTSBU310
|
|
00139 MOVE LOW-VALUES TO MSKL-KEY-AREA. DTSBU310
|
|
00140 MOVE +0 TO MSKL-EMP-NO. DTSBU310
|
|
00141 SET MSKL-PRF-88 TO TRUE. DTSBU310
|
|
00142 DTSBU310
|
|
00143 PERFORM S910-START-BROWSE THRU S910-EXIT. DTSBU310
|
|
00144 PERFORM UNTIL L910-NO-REC-88 DTSBU310
|
|
00145 MOVE MSKL-REC TO MPRF-REC DTSBU310
|
|
00146 PERFORM P1000-FIND-REPORT THRU P1000-EXIT DTSBU310
|
|
00147 MOVE MPRF-REC TO MSKL-REC DTSBU310
|
|
00148 PERFORM S910-READ-NEXT THRU S910-EXIT DTSBU310
|
|
00149 END-PERFORM. DTSBU310
|
|
00150 DTSBU310
|
|
00151 P0000-EXIT. DTSBU310
|
|
00152 EXIT. DTSBU310
|
|
00153 DTSBU310
|
|
00154 P1000-FIND-REPORT. DTSBU310
|
|
00155 MOVE LOW-VALUES TO MRPT-KEY-AREA. DTSBU310
|
|
00156 MOVE MPRF-EMP-NO TO MRPT-EMP-NO. DTSBU310
|
|
00157 SET MRPT-RPT-88 TO TRUE. DTSBU310
|
|
00158 MOVE W-START-YRQ TO MRPT-YRQ. DTSBU310
|
|
00159 MOVE ZEROS TO MRPT-DOC-NO. DTSBU310
|
|
00160 DTSBU310
|
|
00161 MOVE MRPT-KEY-AREA TO MSKL-KEY-AREA. DTSBU310
|
|
00162 DTSBU310
|
|
00163 PERFORM S910-START-BROWSE THRU S910-EXIT. DTSBU310
|
|
00164 PERFORM UNTIL L910-NO-REC-88 DTSBU310
|
|
00165 MOVE MSKL-REC TO MRPT-REC DTSBU310
|
|
00166 IF MRPT-ORIG-88 DTSBU310
|
|
00167 OR MRPT-SUPPLEM-88 DTSBU310
|
|
00168 PERFORM P1100-WRITE-WITM THRU P1100-EXIT DTSBU310
|
|
00169 END-IF DTSBU310
|
|
00170 PERFORM S910-READ-NEXT THRU S910-EXIT DTSBU310
|
|
00171 END-PERFORM. DTSBU310
|
|
00172 DTSBU310
|
|
00173 P1000-EXIT. DTSBU310
|
|
00174 EXIT. DTSBU310
|
|
00175 DTSBU310
|
|
00176 P1100-WRITE-WITM. DTSBU310
|
|
00177 MOVE MRPT-BATCH-NO TO WITM-BATCH-NO DTSBU310
|
|
00178 MOVE MRPT-ITEM-NO TO WITM-ITEM-NO DTSBU310
|
|
00179 MOVE MRPT-YRQ TO WITM-YRQ DTSBU310
|
|
00180 MOVE MRPT-EMP-NO TO WITM-EMP-NO DTSBU310
|
|
00181 ADD 1 TO W-RPT-CNT DTSBU310
|
|
00182 WRITE BATCH-ITEM-REC FROM WITM-REC. DTSBU310
|
|
00183 DTSBU310
|
|
00184 P1100-EXIT. DTSBU310
|
|
00185 EXIT. DTSBU310
|
|
00186 DTSBU310
|
|
00187 T0000-TERMINATE. DTSBU310
|
|
00188 DISPLAY ' '. DTSBU310
|
|
00189 DTSBU310
|
|
00190 DISPLAY '*** DTSBU310 TERMINATION STATISTICS ***'. DTSBU310
|
|
00191 DTSBU310
|
|
00192 DISPLAY ' '. DTSBU310
|
|
00193 DTSBU310
|
|
00194 DISPLAY 'NUMBER OF REPORTS PROCESSED : 'DTSBU310
|
|
00195 W-RPT-CNT. DTSBU310
|
|
00196 DTSBU310
|
|
00197 PERFORM S910-CLOSE THRU S910-EXIT. DTSBU310
|
|
00198 CLOSE BATCH-ITEM-FILE. DTSBU310
|
|
00199 T0000-EXIT. DTSBU310
|
|
00200 EXIT. DTSBU310
|
|
00201 DTSBU310
|
|
00202 S001-FROM-FED-8. DTSBU310
|
|
00203 SET L001-FROM-FED-8 TO TRUE. DTSBU310
|
|
00204 GO TO S001-DATE. DTSBU310
|
|
00205 DTSBU310
|
|
00206 S001-FROM-FED. DTSBU310
|
|
00207 SET L001-FROM-FED-6 TO TRUE. DTSBU310
|
|
00208 GO TO S001-DATE. DTSBU310
|
|
00209 DTSBU310
|
|
00210 S001-FROM-ABS. DTSBU310
|
|
00211 SET L001-FROM-ABS-DAY TO TRUE. DTSBU310
|
|
00212 GO TO S001-DATE. DTSBU310
|
|
00213 DTSBU310
|
|
00214 S001-DATE. DTSBU310
|
|
00215 CALL 'DTSBU001' USING L001-LINK-AREA. DTSBU310
|
|
00216 S001-EXIT. EXIT. DTSBU310
|
|
00217 DTSBU310
|
|
00218 S004-FROM-DATE. DTSBU310
|
|
00219 SET L004-FROM-DATE TO TRUE. DTSBU310
|
|
00220 GO TO S004-YRQ. DTSBU310
|
|
00221 DTSBU310
|
|
00222 S004-FROM-ABS. DTSBU310
|
|
00223 SET L004-FROM-ABS TO TRUE. DTSBU310
|
|
00224 GO TO S004-YRQ. DTSBU310
|
|
00225 DTSBU310
|
|
00226 S004-YRQ. DTSBU310
|
|
00227 CALL 'DTSBU004' USING L004-LINK-AREA. DTSBU310
|
|
00228 DTSBU310
|
|
00229 S004-EXIT. DTSBU310
|
|
00230 EXIT. DTSBU310
|
|
00231 DTSBU310
|
|
00232 DTSBU310
|
|
00233 S910-OPEN-READ. DTSBU310
|
|
00234 SET L910-OPEN-READ-88 TO TRUE. DTSBU310
|
|
00235 GO TO S910-MSTR-IO. DTSBU310
|
|
00236 DTSBU310
|
|
00237 S910-OPEN-UPDATE-NO-AIX. DTSBU310
|
|
00238 SET L910-OPEN-UPDATE-NO-AIX-88 TO TRUE. DTSBU310
|
|
00239 GO TO S910-MSTR-IO. DTSBU310
|
|
00240 DTSBU310
|
|
00241 S910-OPEN-UPDATE-HDR. DTSBU310
|
|
00242 SET L910-OPEN-UPDATE-HDR-88 TO TRUE. DTSBU310
|
|
00243 GO TO S910-MSTR-IO. DTSBU310
|
|
00244 DTSBU310
|
|
00245 S910-READ. DTSBU310
|
|
00246 SET L910-READ-88 TO TRUE. DTSBU310
|
|
00247 GO TO S910-MSTR-IO. DTSBU310
|
|
00248 DTSBU310
|
|
00249 S910-START-BROWSE. DTSBU310
|
|
00250 SET L910-START-BROWSE-88 TO TRUE. DTSBU310
|
|
00251 GO TO S910-MSTR-IO. DTSBU310
|
|
00252 DTSBU310
|
|
00253 S910-READ-NEXT. DTSBU310
|
|
00254 SET L910-READ-NEXT-88 TO TRUE. DTSBU310
|
|
00255 GO TO S910-MSTR-IO. DTSBU310
|
|
00256 DTSBU310
|
|
00257 S910-COUNT. DTSBU310
|
|
00258 SET L910-COUNT-88 TO TRUE. DTSBU310
|
|
00259 GO TO S910-MSTR-IO. DTSBU310
|
|
00260 DTSBU310
|
|
00261 S910-REWRITE. DTSBU310
|
|
00262 SET L910-REWRITE-88 TO TRUE. DTSBU310
|
|
00263 GO TO S910-MSTR-IO. DTSBU310
|
|
00264 DTSBU310
|
|
00265 S910-DELETE. DTSBU310
|
|
00266 SET L910-DELETE-88 TO TRUE. DTSBU310
|
|
00267 GO TO S910-MSTR-IO. DTSBU310
|
|
00268 DTSBU310
|
|
00269 S910-CLOSE. DTSBU310
|
|
00270 SET L910-CLOSE-88 TO TRUE. DTSBU310
|
|
00271 GO TO S910-MSTR-IO. DTSBU310
|
|
00272 DTSBU310
|
|
00273 S910-MSTR-IO. DTSBU310
|
|
00274 CALL 'DTSBU910' USING L910-LINK-AREA DTSBU310
|
|
00275 MSKL-REC. DTSBU310
|
|
00276 S910-EXIT. DTSBU310
|
|
00277 EXIT. DTSBU310
|
|
00278 SKIP3 DTSBU310
|
|
00279 S999-ABEND. DTSBU310
|
|
00280 CALL 'DTSBU999' USING W-ABEND-CD. DTSBU310
|
|
00281 S999-EXIT. DTSBU310
|
|
00282 EXIT. DTSBU310
|