Example of COBOL Smart Differencer Output
This page contains an example of the output generated by SD's
COBOL Smart Differencer tool
when
applied to an original file
and an updated version of the same file. The example includes
text output from the Smart Differencer tool,
snapshots and discussion of a graphical user interface that Semantic Designs
offers for the tool, and for contrast,
the output of a standard diff tool.
Output from COBOL Smart Differencer on Original and Updated File
This page contains an example of the output generated by SD's
COBOL Smart Differencer tool.
In the example, a COBOL file was modified as part of a Y2K enhancement, and additional changes were made.
Note the added precision of Smart Differencer output:
line and column number (l.c) ranges and renamed variables ('oldname' ->'newname').
Notice that source code formatting changes, e.g.,
(line 40 versus new line 40 or
line 48 versus new line 48),
changes in non-semantic areas, e.g. sequence numbers or deck identifiers
(line 45 versus new line 45) or
comments (line 638 versus new line 638),
or value-stable changes in literal format
(line 380 versus new line 380),
do not trigger a report in the Smart Differencer.
Regular renamings are detected, as well as code movement.
For comparison, see deltas generated from a standard diff tool.
The Smart Differencer output is more succinct, 112 lines versus 189 lines produced by diff,
and contains explanations of changes rather than simple string dumps.
The Smart Differencer also produces an XML version of its output that can be sent to a display tool or integrated development environment. One such environment for COBOL is the Rational Developer for System Z™ (RDz) Environment. Semantic Designs offers an RDz plug-in for browsing Smart Differencer results in a graphical user interface, which helps highlights semantic differences between two files while describing the nature of the difference. Some illustrations of this GUI display are here.
Substitute 97.44-97.47 by 97.44-97.47 < X(4) > X(6) Delete 226.12-249.33 merging 230.20-231.32 into 1104.28-1105.58 with 'EMPLOY-BEGIN-FIRSTCEN-DAY'~>'AGE-COMPUTATION-DAY', merging 236.20-237.32 into 1104.28-1105.58 with 'EMPLOY-END-FIRSTCEN-DAY'~>'AGE-COMPUTATION-DAY', merging 242.20-243.32 into 1104.28-1105.58 with 'EMPLOY-BEGIN-ANNUAL-DAY'~>'AGE-COMPUTATION-DAY', merging 245.16-245.57 into 370.16-370.46 with 'EMPLOY-END-ANNUAL-YEAR'~>'BIRTH-YEAR', merging 246.51-246.56 into 207.40-207.45, and merging 248.16-249.33 into 1068.15-1068.59 with 'EMPLOY-END-ANNUAL-DAY'~>'MONTH-OF-30-DAYS' < 03 EMPLOY-BEGIN-DATE-FIRSTCEN. 02260000 <022700 05 EMPLOY-BEGIN-FIRSTCEN-YEAR PIC 99. 02270000 <022800 05 EMPLOY-BEGIN-FIRSTCEN-MTH PIC 99 02280000 <022900 VALUE 07. 02290000 <023000 05 EMPLOY-BEGIN-FIRSTCEN-DAY PIC 99 02300000 <023100 VALUE 01. 02310000 <023200 03 EMPLOY-END-DATE-FIRSTCEN. 02320000 <023300 05 EMPLOY-END-FIRSTCEN-YEAR PIC 99. 02330000 <023400 05 EMPLOY-END-FIRSTCEN-MTH PIC 99 02340000 <023500 VALUE 11. 02350000 <023600 05 EMPLOY-END-FIRSTCEN-DAY PIC 99 02360000 <023700 VALUE 01. 02370000 <023800 03 EMPLOY-BEGIN-DATE-ANNUAL. 02380000 <023900 05 EMPLOY-BEGIN-ANNUAL-YEAR PIC 99. 02390000 <024000 05 EMPLOY-BEGIN-ANNUAL-MTH PIC 99 02400000 <024100 VALUE 07. 02410000 <024200 05 EMPLOY-BEGIN-ANNUAL-DAY PIC 99 02420000 <024300 VALUE 01. 02430000 <024400 03 EMPLOY-END-DATE-ANNUAL. 02440000 <024500 05 EMPLOY-END-ANNUAL-YEAR PIC 99. 02450000 <024600 05 EMPLOY-END-ANNUAL-MTH PIC 99 02460000 <024700 VALUE 06. 02470000 <024800 05 EMPLOY-END-ANNUAL-DAY PIC 99 02480000 <024900 VALUE 30. Insert 227.8-242.54 > COPY EMPLOYDT REPLACING ==:CLASS:== BY ==FIRSTCEN== > ==:PT:== BY ==BEGIN== > ==:MTHVAL:== BY ==07== > ==:DAYVAL:== BY ==01==. > COPY EMPLOYDT REPLACING ==:CLASS:== BY ==FIRSTCEN== > ==:PT:== BY ==END== > ==:MTHVAL:== BY ==11== > ==:DAYVAL:== BY ==01==. > COPY EMPLOYDT REPLACING ==:CLASS:== BY ==ANNUAL== > ==:PT:== BY ==BEGIN== > ==:MTHVAL:== BY ==07== > ==:DAYVAL:== BY ==01==. > COPY EMPLOYDT REPLACING ==:CLASS:== BY ==ANNUAL== > ==:PT:== BY ==END== > ==:MTHVAL:== BY ==06== > ==:DAYVAL:== BY ==30==. Substitute 260.44-260.47 by 253.44-253.47 < X(4) > X(6) Substitute 301.44-301.47 by 295.47-295.50 < X(4) > X(6) Substitute 643.44-643.47 by 638.44-638.47 < X(4) > X(2) Substitute 643.57-643.62 by 638.57-638.60 < ', 19' > ', ' Substitute 644.44-644.47 by 639.44-639.47 < Z(2) > Z(4) Substitute 787.16-787.25 by 783.16-783.24 < TERM-TITLE > TERM-NAME Substitute 788.44-788.46 by 784.44-784.44 < XXX > X Substitute 788.57-788.61 by 784.55-784.57 < ' 19' > ' ' Substitute 789.44-789.45 by 785.44-785.47 < 99 > 9999 Substitute 790.44-790.47 by 786.44-786.47 < X(4) > X(2) Substitute 790.57-790.62 by 786.57-786.60 < ' (' > ' (' Substitute 791.44-791.45 by 787.44-787.47 < 99 > 9999 Rename 1087.12-1240.48 to 1083.12-1236.48 with 'TERM-TITLE'->'TERM-NAME' Rename 2075.8-2138.45 to 2071.8-2134.45 with '2100-VALIDATE-KEY-FIELDS'~>'2400-INTEGRITY-EDITS', '2200-VALIDATE-DEMOGRAPHIC-DATA'~>'2100-VALIDATE-KEY-FIELDS', '2300-VALIDATE-EMPLOYMENT-DATA'~>'2200-VALIDATE-DEMOGRAPHIC-DATA', '2400-INTEGRITY-EDITS'~>'2300-VALIDATE-EMPLOYMENT-DATA', and 'TERM-TITLE'->'TERM-NAME' Insert 2265.16-2265.23 > CONTINUE Delete 2269.16-2269.28 < NEXT SENTENCE Delete 2492.16-2492.51 merging 2492.16-2492.51 into 2488.16-2488.52 with '2310-VALIDATE-EEO6-ACTIVITY'~>'2320-VALIDATE-CLASSIFICATION' < PERFORM 2310-VALIDATE-EEO6-ACTIVITY. Delete 2501.8-2514.44 merging 2510.16-2512.46 into 2691.16-2693.46 with 'VALIDITY-LITERAL'~>'INTEGRITY-LITERAL' and merging 2514.16-2514.43 into 2507.16-2507.43 < 2310-VALIDATE-EEO6-ACTIVITY. 25010000 <250200 MOVE EMPLOYEE-EEO6-ACTIVITY 25020000 <250300 IN EMPLOYEE-DATA-RECORD 25030000 <250400 TO CHECK-EEO6. 25040000 <250500* IF EEO6-UNKNOWN 25050000 <250600* ADD 1 TO DISTRICT-COUNT (11, 2). 25060000 <250700 IF EEO6-VALID 25070000 <250800 MOVE 1 TO EB07-FLAG 25080000 <250900 ELSE 25090000 <251000 MOVE VALIDITY-LITERAL 25100000 <251100 TO DATA-ELEMENT-FLAG 25110000 <251200 (11, EDIT-COLUMN-INDEX) 25120000 <251300 ADD 1 TO DISTRICT-COUNT (11, 1) 25130000 <251400 MOVE 1 TO REJECT-RECORD-FLAG. Insert 3528.12-3528.40 moving 3551.12-3551.40 to 3528.12-3528.40 > ADD 1 TO REPORT-PAGE-COUNTER. Delete 3551.12-3551.40 moving 3551.12-3551.40 to 3528.12-3528.40 < ADD 1 TO REPORT-PAGE-COUNTER.
Output from Cygwin diff tool
Note absence of column number data, failure
to recognize reformatted code as unchanged (line 40 among many other examples),
failure to recognize the insignificance of changes in non-semantic content (the
eliminated sequence number and card index fields in line 45), the failure to recognize
the semantic identity from consolidating two source lines into one (lines 48-49),
the failure to notice that only the numerical syntax, but not the numerical value
changes in a literal (line 380), failure to ignore comment changes (line 638,
with a comment added here),
and the absence of rename detection (line 787 versus the new line 783).
Notice also the diagnosis of code movement as two separate diffs (line 3551), when the real phenomena was
code movement, as diagnosed by the Smart Differencer.
See the actual deltas generated from COBOL Smart Differencer.
See original file and updated version of the same file.
diff CCCC3.COB CCCC3A.COB 40c40 < 004000 ASSIGN TO UT-S-EBRECIN. 00400000 --- > 004000 ASSIGN TO UT-S-EBRECIN. 00400000 43c43 < 004300 ASSIGN TO UT-S-EBRECOUT. 00430000 --- > 004300 ASSIGN TO UT-S-EBRECOUT. 00430000 45,46c45,46 < 004500 SELECT EDIT-ERROR-REPORT 00450000 < 004600 ASSIGN TO UT-S-PRINTER1. 00460000 --- > SELECT EDIT-ERROR-REPORT > 004600 ASSIGN TO UT-S-PRINTER1 . 00460000 48,49c48 < 004800 SELECT INTEGRITY-ERROR-SUMMARY 00480000 < 004900 ASSIGN TO UT-S-PRINTER2. 00490000 --- > 004800 SELECT INTEGRITY-ERROR-SUMMARY ASSIGN TO UT-S-PRINTER2. 00490000 52c51 < 005200 ASSIGN TO UT-S-TOTSFILE. 00520000 --- > 005200 ASSIGN TO UT-S-TOTSFILE. 00520000 97c96,97 < 009700 05 EMPLOYEE-HIRE-YRMON PIC X(4). 00970000 --- > * Modified for Y2K > 009700 05 EMPLOYEE-HIRE-YRMON PIC X(6). 00970000 226,249c226,242 < 022600 03 EMPLOY-BEGIN-DATE-FIRSTCEN. 02260000 < 022700 05 EMPLOY-BEGIN-FIRSTCEN-YEAR PIC 99. 02270000 < 022800 05 EMPLOY-BEGIN-FIRSTCEN-MTH PIC 99 02280000 < 022900 VALUE 07. 02290000 < 023000 05 EMPLOY-BEGIN-FIRSTCEN-DAY PIC 99 02300000 < 023100 VALUE 01. 02310000 < 023200 03 EMPLOY-END-DATE-FIRSTCEN. 02320000 < 023300 05 EMPLOY-END-FIRSTCEN-YEAR PIC 99. 02330000 < 023400 05 EMPLOY-END-FIRSTCEN-MTH PIC 99 02340000 < 023500 VALUE 11. 02350000 < 023600 05 EMPLOY-END-FIRSTCEN-DAY PIC 99 02360000 < 023700 VALUE 01. 02370000 < 023800 03 EMPLOY-BEGIN-DATE-ANNUAL. 02380000 < 023900 05 EMPLOY-BEGIN-ANNUAL-YEAR PIC 99. 02390000 < 024000 05 EMPLOY-BEGIN-ANNUAL-MTH PIC 99 02400000 < 024100 VALUE 07. 02410000 < 024200 05 EMPLOY-BEGIN-ANNUAL-DAY PIC 99 02420000 < 024300 VALUE 01. 02430000 < 024400 03 EMPLOY-END-DATE-ANNUAL. 02440000 < 024500 05 EMPLOY-END-ANNUAL-YEAR PIC 99. 02450000 < 024600 05 EMPLOY-END-ANNUAL-MTH PIC 99 02460000 < 024700 VALUE 06. 02470000 < 024800 05 EMPLOY-END-ANNUAL-DAY PIC 99 02480000 < 024900 VALUE 30. 02490000 --- > * Modified for Y2K > COPY EMPLOYDT REPLACING ==:CLASS:== BY ==FIRSTCEN== > ==:PT:== BY ==BEGIN== > ==:MTHVAL:== BY ==07== > ==:DAYVAL:== BY ==01==. > COPY EMPLOYDT REPLACING ==:CLASS:== BY ==FIRSTCEN== > ==:PT:== BY ==END== > ==:MTHVAL:== BY ==11== > ==:DAYVAL:== BY ==01==. > COPY EMPLOYDT REPLACING ==:CLASS:== BY ==ANNUAL== > ==:PT:== BY ==BEGIN== > ==:MTHVAL:== BY ==07== > ==:DAYVAL:== BY ==01==. > COPY EMPLOYDT REPLACING ==:CLASS:== BY ==ANNUAL== > ==:PT:== BY ==END== > ==:MTHVAL:== BY ==06== > ==:DAYVAL:== BY ==30==. 260c253 < 026000 05 CHECK-YR-MON PIC X(4). 02600000 --- > 026000 05 CHECK-YR-MON PIC X(6). 02600000 301c294,295 < 030100 05 CHECK-YR-MON PIC X(4). 03010000 --- > * Modified for Y2K > 030100 05 CHECK-YR-MON PIC X(6). 03010000 380c374 < 038000 88 TOO-YOUNG VALUES 0 THRU 16. 03800000 --- > 038000 88 TOO-YOUNG VALUES 00 THRU 16. 03800000 638a633 > * Modified for Y2K 643,644c638,639 < 064300 07 FILLER PIC X(4) VALUE ', 19'. 06430000 < 064400 07 HEADER-YEAR PIC Z(2) VALUE SPACES. 06440000 --- > 064300 07 FILLER PIC X(2) VALUE ', '. 06430000 > 064400 07 HEADER-YEAR PIC Z(4) VALUE SPACES. 06440000 784a780 > * Modified for Y2K 787,791c783,787 < 078700 03 TERM-TITLE PIC X(19). 07870000 < 078800 03 FILLER PIC XXX VALUE ' 19'. 07880000 < 078900 03 CALENDAR-YEAR1 PIC 99. 07890000 < 079000 03 FILLER PIC X(4) VALUE ' ('. 07900000 < 079100 03 CALENDAR-YEAR2 PIC 99. 07910000 --- > 078700 03 TERM-NAME PIC X(19). 07870000 > 078800 03 FILLER PIC X VALUE ' '. 07880000 > 078900 03 CALENDAR-YEAR1 PIC 9999. 07890000 > 079000 03 FILLER PIC X(2) VALUE ' ('. 07900000 > 079100 03 CALENDAR-YEAR2 PIC 9999. 07910000 1090c1086 < 109000 07 TERM-TITLE PIC X(19) VALUE 'ANNUAL'. 10900000 --- > 109000 07 TERM-NAME PIC X(19) VALUE 'ANNUAL'. 10900000 1103c1099 < 110300 07 TERM-TITLE PIC X(19) 11030000 --- > 110300 07 TERM-NAME PIC X(19) 11030000 1117c1113 < 111700 07 TERM-TITLE PIC X(19) 11170000 --- > 111700 07 TERM-NAME PIC X(19) 11170000 1131c1127 < 113100 07 TERM-TITLE PIC X(19) 11310000 --- > 113100 07 TERM-NAME PIC X(19) 11310000 1145c1141 < 114500 07 TERM-TITLE PIC X(19) 11450000 --- > 114500 07 TERM-NAME PIC X(19) 11450000 1159c1155 < 115900 07 TERM-TITLE PIC X(19) VALUE 'SUMMER TERM'. 11590000 --- > 115900 07 TERM-NAME PIC X(19) VALUE 'SUMMER TERM'. 11590000 1172c1168 < 117200 07 TERM-TITLE PIC X(19) 11720000 --- > 117200 07 TERM-NAME PIC X(19) 11720000 1186c1182 < 118600 07 TERM-TITLE PIC X(19) 11860000 --- > 118600 07 TERM-NAME PIC X(19) 11860000 1200c1196 < 120000 07 TERM-TITLE PIC X(19) VALUE 'FALL QUARTER'. 12000000 --- > 120000 07 TERM-NAME PIC X(19) VALUE 'FALL QUARTER'. 12000000 1213c1209 < 121300 07 TERM-TITLE PIC X(19) VALUE 'OTHER'. 12130000 --- > 121300 07 TERM-NAME PIC X(19) VALUE 'OTHER'. 12130000 1229c1225 < 122900 05 TERM-TITLE PIC X(19). 12290000 --- > 122900 05 TERM-NAME PIC X(19). 12290000 2076c2072 < 207600 MOVE TERM-TITLE 20760000 --- > 207600 MOVE TERM-NAME 20760000 2080c2076 < 208000 TO TERM-TITLE 20800000 --- > 208000 TO TERM-NAME 20800000 2119a2116 > 212300 PERFORM 2400-INTEGRITY-EDITS. 21230000 2123d2119 < 212300 PERFORM 2400-INTEGRITY-EDITS. 21230000 2269c2265 < 226900 NEXT SENTENCE 22690000 --- > 226900 CONTINUE 22690000 2492d2487 < 249200 PERFORM 2310-VALIDATE-EEO6-ACTIVITY. 24920000 2501,2516d2495 < 250100 2310-VALIDATE-EEO6-ACTIVITY. 25010000 < 250200 MOVE EMPLOYEE-EEO6-ACTIVITY 25020000 < 250300 IN EMPLOYEE-DATA-RECORD 25030000 < 250400 TO CHECK-EEO6. 25040000 < 250500* IF EEO6-UNKNOWN 25050000 < 250600* ADD 1 TO DISTRICT-COUNT (11, 2). 25060000 < 250700 IF EEO6-VALID 25070000 < 250800 MOVE 1 TO EB07-FLAG 25080000 < 250900 ELSE 25090000 < 251000 MOVE VALIDITY-LITERAL 25100000 < 251100 TO DATA-ELEMENT-FLAG 25110000 < 251200 (11, EDIT-COLUMN-INDEX) 25120000 < 251300 ADD 1 TO DISTRICT-COUNT (11, 1) 25130000 < 251400 MOVE 1 TO REJECT-RECORD-FLAG. 25140000 < 251500* 25150000 < 251600* 25160000 (3548a3528 > 355100 ADD 1 TO REPORT-PAGE-COUNTER. 35510000 3551d3530 < 355100 ADD 1 TO REPORT-PAGE-COUNTER. 35510000
Source Code before Change
This code is a sample taken from one of SD's COBOL files (4124 lines), before an update was made.
See updated version of the same file.
000100 IDENTIFICATION DIVISION. 00010000 000200 PROGRAM-ID. EBEDIT. 00020000 000300*AUTHOR. MIS PILOT PROJECT STAFF. 00030000 000400*INSTALLATION. CALIFORNIA COMMUNITY COLLEGES. 00040000 000500*DATE-WRITTEN. MAY 16, 1994. 00050000 000600 DATE-COMPILED. 00060000 000700* 00070000 000800*REMARKS. 00080000 000900* THIS PROGRAM WILL PROCESS THE EMPLOYEE DEMOGRAPHIC DATA FILES00090000 001000* SUBMITTED BY THE DISTRICTS. ALL DATA WILL BE EVALUATED TO 00100000 001100* INSURE THAT IT IS VALID AS DEFINED BY THE DATA ELEMENT 00110000 001200* DICTIONARY. SEVERAL DATA INTEGRITY EDITS WILL ALSO BE DONE. 00120000 001300* ONE OUTPUT FILE WILL BE CREATED. IT WILL BE USED FOR BOTH 00130000 001400* THE REFERENTIAL DATA VALIDATIONS AND FOR UPDATING THE 00140000 001500* TERADATA DATABASE. 00150000 001600* 00160000 001700* MODIFICATIONS 00170000 001800* 00180000 001900* 1. - REMOVED INTEGRITY CHECK ON NEW HIRE DATE RANGE. 00190000 002000* - CHANGED INTEGRITY CHECK AGAINST EB12 AND EB13 00200000 002100* AND EMPLOY CLASSIFICATION TO FIRST CENSUS ONLY. 00210000 002200* - CHANGED STIPEND INTEGRITY: ADDED 'NE 888888' FOR EB13 00220000 002300* AND 'OR 000000' FOR EB12. 00230000 002400* 5/24/95 KEC 00240000 002500* 00250000 002600* 2. - REMOVED "X" (UNKNOWN) AS VALID CODE FOR FOLLOWING 00260000 002700* DATA ELEMENTS: EB03, EB05, EB06 AND EB07. 00270000 002800* 6/2/97 KEC 00280000 002900**************************************************************** 00290000 003000/ 00300000 003100 ENVIRONMENT DIVISION. 00310000 003200 CONFIGURATION SECTION. 00320000 003300 SOURCE-COMPUTER. IBM-370. 00330000 003400 OBJECT-COMPUTER. IBM-370. 00340000 003500* 00350000 003600 INPUT-OUTPUT SECTION. 00360000 003700 FILE-CONTROL. 00370000 003800* 00380000 003900 SELECT EMPLOYEE-DATA-FILE 00390000 004000 ASSIGN TO UT-S-EBRECIN. 00400000 004100* 00410000 004200 SELECT EDITED-EMPLOYEE-DATA-FILE 00420000 004300 ASSIGN TO UT-S-EBRECOUT. 00430000 004400* 00440000 004500 SELECT EDIT-ERROR-REPORT 00450000 004600 ASSIGN TO UT-S-PRINTER1. 00460000 004700* 00470000 004800 SELECT INTEGRITY-ERROR-SUMMARY 00480000 004900 ASSIGN TO UT-S-PRINTER2. 00490000 005000 00500000 005100 SELECT REPORT-TOTALS-FILE 00510000 005200 ASSIGN TO UT-S-TOTSFILE. 00520000 005300/ 00530000 005400 DATA DIVISION. 00540000 005500 FILE SECTION. 00550000 005600* 00560000 005700 FD EMPLOYEE-DATA-FILE 00570000 005800 LABEL RECORDS ARE STANDARD 00580000 005900 RECORDING MODE IS F 00590000 006000 BLOCK CONTAINS 0 RECORDS 00600000 006100 DATA RECORD IS EMPLOYEE-DATA-RECORD. 00610000 006200* 00620000 006300 01 EMPLOYEE-DATA-RECORD. 00630000 006400* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00640000 006500* * 00650000 006600* EMPLOYEE DEMOGRAPHIC DATA RECORDS * 00660000 006700* * 00670000 006800* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00680000 006900* 00690000 007000 03 RECORD-CODE PIC XX. 00700000 007100 88 EMPLOYEE-DATA VALUE 'EB'. 00710000 007200 03 DISTRICT-ID PIC XXX. 00720000 007300 03 TERM-IDENTIFIER. 00730000 007400 05 CALENDAR-YEAR PIC 99. 00740000 007500 05 TERM-CODE PIC X. 00750000 007600 03 EMPLOYEE-IDENTIFIER PIC X(9). 00760000 007700 03 EMPLOYEE-ID-REDF 00770000 007800 REDEFINES EMPLOYEE-IDENTIFIER. 00780000 007900 05 ID-FIRST PIC X. 00790000 008000 05 ID-LAST8 PIC X(8). 00800000 008100 03 EMPLOYEE-IDENTIFIER-STATUS 00810000 008200 PIC X. 00820000 008300 03 EMPLOYEE-BIRTHDATE. 00830000 008400 05 EMPLOYEE-BIRTH-YR PIC XX. 00840000 008500 05 EMPLOYEE-BIRTH-MON PIC XX. 00850000 008600 05 EMPLOYEE-BIRTH-DAY PIC XX. 00860000 008700 03 EMPLOYEE-GENDER PIC X. 00870000 008800 03 EMPLOYEE-RACIAL-ETHNIC-CODE 00880000 008900 PIC XX. 00890000 009000 03 EMPLOYEE-CITIZENSHIP PIC X. 00900000 009100 03 EMPLOYEE-DISABILITY-STATUS 00910000 009200 PIC X. 00920000 009300 03 EMPLOYEE-EEO6-ACTIVITY PIC X. 00930000 009400 03 EMPLOYEE-CLASSIFICATION PIC X. 00940000 009500 03 EMPLOYEE-STATUS PIC X. 00950000 009600 03 EMPLOYEE-DATE-EMPLOYED. 00960000 009700 05 EMPLOYEE-HIRE-YRMON PIC X(4). 00970000 009800 05 EMPLOYEE-HIRE-DAY PIC X(2). 00980000 009900 03 EMPLOYEE-CONTRACT PIC X. 00990000 010000 03 EMPLOYEE-SALARY PIC X(6). 01000000 010100 03 EMPLOYEE-STIPEND PIC X(6). 01010000 010200 03 FILLER PIC X(29). 01020000 010300* 01030000 010400* 01040000 010500 FD EDITED-EMPLOYEE-DATA-FILE 01050000 010600 LABEL RECORDS ARE STANDARD 01060000 010700 RECORDING MODE IS F 01070000 010800 BLOCK CONTAINS 0 RECORDS 01080000 010900 DATA RECORD IS EDITED-EMPLOYEE-DATA-RECORD. 01090000 011000* 01100000 011100 01 EDITED-EMPLOYEE-DATA-RECORD. 01110000 011200* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 01120000 011300* * 01130000 011400* EDITED EMPLOYEE TABLE DATA * 01140000 011500* * 01150000 011600* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 01160000 011700* 01170000 011800 03 DISTRICT-ID PIC XXX. 01180000 011900 03 TERM-IDENTIFIER PIC XXX. 01190000 012000 03 EMPLOYEE-IDENTIFIER PIC X(9). 01200000 012100 03 EMPLOYEE-IDENTIFIER-STATUS 01210000 012200 PIC X. 01220000 012300 03 EMPLOYEE-BIRTHDATE PIC X(6). 01230000 012400 03 EMPLOYEE-AGE PIC XX. 01240000 012500 03 EMPLOYEE-GENDER PIC X. 01250000 012600 03 EMPLOYEE-RACIAL-ETHNIC-CODE 01260000 012700 PIC XX. 01270000 012800 03 EMPLOYEE-CITIZENSHIP PIC X. 01280000 012900 03 EMPLOYEE-DISABILITY-STATUS 01290000 013000 PIC X. 01300000 013100 03 EMPLOYEE-EEO6-ACTIVITY PIC X. 01310000 013200 03 EMPLOYEE-CLASSIFICATION PIC X. 01320000 013300 03 EMPLOYEE-STATUS PIC X. 01330000 013400 03 EMPLOYEE-DATE-EMPLOYED PIC X(6). 01340000 013500 03 EMPLOYEE-CONTRACT PIC X. 01350000 013600 03 EMPLOYEE-SALARY PIC X(6). 01360000 013700 03 EMPLOYEE-STIPEND PIC X(6). 01370000 013800* 01380000 013900* 01390000 014000 FD EDIT-ERROR-REPORT 01400000 014100 LABEL RECORDS ARE OMITTED 01410000 014200 RECORDING MODE IS F 01420000 014300 BLOCK CONTAINS 0 RECORDS 01430000 014400 DATA RECORD IS PRINT-RECORD. 01440000 014500* 01450000 014600 01 PRINT-RECORD PIC X(133). 01460000 014700* 01470000 014800* 01480000 014900 FD INTEGRITY-ERROR-SUMMARY 01490000 015000 LABEL RECORDS ARE OMITTED 01500000 015100 RECORDING MODE IS F 01510000 015200 BLOCK CONTAINS 0 RECORDS 01520000 015300 DATA RECORD IS PRINT-RECORD-2. 01530000 015400* 01540000 015500 01 PRINT-RECORD-2 PIC X(133). 01550000 015600 01560000 015700 01570000 015800 FD REPORT-TOTALS-FILE 01580000 015900 LABEL RECORDS ARE STANDARD 01590000 016000 RECORDING MODE IS F 01600000 016100 BLOCK CONTAINS 0 RECORDS 01610000 016200 DATA RECORDS ARE REPORT-TOTALS-RECORD1, 01620000 016300 REPORT-TOTALS-RECORD2, 01630000 016400 REPORT-TOTALS-RECORD3. 01640000 016500 01650000 016600 01 REPORT-TOTALS-RECORD1. 01660000 016700 03 TOTALS-ID1. 01670000 016800 05 TOTALS-DISTRICT1 PIC XXX. 01680000 016900 05 TOTALS-TYPE1 PIC XX. 01690000 017000 05 TOTALS-FLAG1 PIC X(7). 01700000 017100 03 DED-NUMBER PIC X(4). 01710000 017200 03 EXCEPT-COUNT PIC 9(6). 01720000 017300 03 UNKNOWN-COUNT PIC 9(6). 01730000 017400 03 REASON-COUNT PIC 9(6). 01740000 017500 03 GRP3-COUNT PIC 9(6). 01750000 017600 01760000 017700 01 REPORT-TOTALS-RECORD2. 01770000 017800 03 TOTALS-ID2 PIC X(12). 01780000 017900 03 INTEGRITY-ERROR-CODE PIC XX. 01790000 018000 03 INTEGRITY-ERROR-COUNT PIC 9(6). 01800000 018100 03 FILLER PIC X(20). 01810000 018200 01820000 018300 01 REPORT-TOTALS-RECORD3. 01830000 018400 03 TOTALS-ID3. 01840000 018500 05 TOTALS-DISTRICT3 PIC XXX. 01850000 018600 05 TOTALS-TYPE3 PIC XX. 01860000 018700 05 TOTALS-FLAG3 PIC X(7). 01870000 018800 03 READ-TOTALS PIC 9(6). 01880000 018900 03 REJECTED-TOTALS PIC 9(6). 01890000 019000 03 DATE-FLAG PIC 9(6). 01900000 019100 03 TIME-FLAG PIC 9(4). 01910000 019200 03 FILLER PIC X(6). 01920000 019300* 01930000 019400* 01940000 019500 WORKING-STORAGE SECTION. 01950000 019600* 01960000 019700 01 HOLD-FLAGS-AREA. 01970000 019800 03 BLANK-REC-FLAG PIC 9 VALUE 1. 01980000 019900 03 END-OF-DATA-FLAG PIC 9 VALUE ZERO. 01990000 020000 88 END-OF-EMPLOYEE-DATA VALUE 1. 02000000 020100 03 TERM-TYPE-FLAG PIC X VALUE SPACE. 02010000 020200 03 DATE-HOLD PIC 9(6). 02020000 020300 03 TIME-HOLD. 02030000 020400 05 HH-MM PIC 9(4). 02040000 020500 05 MM-HH PIC 9(4). 02050000 020600 03 HOLD-STATUS-YEAR PIC 99. 02060000 020700 03 HOLD-CALENDAR-YEAR PIC 99. 02070000 020800 03 PARAMETER-VALIDATION-FLAG 02080000 020900 PIC 9 VALUE ZERO. 02090000 021000 88 PARAMETER-FIELD-INVALID VALUE 1. 02100000 021100 03 TABLE-SEARCH-FLAG PIC 9 VALUE ZERO. 02110000 021200 88 TABLE-SEARCH-COMPLETE VALUE 1. 02120000 021300 03 PRINT-LINE-FLAG PIC 9 VALUE ZERO. 02130000 021400 88 PRINT-LINE-FILLED VALUE 1. 02140000 021500 03 PRINT-LINE-COUNT PIC 999 VALUE ZERO. 02150000 021600 03 PRINT-LIMIT PIC 999 VALUE ZERO. 02160000 021700 03 PAGE-FULL-FLAG PIC 9. 02170000 021800 88 PAGE-FULL VALUE 2. 02180000 021900 03 REJECT-RECORD-FLAG PIC 9 VALUE ZERO. 02190000 022000 88 RECORD-REJECTED VALUE 1. 02200000 022100 03 REASONABLE-FLAG PIC X VALUE SPACE. 02210000 022200 88 REASONABLE-EXCEPTION VALUE 'R'. 02220000 022300 03 ORIGINAL-INDEX-VALUE USAGE IS INDEX. 02230000 022400 03 HOLD-DISTRICT-ID PIC X(3) VALUE ZEROES. 02240000 022500 03 HOLD-DISTRICT-NAME PIC X(30) VALUE SPACES. 02250000 022600 03 EMPLOY-BEGIN-DATE-FIRSTCEN. 02260000 022700 05 EMPLOY-BEGIN-FIRSTCEN-YEAR PIC 99. 02270000 022800 05 EMPLOY-BEGIN-FIRSTCEN-MTH PIC 99 02280000 022900 VALUE 07. 02290000 023000 05 EMPLOY-BEGIN-FIRSTCEN-DAY PIC 99 02300000 023100 VALUE 01. 02310000 023200 03 EMPLOY-END-DATE-FIRSTCEN. 02320000 023300 05 EMPLOY-END-FIRSTCEN-YEAR PIC 99. 02330000 023400 05 EMPLOY-END-FIRSTCEN-MTH PIC 99 02340000 023500 VALUE 11. 02350000 023600 05 EMPLOY-END-FIRSTCEN-DAY PIC 99 02360000 023700 VALUE 01. 02370000 023800 03 EMPLOY-BEGIN-DATE-ANNUAL. 02380000 023900 05 EMPLOY-BEGIN-ANNUAL-YEAR PIC 99. 02390000 024000 05 EMPLOY-BEGIN-ANNUAL-MTH PIC 99 02400000 024100 VALUE 07. 02410000 024200 05 EMPLOY-BEGIN-ANNUAL-DAY PIC 99 02420000 024300 VALUE 01. 02430000 024400 03 EMPLOY-END-DATE-ANNUAL. 02440000 024500 05 EMPLOY-END-ANNUAL-YEAR PIC 99. 02450000 024600 05 EMPLOY-END-ANNUAL-MTH PIC 99 02460000 024700 VALUE 06. 02470000 024800 05 EMPLOY-END-ANNUAL-DAY PIC 99 02480000 024900 VALUE 30. 02490000 025000* 02500000 025100* 02510000 025200 01 CHECK-DATA-AREA. 02520000 025300 03 CHECK-ID-STATUS PIC X. 02530000 025400 88 EMPLOYEE-ID-IS-SSN VALUE 'S'. 02540000 025500 88 EMPLOYEE-ID-IS-LOCAL VALUE 'C'. 02550000 025600 88 ID-STATUS-VALID VALUE 'S' 'C'. 02560000 025700 03 CHECK-BIRTH-DATE. 02570000 025800 88 BIRTH-DATE-UNKNOWN VALUE '999999'. 02580000 025900 88 BIRTH-DATE-NOT-APP VALUE '888888'. 02590000 026000 05 CHECK-YR-MON PIC X(4). 02600000 026100 05 CHECK-BIRTH-DAY PIC XX. 02610000 026200 88 BIRTH-DAY-UNKNOWN VALUE '99'. 02620000 026300 88 BIRTH-DAY-NOT-APP VALUE '88'. 02630000 026400 03 CHECK-GENDER PIC X. 02640000 026500 88 GENDER-VALID VALUE 'F' 'M'. 02650000 026600* 88 GENDER-UNKNOWN VALUE 'X'. 02660000 026700 03 CHECK-RACE-ETHNICITY PIC XX. 02670000 026800 88 RACE-ETHNICITY-VALID 02680000 026900 VALUE 'AC' 'AI' 'AJ' 'AK' 'AL' 'AM' 'AV' 'AX' 02690000 027000 'H.' 'PG' 'PH' 'PS' 'PX' 02700000 027100 'B.' 'F.' 'N.' 'W.' 'X.'. 02710000 027200 88 RACE-ETHNICITY-UNKNOWN VALUE 'X.'. 02720000 027300 03 CHECK-CITIZENSHIP PIC X. 02730000 027400 88 U-S-CITIZEN VALUE 'C'. 02740000 027500 88 NON-CITIZEN VALUE 'F'. 02750000 027600 88 CITIZENSHIP-VALID VALUE 'C' 'N' 02760000 027700 'Y'. 02770000 027800* 88 CITIZENSHIP-UNKNOWN VALUE 'X'. 02780000 027900 88 CITIZENSHIP-NOT-APP VALUE 'Y'. 02790000 028000 03 CHECK-DISABILITY PIC X. 02800000 028100 88 DISABILITY-VALID VALUES '1' '2' 'Y'. 02810000 028200* 88 DISABILITY-UNKNOWN VALUES 'X'. 02820000 028300 88 DISABILITY-NOT-APP VALUES 'Y'. 02830000 028400 03 CHECK-EEO6 PIC X. 02840000 028500 88 EEO6-VALID VALUES '1' THRU '7'. 02850000 028600 88 EEO6-FACULTY VALUE '2'. 02860000 028700* 88 EEO6-UNKNOWN VALUE 'X'. 02870000 028800 03 CHECK-CLASSIFICATION PIC X. 02880000 028900 88 CLASSIFICATION-VALID VALUES 'A' 'C' 'O' 02890000 029000 'P' 'R' 'T'. 02900000 029100 88 OTHER-EMPLOYEE VALUE 'O'. 02910000 029200 88 TEMP-EMPLOYEE VALUE 'T'. 02920000 029300 03 CHECK-STATUS PIC X. 02930000 029400 88 STATUS-VALID VALUES 'C' 'N' 'P' 02940000 029500 'R' 'Y'. 02950000 029600 88 NEW-HIRE VALUE 'N'. 02960000 029700 88 STATUS-NOT-APP VALUE 'Y'. 02970000 029800 03 CHECK-HIRE-DATE. 02980000 029900 88 HIRE-DATE-UNKNOWN VALUE '999999'. 02990000 030000 88 HIRE-DATE-NOT-APP VALUE '888888'. 03000000 030100 05 CHECK-YR-MON PIC X(4). 03010000 030200 05 CHECK-HIRE-DAY PIC XX. 03020000 030300 88 HIRE-DAY-UNKNOWN VALUE '99'. 03030000 030400 03 CHECK-CONTRACT PIC X. 03040000 030500 88 CONTRACT-VALID VALUE '1' '2' '3' 03050000 030600 'Y'. 03060000 030700 88 KNOWN-CONTRACT-LENGTH VALUE '1' '2' '3'. 03070000 030800 88 CONTRACT-NOT-APP VALUE 'Y'. 03080000 030900 03 CHECK-SALARY PIC 9(6). 03090000 031000 88 UNPAID-LEAVE VALUE 0. 03100000 031100 88 SALARY-UNKNOWN VALUE 999999. 03110000 031200 88 SALARY-NOT-APP VALUE 888888. 03120000 031300 03 CHECK-STIPEND PIC 9(6). 03130000 031400 88 NO-STIPEND VALUE 0. 03140000 031500 88 STIPEND-RECEIVED VALUES 1 THRU 888887. 03150000 031600 88 STIPEND-UNKNOWN VALUE 999999. 03160000 031700 88 STIPEND-NOT-APP VALUE 888888. 03170000 031800* 03180000 031900* 03190000 032000 01 LITERALS-AREA. 03200000 032100 03 VALIDITY-LITERAL PIC X VALUE 'V'. 03210000 032200 03 INTEGRITY-LITERAL PIC X VALUE 'I'. 03220000 032300 03 REASONABLE-LITERAL PIC X VALUE 'R'. 03230000 032400 03 REJECTED-LITERAL PIC X(8) VALUE 'REJECTED'. 03240000 032500 03 NOT-APPL-LITERAL PIC X(6) VALUE 'YYYYYY'. 03250000 032600 03 NOT-APPL-DATE PIC X(6) VALUE '080808'. 03260000 032700 03 NOT-APPL-DAY PIC XX VALUE '08'. 03270000 032800 03 UNKNOWN-DATE PIC X(6) VALUE '090909'. 03280000 032900 03 UNKNOWN-DAY PIC XX VALUE '09'. 03290000 033000 03 NOT-APP-LITERAL PIC X(7) VALUE ' N/A'. 03300000 033100 03 INVALID-DISTRICT-INDEX-VALUE 03310000 033200 PIC 9 VALUE 2. 03320000 033300 03 INVALID-PF-INDEX-VALUE PIC 9 VALUE 3. 03330000 033400 03 INVALID-TERM-INDEX-VALUE 03340000 033500 PIC 9 VALUE 1. 03350000 033600 03 REPORT-ID. 03360000 033700 05 FILLER PIC X(6) VALUE 'EBEDIT'. 03370000 033800 05 FILLER PIC X(6) VALUE SPACES. 03380000 033900 03 REPORT-SUM1. 03390000 034000 05 REPORT-CODE1 PIC XXX. 03400000 034100 05 FILLER PIC X(9) VALUE 'EBSYNSUM1'. 03410000 034200 03 REPORT-SUM2. 03420000 034300 05 REPORT-CODE2 PIC XXX. 03430000 034400 05 FILLER PIC X(9) VALUE 'EBSYNSUM2'. 03440000 034500 03 REPORT-SUM3. 03450000 034600 05 REPORT-CODE3 PIC XXX. 03460000 034700 05 FILLER PIC X(9) VALUE 'EBSYNSUM3'. 03470000 034800* 03480000 034900* 03490000 035000 01 EMPLOYEE-KEY-AREA. 03500000 035100 03 KEY-DATE. 03510000 035200 05 YEAR-1 PIC 9. 03520000 035300 05 YEAR-2 PIC 9. 03530000 035400 05 DAY-1 PIC 9. 03540000 035500 05 DAY-2 PIC 9. 03550000 035600 05 DAY-3 PIC 9. 03560000 035700 03 KEY-TIME. 03570000 035800 05 HOUR-1 PIC 9. 03580000 035900 05 KEY-TIME-ZONE. 03590000 036000 07 HOUR-2 PIC 9. 03600000 036100 07 MINUTE-1 PIC 9. 03610000 036200 07 MINUTE-2 PIC 9. 03620000 036300 07 SECOND-1 PIC 9. 03630000 036400 07 SECOND-2 PIC 9. 03640000 036500 07 HUNDRED-1 PIC 9. 03650000 036600 05 HUNDRED-2 PIC 9. 03660000 036700 03 BUILD-KEY-AREA. 03670000 036800 05 KEY-ELEMENT-1 PIC 9. 03680000 036900 05 KEY-ELEMENT-2 PIC 9. 03690000 037000 05 KEY-ELEMENT-3 PIC 9. 03700000 037100 05 KEY-ELEMENT-4 PIC 9(6). 03710000 037200* 03720000 037300* 03730000 037400 01 DATA-COMP-AREA. 03740000 037500 03 HOLD-BIRTHDATE. 03750000 037600 05 BIRTH-YEAR PIC 99. 03760000 037700 05 BIRTH-MONTH PIC 99. 03770000 037800 05 BIRTH-DAY PIC 99. 03780000 037900 03 COMPUTED-AGE PIC 99. 03790000 038000 88 TOO-YOUNG VALUES 0 THRU 16. 03800000 038100 88 TOO-OLD VALUES 73 THRU 99. 03810000 038200* 03 COMPUTED-SENIORITY PIC 99. 03820000 038300* 88 NO-SENIORITY VALUES 0, 1. 03830000 038400 03 HOLD-HIREDATE. 03840000 038500 05 HIRE-YEAR PIC 99. 03850000 038600 05 HIRE-MONTH PIC 99. 03860000 038700 05 HIRE-DAY PIC 99. 03870000 038800* 03880000 038900* 03890000 039000 01 VALID-DATA-FLAGS. 03900000 039100 03 EB00-FLAG PIC 9. 03910000 039200 88 EB00-VALID VALUE 1. 03920000 039300 88 EB00-GROUP3 VALUE 2. 03930000 039400 03 EB01-FLAG PIC 9. 03940000 039500 88 EB01-VALID VALUE 1. 03950000 039600 88 EB01-GROUP3 VALUE 2. 03960000 039700 03 EB02-FLAG PIC 9. 03970000 039800 88 EB02-VALID VALUE 1. 03980000 039900 88 EB02-GROUP3 VALUE 2. 03990000 040000 03 EB03-FLAG PIC 9. 04000000 040100 88 EB03-VALID VALUE 1. 04010000 040200 88 EB03-GROUP3 VALUE 2. 04020000 040300 03 EB04-FLAG PIC 9. 04030000 040400 88 EB04-VALID VALUE 1. 04040000 040500 88 EB04-GROUP3 VALUE 2. 04050000 040600 03 EB05-FLAG PIC 9. 04060000 040700 88 EB05-VALID VALUE 1. 04070000 040800 88 EB05-GROUP3 VALUE 2. 04080000 040900 03 EB06-FLAG PIC 9. 04090000 041000 88 EB06-VALID VALUE 1. 04100000 041100 88 EB06-GROUP3 VALUE 2. 04110000 041200 03 EB07-FLAG PIC 9. 04120000 041300 88 EB07-VALID VALUE 1. 04130000 041400 88 EB07-GROUP3 VALUE 2. 04140000 041500 03 EB08-FLAG PIC 9. 04150000 041600 88 EB08-VALID VALUE 1. 04160000 041700 88 EB08-GROUP3 VALUE 2. 04170000 041800 03 EB09-FLAG PIC 9. 04180000 041900 88 EB09-VALID VALUE 1. 04190000 042000 88 EB09-GROUP3 VALUE 2. 04200000 042100 03 EB10-FLAG PIC 9. 04210000 042200 88 EB10-VALID VALUE 1. 04220000 042300 88 EB10-GROUP3 VALUE 2. 04230000 042400 03 EB11-FLAG PIC 9. 04240000 042500 88 EB11-VALID VALUE 1. 04250000 042600 88 EB11-GROUP3 VALUE 2. 04260000 042700 03 EB12-FLAG PIC 9. 04270000 042800 88 EB12-VALID VALUE 1. 04280000 042900 88 EB12-GROUP3 VALUE 2. 04290000 043000 03 EB13-FLAG PIC 9. 04300000 043100 88 EB13-VALID VALUE 1. 04310000 043200 88 EB13-GROUP3 VALUE 2. 04320000 043300* 04330000 043400* 04340000 043500 01 EDIT-ERROR-COUNT-TABLE VALUE ZEROS. 04350000 043600 03 EDIT-ERROR-COUNT-ROWS 04360000 043700 OCCURS 17 TIMES 04370000 043800 INDEXED BY ERROR-COUNT-ROW-INDEX. 04380000 043900 05 EDIT-ERROR-COUNT-COLS 04390000 044000 OCCURS 4 TIMES 04400000 044100 INDEXED BY ERROR-COUNT-COL-INDEX. 04410000 044200 07 ERROR-COUNT PIC 9(6). 04420000 044300* 04430000 044400* 04440000 044500 01 DISTRICT-ERROR-COUNT-TABLE VALUE ZEROS. 04450000 044600 03 DISTRICT-ERROR-COUNT-ROWS 04460000 044700 OCCURS 17 TIMES 04470000 044800 INDEXED BY DISTRICT-COUNT-ROW-INDEX. 04480000 044900 05 DISTRICT-ERROR-COUNT-COLS 04490000 045000 OCCURS 4 TIMES 04500000 045100 INDEXED BY DISTRICT-COUNT-COL-INDEX. 04510000 045200 07 DISTRICT-COUNT 04520000 045300 PIC 9(6). 04530000 045400* 04540000 045500* 04550000 045600 01 DISTRICT-INTEGRITY-COUNTS VALUE ZEROS. 04560000 045700 03 DISTRICT-INTEGRITY-ERROR 04570000 045800 OCCURS 12 TIMES 04580000 045900 INDEXED BY DISTRICT-INTEGRITY-INDEX. 04590000 046000 05 DISTRICT-INT-CNT PIC 9(6). 04600000 046100* 04610000 046200* 04620000 046300 01 DISTRICT-TOTAL-TABLE VALUE ZEROS. 04630000 046400 03 DISTRICT-TOTAL-ENTRIES. 04640000 046500 05 DISTRICT-RECORDS-READ 04650000 046600 PIC 9(6). 04660000 046700 05 DISTRICT-RECORDS-REJECTED 04670000 046800 PIC 9(6). 04680000 046900 05 DISTRICT-EDITED-RECS-WRITTEN 04690000 047000 PIC 9(6). 04700000 047100 03 DISTRICT-TOTAL-ENTRY 04710000 047200 REDEFINES DISTRICT-TOTAL-ENTRIES 04720000 047300 OCCURS 3 TIMES 04730000 047400 INDEXED BY DISTRICT-TOTAL-INDEX. 04740000 047500 05 DISTRICT-TOTAL PIC 9(6). 04750000 047600* 04760000 047700* 04770000 047800 01 EDIT-ERROR-LITERAL-TABLE. 04780000 047900 03 EDIT-ERROR-LITERAL-ENTRIES. 04790000 048000 05 FILLER PIC X(21) 04800000 048100 VALUE 'EMPLOYEE ID EB00'. 04810000 048200 05 FILLER PIC X(21) 04820000 048300 VALUE 'RECORD CODE GI90'. 04830000 048400 05 FILLER PIC X(21) 04840000 048500 VALUE 'DISTRICT ID GI01'. 04850000 048600 05 FILLER PIC X(21) 04860000 048700 VALUE 'TERM ID GI03'. 04870000 048800 05 FILLER PIC X(21) 04880000 048900 VALUE 'EMPLOYEE ID STAT EB01'. 04890000 049000 05 FILLER PIC X(21) 04900000 049100 VALUE 'BIRTH DATE EB02'. 04910000 049200 05 FILLER PIC X(21) 04920000 049300 VALUE 'GENDER EB03'. 04930000 049400 05 FILLER PIC X(21) 04940000 049500 VALUE 'ETHNICITY EB04'. 04950000 049600 05 FILLER PIC X(21) 04960000 049700 VALUE 'CITIZENSHIP EB05'. 04970000 049800 05 FILLER PIC X(21) 04980000 049900 VALUE 'DISAB STATUS EB06'. 04990000 050000 05 FILLER PIC X(21) 05000000 050100 VALUE 'EEO6 ACTIVITY EB07'. 05010000 050200 05 FILLER PIC X(21) 05020000 050300 VALUE 'EMPLOY CLASS EB08'. 05030000 050400 05 FILLER PIC X(21) 05040000 050500 VALUE 'EMPLOY STATUS EB09'. 05050000 050600 05 FILLER PIC X(21) 05060000 050700 VALUE 'HIRE DATE EB10'. 05070000 050800 05 FILLER PIC X(21) 05080000 050900 VALUE 'CONTRACT EB11'. 05090000 051000 05 FILLER PIC X(21) 05100000 051100 VALUE 'SALARY EB12'. 05110000 051200 05 FILLER PIC X(21) 05120000 051300 VALUE 'STIPEND EB13'. 05130000 051400 05 FILLER PIC X(21) 05140000 051500 VALUE ' ACTION:'. 05150000 051600 03 EDIT-ERROR-LITERAL-ENTRY 05160000 051700 REDEFINES EDIT-ERROR-LITERAL-ENTRIES 05170000 051800 OCCURS 18 TIMES 05180000 051900 INDEXED BY EDIT-ERROR-LITERAL-INDEX. 05190000 052000 05 DATA-ELEMENT-LITERAL. 05200000 052100 07 ELEMENT-NAME PIC X(17). 05210000 052200 07 ELEMENT-NUMBER PIC X(4). 05220000 052300* 05230000 052400* 05240000 052500 01 ERROR-MESSAGE-TABLE. 05250000 052600 03 ERROR-MESSAGE-ENTRIES. 05260000 052700 05 INVALID-TERM-MESSAGE. 05270000 052800 07 FILLER PIC X(13) VALUE 'INVALID TERM'. 05280000 052900 07 FILLER PIC X(17) VALUE 'IN PARAMETERS'.05290000 053000 05 INVALID-DISTRICT-MESSAGE. 05300000 053100 07 FILLER PIC X(8) VALUE 'INVALID'. 05310000 053200 07 FILLER PIC X(12) VALUE 'DISTRICT IN'. 05320000 053300 07 FILLER PIC X(10) VALUE 'PARAMETERS'. 05330000 053400 05 INVALID-PF-MESSAGE. 05340000 053500 07 FILLER PIC X(8) VALUE 'INVALID'. 05350000 053600 07 FILLER PIC X(11) VALUE 'PRINT FLAG'. 05360000 053700 07 FILLER PIC X(11) VALUE 'PARAMETER'. 05370000 053800 03 ERROR-MESSAGE-ENTRY 05380000 053900 REDEFINES ERROR-MESSAGE-ENTRIES 05390000 054000 OCCURS 3 TIMES 05400000 054100 INDEXED BY ERROR-MESSAGE-INDEX. 05410000 054200 05 ERROR-MESSAGE PIC X(30). 05420000 054300* 05430000 054400* 05440000 054500 01 TOTAL-DESCRIPTIONS-TABLE. 05450000 054600 03 TOTAL-DESCRIPTIONS-ENTRIES. 05460000 054700 05 TOTAL-RECORDS-READ PIC X(30) 05470000 054800 VALUE 'TOTAL RECORDS READ : '. 05480000 054900 05 TOTAL-REJECTIONS PIC X(30) 05490000 055000 VALUE 'TOTAL RECORDS REJECTED : '. 05500000 055100 05 TOTAL-BASE-RECORDS PIC X(30) 05510000 055200 VALUE 'TOTAL RECORDS WRITTEN : '. 05520000 055300 03 TOTAL-DESCRIPTIONS-ENTRY 05530000 055400 REDEFINES TOTAL-DESCRIPTIONS-ENTRIES 05540000 055500 OCCURS 3 TIMES 05550000 055600 INDEXED BY TOTAL-DESCRIPTIONS-INDEX. 05560000 055700 05 TOTAL-DESCRIPTION PIC X(30). 05570000 055800* 05580000 055900* 05590000 056000 01 EDIT-ERROR-TABLE VALUE SPACES. 05600000 056100 03 EDIT-ERROR-ROWS 05610000 056200 OCCURS 18 TIMES 05620000 056300 INDEXED BY EDIT-ROW-INDEX. 05630000 056400 05 EDIT-ERROR-COLUMNS 05640000 056500 OCCURS 6 TIMES 05650000 056600 INDEXED BY EDIT-COLUMN-INDEX. 05660000 056700 07 DATA-ELEMENT-FLAG 05670000 056800 PIC X. 05680000 056900 07 FILLER PIC X. 05690000 057000 07 DATA-ELEMENT PIC X(14). 05700000 057100* 05710000 057200* 05720000 057300* * * * * * * * REPORT LINE FORMATS * * * * * * * * 05730000 057400* 05740000 057500 01 EDIT-ERROR-PRINT-LINE VALUE SPACES. 05750000 057600 03 FILLER PIC X. 05760000 057700 03 DETAIL-LITERAL-AREA PIC X(21). 05770000 057800 03 EDIT-ERROR-DATA-ENTRY 05780000 057900 OCCURS 6 TIMES 05790000 058000 INDEXED BY EDIT-ERROR-DATA-INDEX. 05800000 058100 05 FILLER PIC XX. 05810000 058200 05 VALIDATION-FLAG PIC X. 05820000 058300 05 FILLER PIC X. 05830000 058400 05 DATA-ELEMENT-OUT PIC X(14). 05840000 058500* 05850000 058600* 05860000 058700 01 TOTAL-DETAIL-LINE VALUE SPACES. 05870000 058800 03 FILLER PIC X. 05880000 058900 03 FILLER PIC X(46). 05890000 059000 03 TOTAL-DESCRIPTION PIC X(30). 05900000 059100 03 TOTAL-FIELD PIC ZZZ,ZZ9. 05910000 059200* 05920000 059300* 05930000 059400 01 ELEMENT-TOTAL-DETAIL-LINE VALUE SPACE. 05940000 059500 03 FILLER PIC X. 05950000 059600 03 FILLER PIC X(16). 05960000 059700 03 ELEMENT-LITERAL-AREA PIC X(21). 05970000 059800 03 FILLER PIC X(9). 05980000 059900 03 ELEMENT-COLUMNS 05990000 060000 OCCURS 4 TIMES 06000000 060100 INDEXED BY ELEMENT-COLUMN-INDEX. 06010000 060200 05 ELEMENT-TOTAL PIC ZZZ,ZZ9. 06020000 060300 05 ELEMENT-TOTAL-RED REDEFINES ELEMENT-TOTAL 06030000 060400 PIC X(7). 06040000 060500 05 FILLER PIC X(14). 06050000 060600* 06060000 060700* * * * * * * * REPORT HEADINGS * * * * * * * * 06070000 060800* 06080000 060900 01 HEADER-WORKAREA. 06090000 061000* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 06100000 061100* * 06110000 061200* H E A D E R W O R K A R E A * 06120000 061300* * 06130000 061400* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 06140000 061500* 06150000 061600 03 HEADING-LINE PIC X(133) VALUE SPACES. 06160000 061700 03 HEADING-TITLE-LINE 06170000 061800 REDEFINES HEADING-LINE. 06180000 061900 05 FILLER PIC X(29). 06190000 062000 05 WIDE-HEADING-LOCATION 06200000 062100 PIC X(75). 06210000 062200 05 FILLER PIC X(29). 06220000 062300 03 HEADING-STATISTICS-LINE 06230000 062400 REDEFINES HEADING-LINE. 06240000 062500 05 FILLER PIC X. 06250000 062600 05 LEFT-STATISTIC PIC X(31). 06260000 062700 05 FILLER PIC X(26). 06270000 062800 05 NARROW-RIGHT-STATISTIC 06280000 062900 PIC X(18). 06290000 063000 05 FILLER PIC X(39). 06300000 063100 05 WIDE-RIGHT-STATISTIC 06310000 063200 PIC X(18). 06320000 063300 03 HEADER-STATISTICS. 06330000 063400 05 HEADER-REPORT-PAGE. 06340000 063500 07 FILLER PIC X(8) VALUE SPACES. 06350000 063600 07 FILLER PIC X(5) VALUE 'PAGE '. 06360000 063700 07 HEADER-PAGE-NUMBER 06370000 063800 PIC Z(5) VALUE SPACES. 06380000 063900 05 HEADER-REPORT-DATE. 06390000 064000 07 HEADER-MONTH PIC X(9) VALUE SPACES. 06400000 064100 07 FILLER PIC X VALUE SPACE. 06410000 064200 07 HEADER-DAY PIC Z(2) VALUE SPACES. 06420000 064300 07 FILLER PIC X(4) VALUE ', 19'. 06430000 064400 07 HEADER-YEAR PIC Z(2) VALUE SPACES. 06440000 064500 05 HEADER-REPORT-TIME. 06450000 064600 07 FILLER PIC X(6) VALUE 'TIME'. 06460000 064700 07 HEADER-TIME-AREA VALUE SPACES. 06470000 064800 09 HEADER-TIME PIC Z9/99. 06480000 064900 05 HEADER-REPORT-ID. 06490000 065000 07 FILLER PIC X(11) VALUE 'REPORT-ID: '. 06500000 065100 07 PROGRAM-NAME PIC X(20) VALUE SPACES. 06510000 065200 03 HEADER-MONTH-NAMES. 06520000 065300 05 JANUARY. 06530000 065400 07 FULL-MONTH-NAME PIC X(9) VALUE ' JANUARY'. 06540000 065500 05 FEBRUARY. 06550000 065600 07 FULL-MONTH-NAME PIC X(9) VALUE ' FEBRUARY'. 06560000 065700 05 MARCH. 06570000 065800 07 FULL-MONTH-NAME PIC X(9) VALUE ' MARCH'. 06580000 065900 05 APRIL. 06590000 066000 07 FULL-MONTH-NAME PIC X(9) VALUE ' APRIL'. 06600000 066100 05 MAY. 06610000 066200 07 FULL-MONTH-NAME PIC X(9) VALUE ' MAY'. 06620000 066300 05 JUNE. 06630000 066400 07 FULL-MONTH-NAME PIC X(9) VALUE ' JUNE'. 06640000 066500 05 JULY. 06650000 066600 07 FULL-MONTH-NAME PIC X(9) VALUE ' JULY'. 06660000 066700 05 AUGUST. 06670000 066800 07 FULL-MONTH-NAME PIC X(9) VALUE ' AUGUST'. 06680000 066900 05 SEPTEMBER. 06690000 067000 07 FULL-MONTH-NAME PIC X(9) VALUE 'SEPTEMBER'. 06700000 067100 05 OCTOBER. 06710000 067200 07 FULL-MONTH-NAME PIC X(9) VALUE ' OCTOBER'. 06720000 067300 05 NOVEMBER. 06730000 067400 07 FULL-MONTH-NAME PIC X(9) VALUE ' NOVEMBER'. 06740000 067500 05 DECEMBER. 06750000 067600 07 FULL-MONTH-NAME PIC X(9) VALUE ' DECEMBER'. 06760000 067700 03 HEADER-MONTH-TABLE 06770000 067800 REDEFINES HEADER-MONTH-NAMES 06780000 067900 OCCURS 12 TIMES 06790000 068000 INDEXED BY HEADER-MONTH-INDEX. 06800000 068100 05 HEADER-MONTH-NAME. 06810000 068200 07 FULL-MONTH-NAME PIC X(9). 06820000 068300 03 HEADER-HOLDING-AREA. 06830000 068400 05 REPORT-DATE PIC 9(6). 06840000 068500 05 EXPANDED-REPORT-DATE 06850000 068600 REDEFINES REPORT-DATE. 06860000 068700 07 REPORT-YEAR PIC 9(2). 06870000 068800 07 REPORT-MONTH PIC 9(2). 06880000 068900 07 REPORT-DAY PIC 9(2). 06890000 069000 05 REPORT-TIME PIC 9(8). 06900000 069100 05 EXPANDED-REPORT-TIME 06910000 069200 REDEFINES REPORT-TIME. 06920000 069300 07 ACTUAL-CLOCK-TIME 06930000 069400 PIC 9(4). 06940000 069500 07 FILLER PIC 9(4). 06950000 069600 05 MIS-PILOT-TITLE. 06960000 069700 07 FILLER PIC X(23) VALUE SPACES. 06970000 069800 07 FILLER PIC X(11) VALUE 'MANAGEMENT'. 06980000 069900 07 FILLER PIC X(12) VALUE 'INFORMATION'. 06990000 070000 07 FILLER PIC X(6) VALUE 'SYSTEM'. 07000000 070100 05 COMMUNITY-COLLEGE-TITLE. 07010000 070200 07 FILLER PIC X(9) VALUE SPACES. 07020000 070300 07 FILLER PIC X(12) VALUE 'C A L I F O '. 07030000 070400 07 FILLER PIC X(12) VALUE 'R N I A C '. 07040000 070500 07 FILLER PIC X(12) VALUE 'O M M U N I '. 07050000 070600 07 FILLER PIC X(12) VALUE 'T Y C O L '. 07060000 070700 07 FILLER PIC X(9) VALUE 'L E G E S'. 07070000 070800 05 MAXIMUM-LINES-PER-PAGE 07080000 070900 PIC 9(2) VALUE 59. 07090000 071000 03 HEADER-SWITCHES-AND-FLAGS. 07100000 071100 05 FIRST-PAGE-SWITCH PIC 9 VALUE 1. 07110000 071200 88 FIRST-PAGE VALUE 1. 07120000 071300 05 FIRST-PAGE-FLAG PIC 9 VALUE 1. 07130000 071400 05 REPORT-WIDTH-SWITCH PIC X VALUE 'W'. 07140000 071500 88 WIDE-PAPER-REQUIRED VALUE 'W'. 07150000 071600 88 NARROW-PAPER-REQUIRED VALUE 'N'. 07160000 071700 05 WIDE-PAPER-FLAG PIC X VALUE 'W'. 07170000 071800 05 NARROW-PAPER-FLAG PIC X VALUE 'N'. 07180000 071900 03 HEADER-WORKAREA-COUNTERS VALUE ZEROS. 07190000 072000 05 REPORT-PAGE-COUNTER PIC 9(5). 07200000 072100 05 REPORT-LINE-COUNTER PIC 9(2). 07210000 072200 88 TOP-OF-PAGE VALUE ZEROS. 07220000 072300* 07230000 072400* 07240000 072500 01 REPORT-COLUMN-LINE-1. 07250000 072600 03 FILLER PIC X. 07260000 072700 03 FILLER PIC X(12) VALUE 'DATA ELEMENT'. 07270000 072800 03 FILLER PIC X(4) VALUE SPACE. 07280000 072900 03 FILLER PIC X(4) VALUE 'DED#'. 07290000 073000* 07300000 073100* 07310000 073200 01 ELEMENT-COLUMN-LINE-1. 07320000 073300 03 FILLER PIC X VALUE SPACE. 07330000 073400 03 FILLER PIC X(48) VALUE SPACE. 07340000 073500 03 FILLER PIC X(5) 07350000 073600 VALUE 'TOTAL'. 07360000 073700 03 FILLER PIC X(16) VALUE SPACE. 07370000 073800 03 FILLER PIC X(5) 07380000 073900 VALUE 'TOTAL'. 07390000 074000 03 FILLER PIC X(16) VALUE SPACE. 07400000 074100 03 FILLER PIC X(5) 07410000 074200 VALUE 'TOTAL'. 07420000 074300 03 FILLER PIC X(16) VALUE SPACE. 07430000 074400 03 FILLER PIC X(5) 07440000 074500 VALUE 'TOTAL'. 07450000 074600* 07460000 074700* 07470000 074800 01 ELEMENT-COLUMN-LINE-2. 07480000 074900 03 FILLER PIC X VALUE SPACE. 07490000 075000 03 FILLER PIC X(47) VALUE SPACE. 07500000 075100 03 FILLER PIC X(6) 07510000 075200 VALUE 'FIELD'. 07520000 075300 03 FILLER PIC X(15) VALUE SPACE. 07530000 075400 03 FILLER PIC X(7) 07540000 075500 VALUE 'UNKNOWN'. 07550000 075600 03 FILLER PIC X(10) VALUE SPACE. 07560000 075700 03 FILLER PIC X(14) 07570000 075800 VALUE 'REASONABLENESS'. 07580000 075900 03 FILLER PIC X(11) VALUE SPACE. 07590000 076000 03 FILLER PIC X(7) 07600000 076100 VALUE 'GROUP 3'. 07610000 076200* 07620000 076300* 07630000 076400 01 ELEMENT-COLUMN-LINE-3. 07640000 076500 03 FILLER PIC X VALUE SPACE. 07650000 076600 03 FILLER PIC X(16) VALUE SPACE. 07660000 076700 03 FILLER PIC X(21) 07670000 076800 VALUE 'DATA ELEMENT DED#'. 07680000 076900 03 FILLER PIC X(8) VALUE SPACE. 07690000 077000 03 FILLER PIC X(10) VALUE 'EXCEPTIONS'. 07700000 077100 03 FILLER PIC X(13) VALUE SPACE. 07710000 077200 03 FILLER PIC X(6) VALUE 'VALUES'. 07720000 077300 03 FILLER PIC X(13) VALUE SPACE. 07730000 077400 03 FILLER PIC X(10) VALUE 'EXCEPTIONS'. 07740000 077500 03 FILLER PIC X(12) VALUE SPACE. 07750000 077600 03 FILLER PIC X(8) VALUE '(SPACES)'. 07760000 077700* 07770000 077800* 07780000 077900 01 REPORT-TITLE-LINE-1. 07790000 078000 03 FILLER PIC X(45) VALUE SPACES. 07800000 078100 03 FILLER PIC X(42) 07810000 078200 VALUE 'EMPLOYEE DEMOGRAPHIC DATA SYNTACTICAL EDIT'. 07820000 078300* 07830000 078400* 07840000 078500 01 REPORT-TITLE-LINE-2. 07850000 078600 03 FILLER PIC X(50) VALUE SPACES. 07860000 078700 03 TERM-TITLE PIC X(19). 07870000 078800 03 FILLER PIC XXX VALUE ' 19'. 07880000 078900 03 CALENDAR-YEAR1 PIC 99. 07890000 079000 03 FILLER PIC X(4) VALUE ' ('. 07900000 079100 03 CALENDAR-YEAR2 PIC 99. 07910000 079200 03 FILLER PIC X VALUE '-'. 07920000 079300 03 TERM-CODE PIC X. 07930000 079400 03 FILLER PIC X VALUE ')'. 07940000 079500* 07950000 079600* 07960000 079700 01 REPORT-TITLE-LINE-3. 07970000 079800 03 FILLER PIC X(52) VALUE SPACES. 07980000 079900 03 DISTRICT-NAME PIC X(30). 07990000 080000* 08000000 080100* 08010000 080200 01 REPORT-TITLE-LINE-3A. 08020000 080300 03 FILLER PIC X(60) VALUE SPACES. 08030000 080400 03 FILLER PIC X(13) VALUE 'DETAIL REPORT'.08040000 080500* 08050000 080600* 08060000 080700 01 REPORT-TITLE-LINE-5. 08070000 080800 03 FILLER PIC X(44) VALUE SPACES. 08080000 080900 03 FILLER PIC X(45) 08090000 081000 VALUE 'SUMMARY DISTRICT EDIT ERROR TOTALS BY ELEMENT'.08100000 081100* 08110000 081200* 08120000 081300 01 REPORT-TITLE-LINE-7. 08130000 081400 03 FILLER PIC X(43) VALUE SPACES. 08140000 081500 03 FILLER PIC X(47) 08150000 081600 VALUE 'SUMMARY DISTRICT TOTAL INTEGRITY ERRORS BY TYPE'. 08160000 081700* 08170000 081800* 08180000 081900 01 REPORT-COLUMN-TITLES. 08190000 082000 05 FILLER PIC XX VALUE SPACES. 08200000 082100 05 FILLER PIC X(5) VALUE 'DATA'. 08210000 082200 05 FILLER PIC X(11) VALUE 'ELEMENTS'. 08220000 082300 05 FILLER PIC X(4) VALUE 'DED#'. 08230000 082400* 08240000 082500* 08250000 082600 01 DISTRICT-TOTAL-HEADING. 08260000 082700 03 FILLER PIC X VALUE SPACES. 08270000 082800 03 FILLER PIC X(53) VALUE SPACES. 08280000 082900 03 FILLER PIC X(24) 08290000 083000 VALUE 'DISTRICT SUMMARY TOTALS:'. 08300000 083100 03 FILLER PIC X(55) VALUE SPACES. 08310000 083200* 08320000 083300* 08330000 083400 01 INTEGRITY-ERROR-1. 08340000 083500 03 FILLER PIC X. 08350000 083600 03 FILLER PIC XX VALUE SPACES. 08360000 083700 03 INT-CNT-OUT-1 PIC ZZZ,ZZ9. 08370000 083800 03 FILLER PIC XXX VALUE SPACES. 08380000 083900 03 FILLER PIC X(40) 08390000 084000 VALUE 'EMPLOYEE ID STATUS (EB01) = S BUT THE EM'. 08400000 084100 03 FILLER PIC X(40) 08410000 084200 VALUE 'PLOYEE ID (EB00) IS NOT A VALID SOCIAL S'. 08420000 084300 03 FILLER PIC X(40) 08430000 084400 VALUE 'ECURITY NUMBER. '. 08440000 084500* 08450000 084600* 08460000 084700 01 INTEGRITY-ERROR-2. 08470000 084800 03 FILLER PIC X. 08480000 084900 03 FILLER PIC XX VALUE SPACES. 08490000 085000 03 INT-CNT-OUT-2 PIC ZZZ,ZZ9. 08500000 085100 03 FILLER PIC XXX VALUE SPACES. 08510000 085200 03 FILLER PIC X(41) 08520000 085300 VALUE 'BIRTH DATE (EB02) IS CODED AS 8"S BUT THE'. 08530000 085400 03 FILLER PIC X(40) 08540000 085500 VALUE ' EMPLOYEE CLASSIFICATION (EB08) IS NOT C'. 08550000 085600 03 FILLER PIC X(40) 08560000 085700 VALUE 'ODED AS AN "O" '. 08570000 085800* 08580000 085900* 08590000 086000 01 INTEGRITY-ERROR-3. 08600000 086100 03 FILLER PIC X. 08610000 086200 03 FILLER PIC XX VALUE SPACES. 08620000 086300 03 INT-CNT-OUT-3 PIC ZZZ,ZZ9. 08630000 086400 03 FILLER PIC XXX VALUE SPACES. 08640000 086500 03 FILLER PIC X(40) 08650000 086600 VALUE 'CITIZENSHIP (EB05) IS CODED AS A "Y" BUT'. 08660000 086700 03 FILLER PIC X(40) 08670000 086800 VALUE ' EMPLOYEE CLASSIFICATION (EB08) IS NOT C'. 08680000 086900 03 FILLER PIC X(40) 08690000 087000 VALUE 'ODED AS AN "O" '. 08700000 087100* 08710000 087200* 08720000 087300 01 INTEGRITY-ERROR-4. 08730000 087400 03 FILLER PIC X. 08740000 087500 03 FILLER PIC XX VALUE SPACES. 08750000 087600 03 INT-CNT-OUT-4 PIC ZZZ,ZZ9. 08760000 087700 03 FILLER PIC XXX VALUE SPACES. 08770000 087800 03 FILLER PIC X(41) 08780000 087900 VALUE 'DISABILITY STATUS (EB06) IS CODED AS A "Y'. 08790000 088000 03 FILLER PIC X(40) 08800000 088100 VALUE '" BUT EMPLOYEE CLASSIFICATION (EB08) IS '. 08810000 088200 03 FILLER PIC X(40) 08820000 088300 VALUE 'NOT CODED AS AN "O" '. 08830000 088400* 08840000 088500* 08850000 088600 01 INTEGRITY-ERROR-5. 08860000 088700 03 FILLER PIC X. 08870000 088800 03 FILLER PIC XX VALUE SPACES. 08880000 088900 03 INT-CNT-OUT-5 PIC ZZZ,ZZ9. 08890000 089000 03 FILLER PIC XXX VALUE SPACES. 08900000 089100 03 FILLER PIC X(41) 08910000 089200 VALUE 'EEO6 OCCUPATIONAL ACTIVITY (EB07) IS CODE'. 08920000 089300 03 FILLER PIC X(40) 08930000 089400 VALUE 'D AS A "2" BUT CONTRACT DURATION (EB11) '. 08940000 089500 03 FILLER PIC X(40) 08950000 089600 VALUE 'IS NOT A "1", "2" OR "3". '. 08960000 089700* 08970000 089800* 08980000 089900 01 INTEGRITY-ERROR-6. 08990000 090000 03 FILLER PIC X. 09000000 090100 03 FILLER PIC XX VALUE SPACES. 09010000 090200 03 INT-CNT-OUT-6 PIC ZZZ,ZZ9. 09020000 090300 03 FILLER PIC XXX VALUE SPACES. 09030000 090400 03 FILLER PIC X(40) 09040000 090500 VALUE 'EMPLOYEE CLASSIFICATION (EB08) IS = TO O'. 09050000 090600 03 FILLER PIC X(42) 09060000 090700 VALUE ' BUT ANNUAL SALARY (EB12) IS NOT EQUAL TO'. 09070000 090800 03 FILLER PIC X(7) 09080000 090900 VALUE ' 888888'. 09090000 091000* 09100000 091100* 09110000 091200 01 INTEGRITY-ERROR-7. 09120000 091300 03 FILLER PIC X. 09130000 091400 03 FILLER PIC XX VALUE SPACES. 09140000 091500 03 INT-CNT-OUT-7 PIC ZZZ,ZZ9. 09150000 091600 03 FILLER PIC XXX VALUE SPACES. 09160000 091700 03 FILLER PIC X(41) 09170000 091800 VALUE 'EMPLOYEE CLASSIFICATION (EB08) IS = TO O '. 09180000 091900 03 FILLER PIC X(35) 09190000 092000 VALUE 'BUT ANNUAL STIPEND (EB13) IS NOT = '. 09200000 092100 03 FILLER PIC X(9) 09210000 092200 VALUE 'TO 888888'. 09220000 092300* 09230000 092400* 09240000 092500 01 INTEGRITY-ERROR-8. 09250000 092600 03 FILLER PIC X. 09260000 092700 03 FILLER PIC XX VALUE SPACES. 09270000 092800 03 INT-CNT-OUT-8 PIC ZZZ,ZZ9. 09280000 092900 03 FILLER PIC XXX VALUE SPACES. 09290000 093000 03 FILLER PIC X(41) 09300000 093100 VALUE 'EMPLOYEE STATUS (EB09) IS CODED AS A "Y" '. 09310000 093200 03 FILLER PIC X(41) 09320000 093300 VALUE 'BUT EMPLOYEE CLASSIFICATION (EB08) IS NOT'. 09330000 093400 03 FILLER PIC X(41) 09340000 093500 VALUE ' CODED AS AN "O". '. 09350000 093600* 09360000 093700* 09370000 093800 01 INTEGRITY-ERROR-9. 09380000 093900 03 FILLER PIC X. 09390000 094000 03 FILLER PIC XX VALUE SPACES. 09400000 094100 03 INT-CNT-OUT-9 PIC ZZZ,ZZ9. 09410000 094200 03 FILLER PIC XXX VALUE SPACES. 09420000 094300 03 FILLER PIC X(41) 09430000 094400 VALUE 'EMPLOYEE STATUS (EB09) IS CODED AS A "N" '. 09440000 094500 03 FILLER PIC X(41) 09450000 094600 VALUE 'BUT DATE OF EMPLOYMENT (EB10) IS NOT WITH'. 09460000 094700 03 FILLER PIC X(41) 09470000 094800 VALUE 'IN THE REPORTING FISCAL YEAR. '. 09480000 094900* 09490000 095000* 09500000 095100 01 INTEGRITY-ERROR-A. 09510000 095200 03 FILLER PIC X. 09520000 095300 03 FILLER PIC XX VALUE SPACES. 09530000 095400 03 INT-CNT-OUT-A PIC ZZZ,ZZ9. 09540000 095500 03 FILLER PIC XXX VALUE SPACES. 09550000 095600 03 FILLER PIC X(41) 09560000 095700 VALUE 'DATE OF EMPLOYMENT (EB10) IS CODED AS 8"S'. 09570000 095800 03 FILLER PIC X(41) 09580000 095900 VALUE ' BUT EMPLOYEE CLASSIFICATOIN (EB08) IS NO'. 09590000 096000 03 FILLER PIC X(41) 09600000 096100 VALUE 'T CODED AS AN "O" OR "T". '. 09610000 096200* 09620000 096300* 09630000 096400 01 INTEGRITY-ERROR-B. 09640000 096500 03 FILLER PIC X. 09650000 096600 03 FILLER PIC XX VALUE SPACES. 09660000 096700 03 INT-CNT-OUT-B PIC ZZZ,ZZ9. 09670000 096800 03 FILLER PIC XXX VALUE SPACES. 09680000 096900 03 FILLER PIC X(41) 09690000 097000 VALUE 'CONTRACT DURATION (EB11) IS CODED AS "Y" '. 09700000 097100 03 FILLER PIC X(41) 09710000 097200 VALUE 'BUT EMPLOYEE CLASSIFICATOIN (EB08) IS NOT'. 09720000 097300 03 FILLER PIC X(41) 09730000 097400 VALUE ' CODED AS AN "O". '. 09740000 097500* 09750000 097600* 09760000 097700 01 INTEGRITY-ERROR-C. 09770000 097800 03 FILLER PIC X. 09780000 097900 03 FILLER PIC XX VALUE SPACES. 09790000 098000 03 INT-CNT-OUT-C PIC ZZZ,ZZ9. 09800000 098100 03 FILLER PIC XXX VALUE SPACES. 09810000 098200 03 FILLER PIC X(41) 09820000 098300 VALUE 'ANNUAL STIPEND (EB13) IS GREATER THAN ZER'. 09830000 098400 03 FILLER PIC X(39) 09840000 098500 VALUE '0 BUT ANNUAL SALARY (EB12) IS CODED AS '. 09850000 098600 03 FILLER PIC X(7) 09860000 098700 VALUE '888888.'. 09870000 098800* 09880000 098900* 09890000 099000* 09900000 099100* * * * * * * * VALIDATION TABLES * * * * * * * * 09910000 099200* 09920000 099300 01 DATE-VALIDATION-WORKAREA. 09930000 099400**************************************************************** 09940000 099500* * 09950000 099600* D A T E V A L I D A T I O N W O R K A R E A * 09960000 099700* * 09970000 099800* INSTRUCTIONS: * 09980000 099900* 1. MOVE THE DATE TO BE VALIDATED TO THE FOLLOWING * 09990000 100000* FIELDS FOR THE GIVEN FORMATS: * 10000000 100100* A. YYMMDD FORMAT -- MOVE TO: YYMMDD-DATE-WORKAREA * 10010000 100200* B. MMDD FORMAT -- MOVE TO: MMDD-DATE-WORK-FIELDS * 10020000 100300* (NOTE BELOW FOR DETERMINING LEAP YEAR FOR MMDD * 10030000 100400* DATE FORMAT.) * 10040000 100500* C. YYMM FORMAT -- MOVE TO: YYMM-DATE-WORKAREA * 10050000 100600* 2. WHEN PERFORMING THE PROCEDURE THAT USES THIS WORK * 10060000 100700* AREA, FILL IN THE APPROPRIATE DATE-FORMAT-FLAG * 10070000 100800* VALUES: 1, 2 OR 3. SEE 03 LEVEL DATE-FORMAT-FLAG. * 10080000 100900* 3. IF USING THE MMDD-DATE-FORMAT (VALUE 2), THE YEAR * 10090000 101000* YOU WISH TO USE TO DETERMINE IF IT IS A LEAP YEAR * 10100000 101100* MUST BE FILLED IN. MOVE THIS VALUE INTO THE * 10110000 101200* MMDD-YEAR DATA ITEM. DO THIS PRIOR TO PERFORMING * 10120000 101300* THE PROCEDURE DATVALP. * 10130000 101400* * 10140000 101500* NOTE: THE DEFAULT DATE IS SET TO THE YYMMDD FORMAT. * 10150000 101600* * 10160000 101700**************************************************************** 10170000 101800 03 DATE-FORMAT-FLAG PIC 9 VALUE 1. 10180000 101900 88 YYMMDD-DATE-FORMAT VALUE 1. 10190000 102000 88 MMDD-DATE-FORMAT VALUE 2. 10200000 102100 88 YYMM-DATE-FORMAT VALUE 3. 10210000 102200 03 DATE-FLAGS VALUE ZEROES. 10220000 102300 05 DATE-VALIDATION-FLAG 10230000 102400 PIC 9. 10240000 102500 88 DATE-IS-VALID VALUE 1. 10250000 102600 88 DATE-NOT-NUMERIC VALUE 2. 10260000 102700 88 DATE-MISSING VALUE 3. 10270000 102800 05 MONTH-FLAG 10280000 102900 PIC 9. 10290000 103000 88 VALID-MONTH VALUE 1. 10300000 103100 05 DAY-FLAG PIC 9. 10310000 103200 88 VALID-DAY VALUE 1. 10320000 103300 05 MAXIMUM-DAY-FLAG PIC 9(2). 10330000 103400 88 THIRTY-DAY-MONTH VALUE 4 6 9 11. 10340000 103500 88 THIRTY-ONE-DAY-MONTH 10350000 103600 VALUE 1 3 5 7 8 10 12. 10360000 103700 88 FEBRUARY VALUE 2. 10370000 103800 03 YYMMDD-DATE-WORKAREA. 10380000 103900 05 YYMMDD-YEAR PIC 9(2). 10390000 104000 05 YYMMDD-MONTH PIC 9(2). 10400000 104100 05 YYMMDD-DAY PIC 9(2). 10410000 104200 03 MMDD-DATE-WORKAREA. 10420000 104300 05 MMDD-DATE-WORK-FIELDS. 10430000 104400 07 MMDD-MONTH PIC 9(2). 10440000 104500 07 MMDD-DAY PIC 9(2). 10450000 104600 05 MMDD-YEAR PIC 9(2). 10460000 104700 03 YYMM-DATE-WORKAREA. 10470000 104800 05 YYMM-YEAR PIC 9(2). 10480000 104900 05 YYMM-MONTH PIC 9(2). 10490000 105000 03 CENTURY-WORKAREA. 10500000 105100 05 CENTURY PIC 9(2) VALUE 19. 10510000 105200 05 YEAR PIC 9(2) VALUE ZERO. 10520000 105300 03 CENTURY-FOR-COMPUTATION 10530000 105400 REDEFINES CENTURY-WORKAREA 10540000 105500 PIC 9(4). 10550000 105600 03 MONTH-DAY-WORKAREA VALUE ZERO. 10560000 105700 05 MONTH-WORKAREA PIC 9(2). 10570000 105800 88 VALID-MONTH-VALUE VALUES 1 THRU 12. 10580000 105900 05 DAY-WORKAREA PIC 9(2). 10590000 106000 03 LEAP-YEAR-WORK VALUE ZERO. 10600000 106100 05 LEAP-YEAR-QUOTIENT PIC 9(4). 10610000 106200 05 LEAP-YEAR-REMAINDER 10620000 106300 PIC 9(2). 10630000 106400 88 LEAP-YEAR VALUE ZERO. 10640000 106500 03 DATE-ROUTINE-VALUES. 10650000 106600 05 YYMMDD-FORMAT-VALUE PIC 9 VALUE 1. 10660000 106700 05 MMDD-FORMAT-VALUE PIC 9 VALUE 2. 10670000 106800 05 YYMM-FORMAT-VALUE PIC 9 VALUE 3. 10680000 106900 05 DATE-MISSING-FLAG PIC 9 VALUE 3. 10690000 107000 05 DATE-NOT-NUMERIC-FLAG 10700000 107100 PIC 9 VALUE 2. 10710000 107200 05 MONTH-OF-30-DAYS PIC 9(2) VALUE 30. 10720000 107300 05 MONTH-OF-31-DAYS PIC 9(2) VALUE 31. 10730000 107400 05 MONTH-OF-29-DAYS PIC 9(2) VALUE 29. 10740000 107500 05 MONTH-OF-28-DAYS PIC 9(2) VALUE 28. 10750000 107600 05 DIVISOR-FOR-LEAP-YEAR 10760000 107700 PIC 9 VALUE 4. 10770000 107800* 10780000 107900* 10790000 108000 01 TERM-IDENTIFIER-TABLE. 10800000 108100* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 10810000 108200* * 10820000 108300* TERM IDENTIFIER TABLE * 10830000 108400* * 10840000 108500* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 10850000 108600* 10860000 108700 03 TERM-IDENTIFIER-ENTRIES. 10870000 108800 05 ANNUAL-TERM. 10880000 108900 07 TERM-CODE PIC X(1) VALUE '0'. 10890000 109000 07 TERM-TITLE PIC X(19) VALUE 'ANNUAL'. 10900000 109100 07 BIRTH-COMPUTATION-DATE. 10910000 109200 09 AGE-COMPUTATION-MONTH 10920000 109300 PIC 9(2) VALUE 10. 10930000 109400 09 AGE-COMPUTATION-DAY 10940000 109500 PIC 9(2) VALUE 15. 10950000 109600 07 QUARTER-TYPE-TERM-FLAG 10960000 109700 PIC 9 VALUE ZERO. 10970000 109800 07 EFFECTIVE-DATES. 10980000 109900 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 10990000 110000 09 END-DATE PIC 9(6) VALUE 999999. 11000000 110100 05 WINTER-INTERCESSION. 11010000 110200 07 TERM-CODE PIC X(1) VALUE '1'. 11020000 110300 07 TERM-TITLE PIC X(19) 11030000 110400 VALUE 'WINTER INTERCESSION'. 11040000 110500 07 BIRTH-COMPUTATION-DATE. 11050000 110600 09 AGE-COMPUTATION-MONTH 11060000 110700 PIC 9(2) VALUE 02. 11070000 110800 09 AGE-COMPUTATION-DAY 11080000 110900 PIC 9(2) VALUE 01. 11090000 111000 07 QUARTER-TYPE-TERM-FLAG 11100000 111100 PIC 9 VALUE ZERO. 11110000 111200 07 EFFECTIVE-DATES. 11120000 111300 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11130000 111400 09 END-DATE PIC 9(6) VALUE 999999. 11140000 111500 05 WINTER-QUARTER. 11150000 111600 07 TERM-CODE PIC X(1) VALUE '2'. 11160000 111700 07 TERM-TITLE PIC X(19) 11170000 111800 VALUE 'WINTER QUARTER'. 11180000 111900 07 BIRTH-COMPUTATION-DATE. 11190000 112000 09 AGE-COMPUTATION-MONTH 11200000 112100 PIC 9(2) VALUE 02. 11210000 112200 09 AGE-COMPUTATION-DAY 11220000 112300 PIC 9(2) VALUE 01. 11230000 112400 07 QUARTER-TYPE-TERM-FLAG 11240000 112500 PIC 9 VALUE 1. 11250000 112600 07 EFFECTIVE-DATES. 11260000 112700 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11270000 112800 09 END-DATE PIC 9(6) VALUE 999999. 11280000 112900 05 SPRING-SEMESTER. 11290000 113000 07 TERM-CODE PIC X(1) VALUE '3'. 11300000 113100 07 TERM-TITLE PIC X(19) 11310000 113200 VALUE 'SPRING SEMESTER'. 11320000 113300 07 BIRTH-COMPUTATION-DATE. 11330000 113400 09 AGE-COMPUTATION-MONTH 11340000 113500 PIC 9(2) VALUE 03. 11350000 113600 09 AGE-COMPUTATION-DAY 11360000 113700 PIC 9(2) VALUE 01. 11370000 113800 07 QUARTER-TYPE-TERM-FLAG 11380000 113900 PIC 9 VALUE ZERO. 11390000 114000 07 EFFECTIVE-DATES. 11400000 114100 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11410000 114200 09 END-DATE PIC 9(6) VALUE 999999. 11420000 114300 05 SPRING-QUARTER. 11430000 114400 07 TERM-CODE PIC X(1) VALUE '4'. 11440000 114500 07 TERM-TITLE PIC X(19) 11450000 114600 VALUE 'SPRING QUARTER'. 11460000 114700 07 BIRTH-COMPUTATION-DATE. 11470000 114800 09 AGE-COMPUTATION-MONTH 11480000 114900 PIC 9(2) VALUE 03. 11490000 115000 09 AGE-COMPUTATION-DAY 11500000 115100 PIC 9(2) VALUE 01. 11510000 115200 07 QUARTER-TYPE-TERM-FLAG 11520000 115300 PIC 9 VALUE 1. 11530000 115400 07 EFFECTIVE-DATES. 11540000 115500 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11550000 115600 09 END-DATE PIC 9(6) VALUE 999999. 11560000 115700 05 SUMMER-TERM. 11570000 115800 07 TERM-CODE PIC X(1) VALUE '5'. 11580000 115900 07 TERM-TITLE PIC X(19) VALUE 'SUMMER TERM'. 11590000 116000 07 BIRTH-COMPUTATION-DATE. 11600000 116100 09 AGE-COMPUTATION-MONTH 11610000 116200 PIC 9(2) VALUE 07. 11620000 116300 09 AGE-COMPUTATION-DAY 11630000 116400 PIC 9(2) VALUE 01. 11640000 116500 07 QUARTER-TYPE-TERM-FLAG 11650000 116600 PIC 9 VALUE ZERO. 11660000 116700 07 EFFECTIVE-DATES. 11670000 116800 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11680000 116900 09 END-DATE PIC 9(6) VALUE 999999. 11690000 117000 05 SUMMER-QUARTER. 11700000 117100 07 TERM-CODE PIC X(1) VALUE '6'. 11710000 117200 07 TERM-TITLE PIC X(19) 11720000 117300 VALUE 'SUMMER QUARTER'. 11730000 117400 07 BIRTH-COMPUTATION-DATE. 11740000 117500 09 AGE-COMPUTATION-MONTH 11750000 117600 PIC 9(2) VALUE 07. 11760000 117700 09 AGE-COMPUTATION-DAY 11770000 117800 PIC 9(2) VALUE 01. 11780000 117900 07 QUARTER-TYPE-TERM-FLAG 11790000 118000 PIC 9 VALUE 1. 11800000 118100 07 EFFECTIVE-DATES. 11810000 118200 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11820000 118300 09 END-DATE PIC 9(6) VALUE 999999. 11830000 118400 05 FALL-SEMESTER. 11840000 118500 07 TERM-CODE PIC X(1) VALUE '7'. 11850000 118600 07 TERM-TITLE PIC X(19) 11860000 118700 VALUE 'FALL SEMESTER'. 11870000 118800 07 BIRTH-COMPUTATION-DATE. 11880000 118900 09 AGE-COMPUTATION-MONTH 11890000 119000 PIC 9(2) VALUE 10. 11900000 119100 09 AGE-COMPUTATION-DAY 11910000 119200 PIC 9(2) VALUE 15. 11920000 119300 07 QUARTER-TYPE-TERM-FLAG 11930000 119400 PIC 9 VALUE ZERO. 11940000 119500 07 EFFECTIVE-DATES. 11950000 119600 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11960000 119700 09 END-DATE PIC 9(6) VALUE 999999. 11970000 119800 05 FALL-QUARTER. 11980000 119900 07 TERM-CODE PIC X(1) VALUE '8'. 11990000 120000 07 TERM-TITLE PIC X(19) VALUE 'FALL QUARTER'. 12000000 120100 07 BIRTH-COMPUTATION-DATE. 12010000 120200 09 AGE-COMPUTATION-MONTH 12020000 120300 PIC 9(2) VALUE 10. 12030000 120400 09 AGE-COMPUTATION-DAY 12040000 120500 PIC 9(2) VALUE 15. 12050000 120600 07 QUARTER-TYPE-TERM-FLAG 12060000 120700 PIC 9 VALUE 1. 12070000 120800 07 EFFECTIVE-DATES. 12080000 120900 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 12090000 121000 09 END-DATE PIC 9(6) VALUE 999999. 12100000 121100 05 NONE-ABOVE. 12110000 121200 07 TERM-CODE PIC X(1) VALUE '9'. 12120000 121300 07 TERM-TITLE PIC X(19) VALUE 'OTHER'. 12130000 121400 07 BIRTH-COMPUTATION-DATE. 12140000 121500 09 AGE-COMPUTATION-MONTH 12150000 121600 PIC 9(2) VALUE 10. 12160000 121700 09 AGE-COMPUTATION-DAY 12170000 121800 PIC 9(2) VALUE 15. 12180000 121900 07 QUARTER-TYPE-TERM-FLAG 12190000 122000 PIC 9 VALUE ZERO. 12200000 122100 07 EFFECTIVE-DATES. 12210000 122200 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 12220000 122300 09 END-DATE PIC 9(6) VALUE 999999. 12230000 122400 03 TERM-IDENTIFIER-ENTRY 12240000 122500 REDEFINES TERM-IDENTIFIER-ENTRIES 12250000 122600 OCCURS 10 TIMES 12260000 122700 INDEXED BY TERM-IDENTIFIER-INDEX. 12270000 122800 05 TERM-CODE PIC X(1). 12280000 122900 05 TERM-TITLE PIC X(19). 12290000 123000 05 BIRTH-COMPUTATION-DATE. 12300000 123100 07 AGE-COMPUTATION-MONTH 12310000 123200 PIC 9(2). 12320000 123300 07 AGE-COMPUTATION-DAY 12330000 123400 PIC 9(2). 12340000 123500 05 QUARTER-TYPE-TERM-FLAG 12350000 123600 PIC 9. 12360000 123700 88 TERM-IS-A-QUARTER VALUE 1. 12370000 123800 05 EFFECTIVE-DATES. 12380000 123900 07 BEGIN-DATE PIC 9(6). 12390000 124000 07 END-DATE PIC 9(6). 12400000 124100* 12410000 124200* 12420000 124300 01 DISTRICT-CODE-TABLE. 12430000 124400* 12440000 124500* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 12450000 124600* * 12460000 124700* D I S T R I C T C O D E T A B L E * 12470000 124800* * 12480000 124900* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 12490000 125000* 12500000 125100 03 DISTRICT-CODE-VALUES. 12510000 125200 05 ALLAN-HANCOCK. 12520000 125300 07 DISTRICT-CODE PIC 9(5) VALUE 69096. 12530000 125400 07 DISTRICT-ID PIC 9(3) VALUE 610. 12540000 125500 07 DISTRICT-NAME PIC X(30) 12550000 125600 VALUE 'ALLAN HANCOCK DISTRICT'. 12560000 125700 07 CPEC-DISTRICT-CODE 12570000 125800 PIC X(6) VALUE 'C9001A'. 12580000 125900 07 SINGLE-COLLEGE-FLAG 12590000 126000 PIC 9 VALUE 1. 12600000 126100 05 ANTELOPE-VALLEY. 12610000 126200 07 DISTRICT-CODE PIC 9(5) VALUE 64253. 12620000 126300 07 DISTRICT-ID PIC 9(3) VALUE 620. 12630000 126400 07 DISTRICT-NAME PIC X(30) 12640000 126500 VALUE 'ANTELOPE VALLEY DISTRICT'. 12650000 126600 07 CPEC-DISTRICT-CODE 12660000 126700 PIC X(6) VALUE 'C9002A'. 12670000 126800 07 SINGLE-COLLEGE-FLAG 12680000 126900 PIC 9 VALUE 1. 12690000 127000 05 BARSTOW. 12700000 127100 07 DISTRICT-CODE PIC 9(5) VALUE 67629. 12710000 127200 07 DISTRICT-ID PIC 9(3) VALUE 910. 12720000 127300 07 DISTRICT-NAME PIC X(30) 12730000 127400 VALUE 'BARSTOW DISTRICT'. 12740000 127500 07 CPEC-DISTRICT-CODE 12750000 127600 PIC X(6) VALUE 'C9003A'. 12760000 127700 07 SINGLE-COLLEGE-FLAG 12770000 127800 PIC 9 VALUE 1. 12780000 127900 05 BUTTE. 12790000 128000 07 DISTRICT-CODE PIC 9(5) VALUE 61416. 12800000 128100 07 DISTRICT-ID PIC 9(3) VALUE 110. 12810000 128200 07 DISTRICT-NAME PIC X(30) 12820000 128300 VALUE 'BUTTE DISTRICT'. 12830000 128400 07 CPEC-DISTRICT-CODE 12840000 128500 PIC X(6) VALUE 'C9004A'. 12850000 128600 07 SINGLE-COLLEGE-FLAG 12860000 128700 PIC 9 VALUE 1. 12870000 128800 05 CABRILLO. 12880000 128900 07 DISTRICT-CODE PIC 9(5) VALUE 69740. 12890000 129000 07 DISTRICT-ID PIC 9(3) VALUE 410. 12900000 129100 07 DISTRICT-NAME PIC X(30) 12910000 129200 VALUE 'CABRILLO DISTRICT'. 12920000 129300 07 CPEC-DISTRICT-CODE 12930000 129400 PIC X(6) VALUE 'C9005A'. 12940000 129500 07 SINGLE-COLLEGE-FLAG 12950000 129600 PIC 9 VALUE 1. 12960000 129700 05 CERRITOS. 12970000 129800 07 DISTRICT-CODE PIC 9(5) VALUE 64360. 12980000 129900 07 DISTRICT-ID PIC 9(3) VALUE 810. 12990000 130000 07 DISTRICT-NAME PIC X(30) 13000000 130100 VALUE 'CERRITOS DISTRICT'. 13010000 130200 07 CPEC-DISTRICT-CODE 13020000 130300 PIC X(6) VALUE 'C9006A'. 13030000 130400 07 SINGLE-COLLEGE-FLAG 13040000 130500 PIC 9 VALUE 1. 13050000 130600 05 CHAFFEY. 13060000 130700 07 DISTRICT-CODE PIC 9(5) VALUE 67660. 13070000 130800 07 DISTRICT-ID PIC 9(3) VALUE 920. 13080000 130900 07 DISTRICT-NAME PIC X(30) 13090000 131000 VALUE 'CHAFFEY DISTRICT'. 13100000 131100 07 CPEC-DISTRICT-CODE 13110000 131200 PIC X(6) VALUE 'C9007A'. 13120000 131300 07 SINGLE-COLLEGE-FLAG 13130000 131400 PIC 9 VALUE 1. 13140000 131500 05 CITRUS. 13150000 131600 07 DISTRICT-CODE PIC 9(5) VALUE 64386. 13160000 131700 07 DISTRICT-ID PIC 9(3) VALUE 820. 13170000 131800 07 DISTRICT-NAME PIC X(30) 13180000 131900 VALUE 'CITRUS DISTRICT'. 13190000 132000 07 CPEC-DISTRICT-CODE 13200000 132100 PIC X(6) VALUE 'C9008A'. 13210000 132200 07 SINGLE-COLLEGE-FLAG 13220000 132300 PIC 9 VALUE 1. 13230000 132400 05 DESERT. 13240000 132500 07 DISTRICT-CODE PIC 9(5) VALUE 67025. 13250000 132600 07 DISTRICT-ID PIC 9(3) VALUE 930. 13260000 132700 07 DISTRICT-NAME PIC X(30) 13270000 132800 VALUE 'DESERT DISTRICT'. 13280000 132900 07 CPEC-DISTRICT-CODE 13290000 133000 PIC X(6) VALUE 'C9009A'. 13300000 133100 07 SINGLE-COLLEGE-FLAG 13310000 133200 PIC 9 VALUE 1. 13320000 133300 05 COAST-DISTRICT. 13330000 133400 07 DISTRICT-CODE PIC 9(5) VALUE 66639. 13340000 133500 07 DISTRICT-ID PIC 9(3) VALUE 830. 13350000 133600 07 DISTRICT-NAME PIC X(30) 13360000 133700 VALUE 'COAST DISTRICT'. 13370000 133800 07 CPEC-DISTRICT-CODE 13380000 133900 PIC X(6) VALUE 'C9010A'. 13390000 134000 07 SINGLE-COLLEGE-FLAG 13400000 134100 PIC 9 VALUE ZERO. 13410000 134200 05 COMPTON. 13420000 134300 07 DISTRICT-CODE PIC 9(5) VALUE 64428. 13430000 134400 07 DISTRICT-ID PIC 9(3) VALUE 710. 13440000 134500 07 DISTRICT-NAME PIC X(30) 13450000 134600 VALUE 'COMPTON DISTRICT'. 13460000 134700 07 CPEC-DISTRICT-CODE 13470000 134800 PIC X(6) VALUE 'C9011A'. 13480000 134900 07 SINGLE-COLLEGE-FLAG 13490000 135000 PIC 9 VALUE 1. 13500000 135100 05 CONTRA-COSTA. 13510000 135200 07 DISTRICT-CODE PIC 9(5) VALUE 61689. 13520000 135300 07 DISTRICT-ID PIC 9(3) VALUE 310. 13530000 135400 07 DISTRICT-NAME PIC X(30) 13540000 135500 VALUE 'CONTRA COSTA DISTRICT'. 13550000 135600 07 CPEC-DISTRICT-CODE 13560000 135700 PIC X(6) VALUE 'C9012A'. 13570000 135800 07 SINGLE-COLLEGE-FLAG 13580000 135900 PIC 9 VALUE ZERO. 13590000 136000 05 EL-CAMINO. 13600000 136100 07 DISTRICT-CODE PIC 9(5) VALUE 64493. 13610000 136200 07 DISTRICT-ID PIC 9(3) VALUE 720. 13620000 136300 07 DISTRICT-NAME PIC X(30) 13630000 136400 VALUE 'EL CAMINO DISTRICT'. 13640000 136500 07 CPEC-DISTRICT-CODE 13650000 136600 PIC X(6) VALUE 'C9013A'. 13660000 136700 07 SINGLE-COLLEGE-FLAG 13670000 136800 PIC 9 VALUE 1. 13680000 136900 05 FEATHER-RIVER. 13690000 137000 07 DISTRICT-CODE PIC 9(5) VALUE 75143. 13700000 137100 07 DISTRICT-ID PIC 9(3) VALUE 120. 13710000 137200 07 DISTRICT-NAME PIC X(30) 13720000 137300 VALUE 'FEATHER RIVER DISTRICT'. 13730000 137400 07 CPEC-DISTRICT-CODE 13740000 137500 PIC X(6) VALUE 'C9071A'. 13750000 137600 07 SINGLE-COLLEGE-FLAG 13760000 137700 PIC 9 VALUE 1. 13770000 137800 05 FOOTHILL-DISTRICT. 13780000 137900 07 DISTRICT-CODE PIC 9(5) VALUE 69443. 13790000 138000 07 DISTRICT-ID PIC 9(3) VALUE 420. 13800000 138100 07 DISTRICT-NAME PIC X(30) 13810000 138200 VALUE 'FOOTHILL DISTRICT'. 13820000 138300 07 CPEC-DISTRICT-CODE 13830000 138400 PIC X(6) VALUE 'C9014A'. 13840000 138500 07 SINGLE-COLLEGE-FLAG 13850000 138600 PIC 9 VALUE ZERO. 13860000 138700 05 FREMONT-NEWARK. 13870000 138800 07 DISTRICT-CODE PIC 9(5) VALUE 61184. 13880000 138900 07 DISTRICT-ID PIC 9(3) VALUE 430. 13890000 139000 07 DISTRICT-NAME PIC X(30) 13900000 139100 VALUE 'FREMONT-NEWARK DISTRICT'. 13910000 139200 07 CPEC-DISTRICT-CODE 13920000 139300 PIC X(6) VALUE 'C9015A'. 13930000 139400 07 SINGLE-COLLEGE-FLAG 13940000 139500 PIC 9 VALUE 1. 13950000 139600 05 GAVILAN. 13960000 139700 07 DISTRICT-CODE PIC 9(5) VALUE 69476. 13970000 139800 07 DISTRICT-ID PIC 9(3) VALUE 440. 13980000 139900 07 DISTRICT-NAME PIC X(30) 13990000 140000 VALUE 'GAVILAN DISTRICT'. 14000000 140100 07 CPEC-DISTRICT-CODE 14010000 140200 PIC X(6) VALUE 'C9016A'. 14020000 140300 07 SINGLE-COLLEGE-FLAG 14030000 140400 PIC 9 VALUE 1. 14040000 140500 05 GLENDALE. 14050000 140600 07 DISTRICT-CODE PIC 9(5) VALUE 73486. 14060000 140700 07 DISTRICT-ID PIC 9(3) VALUE 730. 14070000 140800 07 DISTRICT-NAME PIC X(30) 14080000 140900 VALUE 'GLENDALE DISTRICT'. 14090000 141000 07 CPEC-DISTRICT-CODE 14100000 141100 PIC X(6) VALUE 'C9017A'. 14110000 141200 07 SINGLE-COLLEGE-FLAG 14120000 141300 PIC 9 VALUE 1. 14130000 141400 05 GROSSMONT. 14140000 141500 07 DISTRICT-CODE PIC 9(5) VALUE 68148. 14150000 141600 07 DISTRICT-ID PIC 9(3) VALUE 020. 14160000 141700 07 DISTRICT-NAME PIC X(30) 14170000 141800 VALUE 'GROSSMONT DISTRICT'. 14180000 141900 07 CPEC-DISTRICT-CODE 14190000 142000 PIC X(6) VALUE 'C9018A'. 14200000 142100 07 SINGLE-COLLEGE-FLAG 14210000 142200 PIC 9 VALUE ZERO. 14220000 142300 05 HARTNELL. 14230000 142400 07 DISTRICT-CODE PIC 9(5) VALUE 66043. 14240000 142500 07 DISTRICT-ID PIC 9(3) VALUE 450. 14250000 142600 07 DISTRICT-NAME PIC X(30) 14260000 142700 VALUE 'HARTNELL DISTRICT'. 14270000 142800 07 CPEC-DISTRICT-CODE 14280000 142900 PIC X(6) VALUE 'C9019A'. 14290000 143000 07 SINGLE-COLLEGE-FLAG 14300000 143100 PIC 9 VALUE 1. 14310000 143200 05 IMPERIAL. 14320000 143300 07 DISTRICT-CODE PIC 9(5) VALUE 63156. 14330000 143400 07 DISTRICT-ID PIC 9(3) VALUE 030. 14340000 143500 07 DISTRICT-NAME PIC X(30) 14350000 143600 VALUE 'IMPERIAL DISTRICT'. 14360000 143700 07 CPEC-DISTRICT-CODE 14370000 143800 PIC X(6) VALUE 'C9020A'. 14380000 143900 07 SINGLE-COLLEGE-FLAG 14390000 144000 PIC 9 VALUE 1. 14400000 144100 05 KERN-DISTRICT. 14410000 144200 07 DISTRICT-CODE PIC 9(5) VALUE 63537. 14420000 144300 07 DISTRICT-ID PIC 9(3) VALUE 520. 14430000 144400 07 DISTRICT-NAME PIC X(30) 14440000 144500 VALUE 'KERN DISTRICT'. 14450000 144600 07 CPEC-DISTRICT-CODE 14460000 144700 PIC X(6) VALUE 'C9021A'. 14470000 144800 07 SINGLE-COLLEGE-FLAG 14480000 144900 PIC 9 VALUE ZERO. 14490000 145000 05 LAKE-TAHOE. 14500000 145100 07 DISTRICT-CODE PIC 9(5) VALUE 73775. 14510000 145200 07 DISTRICT-ID PIC 9(3) VALUE 220. 14520000 145300 07 DISTRICT-NAME PIC X(30) 14530000 145400 VALUE 'LAKE TAHOE DISTRICT'. 14540000 145500 07 CPEC-DISTRICT-CODE 14550000 145600 PIC X(6) VALUE 'C9022A'. 14560000 145700 07 SINGLE-COLLEGE-FLAG 14570000 145800 PIC 9 VALUE 1. 14580000 145900 05 LASSEN. 14590000 146000 07 DISTRICT-CODE PIC 9(5) VALUE 64147. 14600000 146100 07 DISTRICT-ID PIC 9(3) VALUE 130. 14610000 146200 07 DISTRICT-NAME PIC X(30) 14620000 146300 VALUE 'LASSEN DISTRICT'. 14630000 146400 07 CPEC-DISTRICT-CODE 14640000 146500 PIC X(6) VALUE 'C9023A'. 14650000 146600 07 SINGLE-COLLEGE-FLAG 14660000 146700 PIC 9 VALUE 1. 14670000 146800 05 LONG-BEACH. 14680000 146900 07 DISTRICT-CODE PIC 9(5) VALUE 73494. 14690000 147000 07 DISTRICT-ID PIC 9(3) VALUE 840. 14700000 147100 07 DISTRICT-NAME PIC X(30) 14710000 147200 VALUE 'LONG BEACH DISTRICT'. 14720000 147300 07 CPEC-DISTRICT-CODE 14730000 147400 PIC X(6) VALUE 'C9024A'. 14740000 147500 07 SINGLE-COLLEGE-FLAG 14750000 147600 PIC 9 VALUE 1. 14760000 147700 05 LOS-ANGELES. 14770000 147800 07 DISTRICT-CODE PIC 9(5) VALUE 64741. 14780000 147900 07 DISTRICT-ID PIC 9(3) VALUE 740. 14790000 148000 07 DISTRICT-NAME PIC X(30) 14800000 148100 VALUE 'LOS ANGELES DISTRICT'. 14810000 148200 07 CPEC-DISTRICT-CODE 14820000 148300 PIC X(6) VALUE 'C9025A'. 14830000 148400 07 SINGLE-COLLEGE-FLAG 14840000 148500 PIC 9 VALUE ZERO. 14850000 148600 05 LOS-RIOS. 14860000 148700 07 DISTRICT-CODE PIC 9(5) VALUE 67371. 14870000 148800 07 DISTRICT-ID PIC 9(3) VALUE 230. 14880000 148900 07 DISTRICT-NAME PIC X(30) 14890000 149000 VALUE 'LOS RIOS DISTRICT'. 14900000 149100 07 CPEC-DISTRICT-CODE 14910000 149200 PIC X(6) VALUE 'C9026A'. 14920000 149300 07 SINGLE-COLLEGE-FLAG 14930000 149400 PIC 9 VALUE ZERO. 14940000 149500 05 MARIN-DISTRICT. 14950000 149600 07 DISTRICT-CODE PIC 9(5) VALUE 65383. 14960000 149700 07 DISTRICT-ID PIC 9(3) VALUE 330. 14970000 149800 07 DISTRICT-NAME PIC X(30) 14980000 149900 VALUE 'MARIN DISTRICT'. 14990000 150000 07 CPEC-DISTRICT-CODE 15000000 150100 PIC X(6) VALUE 'C9027A'. 15010000 150200 07 SINGLE-COLLEGE-FLAG 15020000 150300 PIC 9 VALUE ZERO. 15030000 150400 05 MENDOCINO. 15040000 150500 07 DISTRICT-CODE PIC 9(5) VALUE 73718. 15050000 150600 07 DISTRICT-ID PIC 9(3) VALUE 140. 15060000 150700 07 DISTRICT-NAME PIC X(30) 15070000 150800 VALUE 'MENDOCINO DISTRICT'. 15080000 150900 07 CPEC-DISTRICT-CODE 15090000 151000 PIC X(6) VALUE 'C9028A'. 15100000 151100 07 SINGLE-COLLEGE-FLAG 15110000 151200 PIC 9 VALUE 1. 15120000 151300 05 MERCED. 15130000 151400 07 DISTRICT-CODE PIC 9(5) VALUE 65797. 15140000 151500 07 DISTRICT-ID PIC 9(3) VALUE 530. 15150000 151600 07 DISTRICT-NAME PIC X(30) 15160000 151700 VALUE 'MERCED DISTRICT'. 15170000 151800 07 CPEC-DISTRICT-CODE 15180000 151900 PIC X(6) VALUE 'C9029A'. 15190000 152000 07 SINGLE-COLLEGE-FLAG 15200000 152100 PIC 9 VALUE 1. 15210000 152200 05 MIRA-COSTA. 15220000 152300 07 DISTRICT-CODE PIC 9(5) VALUE 68247. 15230000 152400 07 DISTRICT-ID PIC 9(3) VALUE 050. 15240000 152500 07 DISTRICT-NAME PIC X(30) 15250000 152600 VALUE 'MIRA COSTA DISTRICT'. 15260000 152700 07 CPEC-DISTRICT-CODE 15270000 152800 PIC X(6) VALUE 'C9030A'. 15280000 152900 07 SINGLE-COLLEGE-FLAG 15290000 153000 PIC 9 VALUE 1. 15300000 153100 05 MONTEREY-PENINSULA. 15310000 153200 07 DISTRICT-CODE PIC 9(5) VALUE 66100. 15320000 153300 07 DISTRICT-ID PIC 9(3) VALUE 460. 15330000 153400 07 DISTRICT-NAME PIC X(30) 15340000 153500 VALUE 'MONTEREY PENINSULA DIST'. 15350000 153600 07 CPEC-DISTRICT-CODE 15360000 153700 PIC X(6) VALUE 'C9031A'. 15370000 153800 07 SINGLE-COLLEGE-FLAG 15380000 153900 PIC 9 VALUE 1. 15390000 154000 05 MT-SAN-ANTONIO. 15400000 154100 07 DISTRICT-CODE PIC 9(5) VALUE 64824. 15410000 154200 07 DISTRICT-ID PIC 9(3) VALUE 850. 15420000 154300 07 DISTRICT-NAME PIC X(30) 15430000 154400 VALUE 'MT. SAN ANTONIO DISTRICT'. 15440000 154500 07 CPEC-DISTRICT-CODE 15450000 154600 PIC X(6) VALUE 'C9032A'. 15460000 154700 07 SINGLE-COLLEGE-FLAG 15470000 154800 PIC 9 VALUE 1. 15480000 154900 05 MT-SAN-JACINTO. 15490000 155000 07 DISTRICT-CODE PIC 9(5) VALUE 67132. 15500000 155100 07 DISTRICT-ID PIC 9(3) VALUE 940. 15510000 155200 07 DISTRICT-NAME PIC X(30) 15520000 155300 VALUE 'MT. SAN JACINTO DISTRICT'. 15530000 155400 07 CPEC-DISTRICT-CODE 15540000 155500 PIC X(6) VALUE 'C9033A'. 15550000 155600 07 SINGLE-COLLEGE-FLAG 15560000 155700 PIC 9 VALUE 1. 15570000 155800 05 NAPA. 15580000 155900 07 DISTRICT-CODE PIC 9(5) VALUE 66274. 15590000 156000 07 DISTRICT-ID PIC 9(3) VALUE 240. 15600000 156100 07 DISTRICT-NAME PIC X(30) 15610000 156200 VALUE 'NAPA VALLEY DISTRICT'. 15620000 156300 07 CPEC-DISTRICT-CODE 15630000 156400 PIC X(6) VALUE 'C9034A'. 15640000 156500 07 SINGLE-COLLEGE-FLAG 15650000 156600 PIC 9 VALUE 1. 15660000 156700 05 NORTH-ORANGE. 15670000 156800 07 DISTRICT-CODE PIC 9(5) VALUE 66605. 15680000 156900 07 DISTRICT-ID PIC 9(3) VALUE 860. 15690000 157000 07 DISTRICT-NAME PIC X(30) 15700000 157100 VALUE 'NORTH ORANGE DISTRICT'. 15710000 157200 07 CPEC-DISTRICT-CODE 15720000 157300 PIC X(6) VALUE 'C9035A'. 15730000 157400 07 SINGLE-COLLEGE-FLAG 15740000 157500 PIC 9 VALUE ZERO. 15750000 157600 05 PALOMAR. 15760000 157700 07 DISTRICT-CODE PIC 9(5) VALUE 68270. 15770000 157800 07 DISTRICT-ID PIC 9(3) VALUE 060. 15780000 157900 07 DISTRICT-NAME PIC X(30) 15790000 158000 VALUE 'PALOMAR DISTRICT'. 15800000 158100 07 CPEC-DISTRICT-CODE 15810000 158200 PIC X(6) VALUE 'C9037A'. 15820000 158300 07 SINGLE-COLLEGE-FLAG 15830000 158400 PIC 9 VALUE 1. 15840000 158500 05 PALO-VERDE. 15850000 158600 07 DISTRICT-CODE PIC 9(5) VALUE 73510. 15860000 158700 07 DISTRICT-ID PIC 9(3) VALUE 950. 15870000 158800 07 DISTRICT-NAME PIC X(30) 15880000 158900 VALUE 'PALO VERDE DISTRICT'. 15890000 159000 07 CPEC-DISTRICT-CODE 15900000 159100 PIC X(6) VALUE 'C9036A'. 15910000 159200 07 SINGLE-COLLEGE-FLAG 15920000 159300 PIC 9 VALUE 1. 15930000 159400 05 PASADENA-AREA. 15940000 159500 07 DISTRICT-CODE PIC 9(5) VALUE 64899. 15950000 159600 07 DISTRICT-ID PIC 9(3) VALUE 770. 15960000 159700 07 DISTRICT-NAME PIC X(30) 15970000 159800 VALUE 'PASADENA AREA DISTRICT'. 15980000 159900 07 CPEC-DISTRICT-CODE 15990000 160000 PIC X(6) VALUE 'C9038A'. 16000000 160100 07 SINGLE-COLLEGE-FLAG 16010000 160200 PIC 9 VALUE 1. 16020000 160300 05 PERALTA. 16030000 160400 07 DISTRICT-CODE PIC 9(5) VALUE 61267. 16040000 160500 07 DISTRICT-ID PIC 9(3) VALUE 340. 16050000 160600 07 DISTRICT-NAME PIC X(30) 16060000 160700 VALUE 'PERALTA DISTRICT'. 16070000 160800 07 CPEC-DISTRICT-CODE 16080000 160900 PIC X(6) VALUE 'C9039A'. 16090000 161000 07 SINGLE-COLLEGE-FLAG 16100000 161100 PIC 9 VALUE ZERO. 16110000 161200 05 RANCHO-SANTIAGO. 16120000 161300 07 DISTRICT-CODE PIC 9(5) VALUE 66688. 16130000 161400 07 DISTRICT-ID PIC 9(3) VALUE 870. 16140000 161500 07 DISTRICT-NAME PIC X(30) 16150000 161600 VALUE 'RANCHO SANTIAGO DISTRICT'. 16160000 161700 07 CPEC-DISTRICT-CODE 16170000 161800 PIC X(6) VALUE 'C9040A'. 16180000 161900 07 SINGLE-COLLEGE-FLAG 16190000 162000 PIC 9 VALUE ZERO. 16200000 162100 05 REDWOODS. 16210000 162200 07 DISTRICT-CODE PIC 9(5) VALUE 62992. 16220000 162300 07 DISTRICT-ID PIC 9(3) VALUE 160. 16230000 162400 07 DISTRICT-NAME PIC X(30) 16240000 162500 VALUE 'REDWOODS DISTRICT'. 16250000 162600 07 CPEC-DISTRICT-CODE 16260000 162700 PIC X(6) VALUE 'C9041A'. 16270000 162800 07 SINGLE-COLLEGE-FLAG 16280000 162900 PIC 9 VALUE 1. 16290000 163000 05 RIO-HONDO. 16300000 163100 07 DISTRICT-CODE PIC 9(5) VALUE 64923. 16310000 163200 07 DISTRICT-ID PIC 9(3) VALUE 880. 16320000 163300 07 DISTRICT-NAME PIC X(30) 16330000 163400 VALUE 'RIO HONDO DISTRICT'. 16340000 163500 07 CPEC-DISTRICT-CODE 16350000 163600 PIC X(6) VALUE 'C9042A'. 16360000 163700 07 SINGLE-COLLEGE-FLAG 16370000 163800 PIC 9 VALUE 1. 16380000 163900 05 RIVERSIDE. 16390000 164000 07 DISTRICT-CODE PIC 9(5) VALUE 67223. 16400000 164100 07 DISTRICT-ID PIC 9(3) VALUE 960. 16410000 164200 07 DISTRICT-NAME PIC X(30) 16420000 164300 VALUE 'RIVERSIDE DISTRICT'. 16430000 164400 07 CPEC-DISTRICT-CODE 16440000 164500 PIC X(6) VALUE 'C9043A'. 16450000 164600 07 SINGLE-COLLEGE-FLAG 16460000 164700 PIC 9 VALUE 1. 16470000 164800 05 SOUTH-ORANGE. 16480000 164900 07 DISTRICT-CODE PIC 9(5) VALUE 66654. 16490000 165000 07 DISTRICT-ID PIC 9(3) VALUE 890. 16500000 165100 07 DISTRICT-NAME PIC X(30) 16510000 165200 VALUE 'SOUTH ORANGE COUNTY DISTRICT'. 16520000 165300 07 CPEC-DISTRICT-CODE 16530000 165400 PIC X(6) VALUE 'C9044A'. 16540000 165500 07 SINGLE-COLLEGE-FLAG 16550000 165600 PIC 9 VALUE ZERO. 16560000 165700 05 SAN-BERNARDINO. 16570000 165800 07 DISTRICT-CODE PIC 9(5) VALUE 67884. 16580000 165900 07 DISTRICT-ID PIC 9(3) VALUE 980. 16590000 166000 07 DISTRICT-NAME PIC X(30) 16600000 166100 VALUE 'SAN BERNARDINO DISTRICT'. 16610000 166200 07 CPEC-DISTRICT-CODE 16620000 166300 PIC X(6) VALUE 'C9045A'. 16630000 166400 07 SINGLE-COLLEGE-FLAG 16640000 166500 PIC 9 VALUE ZERO. 16650000 166600 05 SAN-DIEGO. 16660000 166700 07 DISTRICT-CODE PIC 9(5) VALUE 73528. 16670000 166800 07 DISTRICT-ID PIC 9(3) VALUE 070. 16680000 166900 07 DISTRICT-NAME PIC X(30) 16690000 167000 VALUE 'SAN DIEGO DISTRICT'. 16700000 167100 07 CPEC-DISTRICT-CODE 16710000 167200 PIC X(6) VALUE 'C9046A'. 16720000 167300 07 SINGLE-COLLEGE-FLAG 16730000 167400 PIC 9 VALUE ZERO. 16740000 167500 05 SAN-FRANCISCO. 16750000 167600 07 DISTRICT-CODE PIC 9(5) VALUE 73536. 16760000 167700 07 DISTRICT-ID PIC 9(3) VALUE 360. 16770000 167800 07 DISTRICT-NAME PIC X(30) 16780000 167900 VALUE 'SAN FRANCISCO DISTRICT'. 16790000 168000 07 CPEC-DISTRICT-CODE 16800000 168100 PIC X(6) VALUE 'C9047A'. 16810000 168200 07 SINGLE-COLLEGE-FLAG 16820000 168300 PIC 9 VALUE ZERO. 16830000 168400 05 SAN-JOAQUIN-DELTA. 16840000 168500 07 DISTRICT-CODE PIC 9(5) VALUE 68668. 16850000 168600 07 DISTRICT-ID PIC 9(3) VALUE 550. 16860000 168700 07 DISTRICT-NAME PIC X(30) 16870000 168800 VALUE 'SAN JOAQUIN DELTA DIST'. 16880000 168900 07 CPEC-DISTRICT-CODE 16890000 169000 PIC X(6) VALUE 'C9048A'. 16900000 169100 07 SINGLE-COLLEGE-FLAG 16910000 169200 PIC 9 VALUE 1. 16920000 169300 05 SAN-JOSE. 16930000 169400 07 DISTRICT-CODE PIC 9(5) VALUE 69658. 16940000 169500 07 DISTRICT-ID PIC 9(3) VALUE 470. 16950000 169600 07 DISTRICT-NAME PIC X(30) 16960000 169700 VALUE 'SAN JOSE/EVERGREEN DIST'. 16970000 169800 07 CPEC-DISTRICT-CODE 16980000 169900 PIC X(6) VALUE 'C9049A'. 16990000 170000 07 SINGLE-COLLEGE-FLAG 17000000 170100 PIC 9 VALUE ZERO. 17010000 170200 05 SAN-LUIS-OBISPO. 17020000 170300 07 DISTRICT-CODE PIC 9(5) VALUE 68817. 17030000 170400 07 DISTRICT-ID PIC 9(3) VALUE 640. 17040000 170500 07 DISTRICT-NAME PIC X(30) 17050000 170600 VALUE 'SAN LUIS OBISPO DISTRICT'. 17060000 170700 07 CPEC-DISTRICT-CODE 17070000 170800 PIC X(6) VALUE 'C9050A'. 17080000 170900 07 SINGLE-COLLEGE-FLAG 17090000 171000 PIC 9 VALUE 1. 17100000 171100 05 SAN-MATEO. 17110000 171200 07 DISTRICT-CODE PIC 9(5) VALUE 69054. 17120000 171300 07 DISTRICT-ID PIC 9(3) VALUE 370. 17130000 171400 07 DISTRICT-NAME PIC X(30) 17140000 171500 VALUE 'SAN MATEO DISTRICT'. 17150000 171600 07 CPEC-DISTRICT-CODE 17160000 171700 PIC X(6) VALUE 'C9051A'. 17170000 171800 07 SINGLE-COLLEGE-FLAG 17180000 171900 PIC 9 VALUE ZERO. 17190000 172000 05 SANTA-BARBARA. 17200000 172100 07 DISTRICT-CODE PIC 9(5) VALUE 69294. 17210000 172200 07 DISTRICT-ID PIC 9(3) VALUE 650. 17220000 172300 07 DISTRICT-NAME PIC X(30) 17230000 172400 VALUE 'SANTA BARBARA DISTRICT'. 17240000 172500 07 CPEC-DISTRICT-CODE 17250000 172600 PIC X(6) VALUE 'C9052A'. 17260000 172700 07 SINGLE-COLLEGE-FLAG 17270000 172800 PIC 9 VALUE 1. 17280000 172900 05 SANTA-CLARITA. 17290000 173000 07 DISTRICT-CODE PIC 9(5) VALUE 64972. 17300000 173100 07 DISTRICT-ID PIC 9(3) VALUE 660. 17310000 173200 07 DISTRICT-NAME PIC X(30) 17320000 173300 VALUE 'SANTA CLARITA DISTRICT'. 17330000 173400 07 CPEC-DISTRICT-CODE 17340000 173500 PIC X(6) VALUE 'C9053A'. 17350000 173600 07 SINGLE-COLLEGE-FLAG 17360000 173700 PIC 9 VALUE 1. 17370000 173800 05 SANTA-MONICA. 17380000 173900 07 DISTRICT-CODE PIC 9(5) VALUE 73502. 17390000 174000 07 DISTRICT-ID PIC 9(3) VALUE 780. 17400000 174100 07 DISTRICT-NAME PIC X(30) 17410000 174200 VALUE 'SANTA MONICA DISTRICT'. 17420000 174300 07 CPEC-DISTRICT-CODE 17430000 174400 PIC X(6) VALUE 'C9054A'. 17440000 174500 07 SINGLE-COLLEGE-FLAG 17450000 174600 PIC 9 VALUE 1. 17460000 174700 05 SEQUOIAS. 17470000 174800 07 DISTRICT-CODE PIC 9(5) VALUE 72124. 17480000 174900 07 DISTRICT-ID PIC 9(3) VALUE 560. 17490000 175000 07 DISTRICT-NAME PIC X(30) 17500000 175100 VALUE 'SEQUOIAS DISTRICT'. 17510000 175200 07 CPEC-DISTRICT-CODE 17520000 175300 PIC X(6) VALUE 'C9055A'. 17530000 175400 07 SINGLE-COLLEGE-FLAG 17540000 175500 PIC 9 VALUE 1. 17550000 175600 05 SHASTA-TE-TR. 17560000 175700 07 DISTRICT-CODE PIC 9(5) VALUE 70144. 17570000 175800 07 DISTRICT-ID PIC 9(3) VALUE 170. 17580000 175900 07 DISTRICT-NAME PIC X(30) 17590000 176000 VALUE 'SHASTA-TE-TR DISTRICT'. 17600000 176100 07 CPEC-DISTRICT-CODE 17610000 176200 PIC X(6) VALUE 'C9056A'. 17620000 176300 07 SINGLE-COLLEGE-FLAG 17630000 176400 PIC 9 VALUE 1. 17640000 176500 05 SIERRA. 17650000 176600 07 DISTRICT-CODE PIC 9(5) VALUE 66936. 17660000 176700 07 DISTRICT-ID PIC 9(3) VALUE 270. 17670000 176800 07 DISTRICT-NAME PIC X(30) 17680000 176900 VALUE 'SIERRA DISTRICT'. 17690000 177000 07 CPEC-DISTRICT-CODE 17700000 177100 PIC X(6) VALUE 'C9057A'. 17710000 177200 07 SINGLE-COLLEGE-FLAG 17720000 177300 PIC 9 VALUE 1. 17730000 177400 05 SISKIYOU. 17740000 177500 07 DISTRICT-CODE PIC 9(5) VALUE 70474. 17750000 177600 07 DISTRICT-ID PIC 9(3) VALUE 180. 17760000 177700 07 DISTRICT-NAME PIC X(30) 17770000 177800 VALUE 'SISKIYOU DISTRICT'. 17780000 177900 07 CPEC-DISTRICT-CODE 17790000 178000 PIC X(6) VALUE 'C9058A'. 17800000 178100 07 SINGLE-COLLEGE-FLAG 17810000 178200 PIC 9 VALUE 1. 17820000 178300 05 SOLAN0-COUNTY. 17830000 178400 07 DISTRICT-CODE PIC 9(5) VALUE 70557. 17840000 178500 07 DISTRICT-ID PIC 9(3) VALUE 280. 17850000 178600 07 DISTRICT-NAME PIC X(30) 17860000 178700 VALUE 'SOLANO COUNTY DISTRICT'. 17870000 178800 07 CPEC-DISTRICT-CODE 17880000 178900 PIC X(6) VALUE 'C9059A'. 17890000 179000 07 SINGLE-COLLEGE-FLAG 17900000 179100 PIC 9 VALUE 1. 17910000 179200 05 SONOMA-COUNTY. 17920000 179300 07 DISTRICT-CODE PIC 9(5) VALUE 70946. 17930000 179400 07 DISTRICT-ID PIC 9(3) VALUE 260. 17940000 179500 07 DISTRICT-NAME PIC X(30) 17950000 179600 VALUE 'SONOMA COUNTY DISTRICT'. 17960000 179700 07 CPEC-DISTRICT-CODE 17970000 179800 PIC X(6) VALUE 'C9060A'. 17980000 179900 07 SINGLE-COLLEGE-FLAG 17990000 180000 PIC 9 VALUE 1. 18000000 180100 05 SOUTH-COUNTY. 18010000 180200 07 DISTRICT-CODE PIC 9(5) VALUE 61317. 18020000 180300 07 DISTRICT-ID PIC 9(3) VALUE 480. 18030000 180400 07 DISTRICT-NAME PIC X(30) 18040000 180500 VALUE 'CHABOT-LAS POSITAS DISTRICT'. 18050000 180600 07 CPEC-DISTRICT-CODE 18060000 180700 PIC X(6) VALUE 'C9061A'. 18070000 180800 07 SINGLE-COLLEGE-FLAG 18080000 180900 PIC 9 VALUE ZERO. 18090000 181000 05 STATE-CENTER. 18100000 181100 07 DISTRICT-CODE PIC 9(5) VALUE 62463. 18110000 181200 07 DISTRICT-ID PIC 9(3) VALUE 570. 18120000 181300 07 DISTRICT-NAME PIC X(30) 18130000 181400 VALUE 'STATE CENTER DISTRICT'. 18140000 181500 07 CPEC-DISTRICT-CODE 18150000 181600 PIC X(6) VALUE 'C9062A'. 18160000 181700 07 SINGLE-COLLEGE-FLAG 18170000 181800 PIC 9 VALUE ZERO. 18180000 181900 05 SOUTHWESTERN. 18190000 182000 07 DISTRICT-CODE PIC 9(5) VALUE 68429. 18200000 182100 07 DISTRICT-ID PIC 9(3) VALUE 090. 18210000 182200 07 DISTRICT-NAME PIC X(30) 18220000 182300 VALUE 'SOUTHWESTERN DISTRICT'. 18230000 182400 07 CPEC-DISTRICT-CODE 18240000 182500 PIC X(6) VALUE 'C9063A'. 18250000 182600 07 SINGLE-COLLEGE-FLAG 18260000 182700 PIC 9 VALUE 1. 18270000 182800 05 VENTURA-COUNTY. 18280000 182900 07 DISTRICT-CODE PIC 9(5) VALUE 72660. 18290000 183000 07 DISTRICT-ID PIC 9(3) VALUE 680. 18300000 183100 07 DISTRICT-NAME PIC X(30) 18310000 183200 VALUE 'VENTURA COUNTY DISTRICT'. 18320000 183300 07 CPEC-DISTRICT-CODE 18330000 183400 PIC X(6) VALUE 'C9064A'. 18340000 183500 07 SINGLE-COLLEGE-FLAG 18350000 183600 PIC 9 VALUE ZERO. 18360000 183700 05 VICTOR-VALLEY. 18370000 183800 07 DISTRICT-CODE PIC 9(5) VALUE 67926. 18380000 183900 07 DISTRICT-ID PIC 9(3) VALUE 990. 18390000 184000 07 DISTRICT-NAME PIC X(30) 18400000 184100 VALUE 'VICTOR VALLEY DISTRICT'. 18410000 184200 07 CPEC-DISTRICT-CODE 18420000 184300 PIC X(6) VALUE 'C9065A'. 18430000 184400 07 SINGLE-COLLEGE-FLAG 18440000 184500 PIC 9 VALUE 1. 18450000 184600 05 WEST-HILLS. 18460000 184700 07 DISTRICT-CODE PIC 9(5) VALUE 62133. 18470000 184800 07 DISTRICT-ID PIC 9(3) VALUE 580. 18480000 184900 07 DISTRICT-NAME PIC X(30) 18490000 185000 VALUE 'WEST HILLS DISTRICT'. 18500000 185100 07 CPEC-DISTRICT-CODE 18510000 185200 PIC X(6) VALUE 'C9066A'. 18520000 185300 07 SINGLE-COLLEGE-FLAG 18530000 185400 PIC 9 VALUE 1. 18540000 185500 05 WEST-KERN. 18550000 185600 07 DISTRICT-CODE PIC 9(5) VALUE 63867. 18560000 185700 07 DISTRICT-ID PIC 9(3) VALUE 690. 18570000 185800 07 DISTRICT-NAME PIC X(30) 18580000 185900 VALUE 'WEST KERN DISTRICT'. 18590000 186000 07 CPEC-DISTRICT-CODE 18600000 186100 PIC X(6) VALUE 'C9067A'. 18610000 186200 07 SINGLE-COLLEGE-FLAG 18620000 186300 PIC 9 VALUE 1. 18630000 186400 05 WEST-VALLEY. 18640000 186500 07 DISTRICT-CODE PIC 9(5) VALUE 69716. 18650000 186600 07 DISTRICT-ID PIC 9(3) VALUE 490. 18660000 186700 07 DISTRICT-NAME PIC X(30) 18670000 186800 VALUE 'WEST VALLEY DISTRICT'. 18680000 186900 07 CPEC-DISTRICT-CODE 18690000 187000 PIC X(6) VALUE 'C9068A'. 18700000 187100 07 SINGLE-COLLEGE-FLAG 18710000 187200 PIC 9 VALUE ZERO. 18720000 187300 05 YOSEMITE. 18730000 187400 07 DISTRICT-CODE PIC 9(5) VALUE 71340. 18740000 187500 07 DISTRICT-ID PIC 9(3) VALUE 590. 18750000 187600 07 DISTRICT-NAME PIC X(30) 18760000 187700 VALUE 'YOSEMITE DISTRICT'. 18770000 187800 07 CPEC-DISTRICT-CODE 18780000 187900 PIC X(6) VALUE 'C9069A'. 18790000 188000 07 SINGLE-COLLEGE-FLAG 18800000 188100 PIC 9 VALUE ZERO. 18810000 188200 05 YUBA-DISTRICT. 18820000 188300 07 DISTRICT-CODE PIC 9(5) VALUE 72777. 18830000 188400 07 DISTRICT-ID PIC 9(3) VALUE 290. 18840000 188500 07 DISTRICT-NAME PIC X(30) 18850000 188600 VALUE 'YUBA DISTRICT'. 18860000 188700 07 CPEC-DISTRICT-CODE 18870000 188800 PIC X(6) VALUE 'C9070A'. 18880000 188900 07 SINGLE-COLLEGE-FLAG 18890000 189000 PIC 9 VALUE 1. 18900000 189100 03 DISTRICT-CODE-ENTRY 18910000 189200 REDEFINES DISTRICT-CODE-VALUES 18920000 189300 OCCURS 71 TIMES 18930000 189400 INDEXED BY DISTRICT-CODE-INDEX. 18940000 189500 05 DISTRICT-CODE PIC 9(5). 18950000 189600 05 DISTRICT-ID PIC 9(3). 18960000 189700 05 DISTRICT-NAME PIC X(30). 18970000 189800 05 CPEC-DISTRICT-CODE PIC X(6). 18980000 189900 05 SINGLE-COLLEGE-FLAG PIC 9. 18990000 190000 88 SINGLE-COLLEGE-DISTRICT VALUE 1. 19000000 190100* 19010000 190200/ 19020000 190300* 19030000 190400 01 DUMMY-RECORD. 19040000 190500* 03 FILLER PIC X. 19050000 190600* 03 S-COMP-BEGIN-YEAR PIC X(6). 19060000 190700* 03 FILLER PIC X VALUE SPACE. 19070000 190800* 03 S-COMP-END-YEAR PIC X(6). 19080000 190900* 03 FILLER PIC X VALUE SPACE. 19090000 191000* 03 S-HOLD-HIREDATE PIC X(6). 19100000 191100* 03 FILLER PIC X VALUE SPACE. 19110000 191200* 03 S-EB09-FLAG PIC X(1). 19120000 191300* 03 FILLER PIC X VALUE SPACE. 19130000 191400* 03 S-EB10-FLAG PIC X(1). 19140000 191500 03 FILLER PIC X VALUE SPACE. 19150000 191600 03 S-CHECK-DIST-CODE PIC X(3). 19160000 191700 19170000 191800 LINKAGE SECTION. 19180000 191900* 19190000 192000 01 RUNTIME-PARAMETER-AREA. 19200000 192100 03 FILLER PIC 999 USAGE IS COMP. 19210000 192200 03 PRINT-FLAG PIC XXX. 19220000 192300 88 VALID-PRINT-FLAG VALUE '000' THRU '999' 19230000 192400 'ALL'. 19240000 192500 88 PRINT-ALL VALUE 'ALL'. 19250000 192600 03 FILLER PIC X. 19260000 192700 03 PARAMETER-TERM-ID. 19270000 192800 05 CALENDAR-YEAR PIC XX. 19280000 192900 05 TERM-CODE PIC X. 19290000 193000 03 FILLER PIC X. 19300000 193100 03 DISTRICT-ID PIC XXX. 19310000 193200/ 19320000 193300 PROCEDURE DIVISION USING RUNTIME-PARAMETER-AREA. 19330000 193400* 19340000 193500* 19350000 193600 0000-MAIN-PROCESS. 19360000 193700 PERFORM 1000-INITIAL-PROCESSES. 19370000 193800 PERFORM 2000-PROCESS-EMPLOYEE-DATA 19380000 193900 UNTIL END-OF-EMPLOYEE-DATA. 19390000 194000 PERFORM 9000-PROGRAM-FINALIZATION. 19400000 194100 STOP RUN. 19410000 194200* 19420000 194300* 19430000 194400 1000-INITIAL-PROCESSES. 19440000 194500 PERFORM 1100-VALIDATE-PARAMETERS. 19450000 194600 PERFORM 1200-OPEN-FILES-FOR-PROCESS. 19460000 194700 PERFORM 2600-READ-EMPLOYEE-RECORD 19470000 194800 UNTIL BLANK-REC-FLAG = 0. 19480000 194900 PERFORM 1300-INITIALIZE-WORKAREA. 19490000 195000* 19500000 195100* 19510000 195200 1100-VALIDATE-PARAMETERS. 19520000 195300 OPEN OUTPUT EDIT-ERROR-REPORT. 19530000 195400 PERFORM 1105-VALIDATE-PRINT-FLAG. 19540000 195500 PERFORM 1110-VALIDATE-PARAMETER-TERM. 19550000 195600 PERFORM 1130-VALIDATE-DISTRICT-PARM. 19560000 195700* 19570000 195800* 19580000 195900 1105-VALIDATE-PRINT-FLAG. 19590000 196000 IF NOT VALID-PRINT-FLAG 19600000 196100 SET ERROR-MESSAGE-INDEX 19610000 196200 TO INVALID-PF-INDEX-VALUE 19620000 196300 PERFORM 1190-INVALID-PARAMETER-ABEND. 19630000 196400* 19640000 196500* 19650000 196600 1110-VALIDATE-PARAMETER-TERM. 19660000 196700 PERFORM 1120-VALIDATE-TERM-ID. 19670000 196800 IF CALENDAR-YEAR 19680000 196900 IN RUNTIME-PARAMETER-AREA 19690000 197000 IS NOT NUMERIC 19700000 197100 OR PARAMETER-FIELD-INVALID 19710000 197200 SET ERROR-MESSAGE-INDEX 19720000 197300 TO INVALID-TERM-INDEX-VALUE 19730000 197400 PERFORM 1190-INVALID-PARAMETER-ABEND 19740000 197500 ELSE 19750000 197600 PERFORM 1111-HIRE-DATE-SETUP. 19760000 197700* 19770000 197800* 19780000 197900 1111-HIRE-DATE-SETUP. 19790000 198000 IF TERM-CODE 19800000 198100 IN RUNTIME-PARAMETER-AREA 19810000 198200 IS EQUAL TO '9' 19820000 198300 MOVE CALENDAR-YEAR 19830000 198400 IN RUNTIME-PARAMETER-AREA 19840000 198500 TO EMPLOY-BEGIN-FIRSTCEN-YEAR 19850000 198600 SUBTRACT 1 FROM EMPLOY-BEGIN-FIRSTCEN-YEAR 19860000 198700 MOVE CALENDAR-YEAR 19870000 198800 IN RUNTIME-PARAMETER-AREA 19880000 198900 TO EMPLOY-END-FIRSTCEN-YEAR 19890000 199000 ELSE 19900000 199100 IF TERM-CODE 19910000 199200 IN RUNTIME-PARAMETER-AREA 19920000 199300 IS EQUAL TO '0' 19930000 199400 IF CALENDAR-YEAR 19940000 199500 IN RUNTIME-PARAMETER-AREA 19950000 199600 IS EQUAL TO '95' 19960000 199700 MOVE 93 TO EMPLOY-BEGIN-ANNUAL-YEAR 19970000 199800 MOVE 11 TO EMPLOY-BEGIN-ANNUAL-MTH 19980000 199900 MOVE 01 TO EMPLOY-BEGIN-ANNUAL-DAY 19990000 200000 MOVE CALENDAR-YEAR 20000000 200100 IN RUNTIME-PARAMETER-AREA 20010000 200200 TO EMPLOY-END-ANNUAL-YEAR 20020000 200300 ELSE 20030000 200400 MOVE CALENDAR-YEAR 20040000 200500 IN RUNTIME-PARAMETER-AREA 20050000 200600 TO EMPLOY-END-ANNUAL-YEAR 20060000 200700 MOVE CALENDAR-YEAR 20070000 200800 IN RUNTIME-PARAMETER-AREA 20080000 200900 TO EMPLOY-BEGIN-ANNUAL-YEAR 20090000 201000 SUBTRACT 1 FROM EMPLOY-BEGIN-ANNUAL-YEAR. 20100000 201100* 20110000 201200* 20120000 201300 1120-VALIDATE-TERM-ID. 20130000 201400 SET TERM-IDENTIFIER-INDEX TO 1 20140000 201500 SEARCH TERM-IDENTIFIER-ENTRY 20150000 201600 IN TERM-IDENTIFIER-TABLE 20160000 201700 AT END 20170000 201800 MOVE 1 TO PARAMETER-VALIDATION-FLAG 20180000 201900 WHEN TERM-CODE 20190000 202000 IN RUNTIME-PARAMETER-AREA 20200000 202100 IS EQUAL TO TERM-CODE 20210000 202200 IN TERM-IDENTIFIER-ENTRY 20220000 202300 OF TERM-IDENTIFIER-TABLE 20230000 202400 (TERM-IDENTIFIER-INDEX) 20240000 202500 NEXT SENTENCE. 20250000 202600* 20260000 202700* 20270000 202800 1130-VALIDATE-DISTRICT-PARM. 20280000 202900 SET DISTRICT-CODE-INDEX TO 1. 20290000 203000 SEARCH DISTRICT-CODE-ENTRY 20300000 203100 IN DISTRICT-CODE-TABLE 20310000 203200 AT END 20320000 203300 SET ERROR-MESSAGE-INDEX 20330000 203400 TO INVALID-DISTRICT-INDEX-VALUE 20340000 203500 PERFORM 1190-INVALID-PARAMETER-ABEND 20350000 203600 WHEN DISTRICT-ID 20360000 203700 IN RUNTIME-PARAMETER-AREA 20370000 203800 IS EQUAL TO DISTRICT-ID 20380000 203900 IN DISTRICT-CODE-ENTRY 20390000 204000 OF DISTRICT-CODE-TABLE 20400000 204100 (DISTRICT-CODE-INDEX) 20410000 204200 MOVE DISTRICT-ID 20420000 204300 IN DISTRICT-CODE-ENTRY 20430000 204400 OF DISTRICT-CODE-TABLE 20440000 204500 (DISTRICT-CODE-INDEX) 20450000 204600 TO HOLD-DISTRICT-ID 20460000 204700 MOVE DISTRICT-NAME 20470000 204800 IN DISTRICT-CODE-ENTRY 20480000 204900 OF DISTRICT-CODE-TABLE 20490000 205000 (DISTRICT-CODE-INDEX) 20500000 205100 TO HOLD-DISTRICT-NAME. 20510000 205200* 20520000 205300* 20530000 205400 1190-INVALID-PARAMETER-ABEND. 20540000 205500 PERFORM 8500-REPORT-HEADINGS. 20550000 205600 MOVE ERROR-MESSAGE 20560000 205700 (ERROR-MESSAGE-INDEX) 20570000 205800 TO PRINT-RECORD. 20580000 205900 WRITE PRINT-RECORD 20590000 206000 AFTER ADVANCING 2 LINES. 20600000 206100 MOVE RUNTIME-PARAMETER-AREA 20610000 206200 TO PRINT-RECORD 20620000 206300 WRITE PRINT-RECORD 20630000 206400 AFTER ADVANCING 2 LINES. 20640000 206500 STOP RUN. 20650000 206600* 20660000 206700* 20670000 206800 1200-OPEN-FILES-FOR-PROCESS. 20680000 206900 OPEN INPUT EMPLOYEE-DATA-FILE. 20690000 207000 OPEN OUTPUT EDITED-EMPLOYEE-DATA-FILE. 20700000 207100 OPEN OUTPUT INTEGRITY-ERROR-SUMMARY. 20710000 207200 OPEN OUTPUT REPORT-TOTALS-FILE. 20720000 207300* 20730000 207400* 20740000 207500 1300-INITIALIZE-WORKAREA. 20750000 207600 MOVE TERM-TITLE 20760000 207700 IN TERM-IDENTIFIER-ENTRY 20770000 207800 OF TERM-IDENTIFIER-TABLE 20780000 207900 (TERM-IDENTIFIER-INDEX) 20790000 208000 TO TERM-TITLE 20800000 208100 IN REPORT-TITLE-LINE-2. 20810000 208200 MOVE CALENDAR-YEAR 20820000 208300 IN RUNTIME-PARAMETER-AREA 20830000 208400 TO CALENDAR-YEAR1 20840000 208500 IN REPORT-TITLE-LINE-2, 20850000 208600 CALENDAR-YEAR2 20860000 208700 IN REPORT-TITLE-LINE-2, 20870000 208800 HOLD-CALENDAR-YEAR. 20880000 208900 MOVE TERM-CODE 20890000 209000 IN RUNTIME-PARAMETER-AREA 20900000 209100 TO TERM-CODE 20910000 209200 IN REPORT-TITLE-LINE-2, 20920000 209300 TERM-TYPE-FLAG. 20930000 209400 IF PRINT-FLAG NUMERIC 20940000 209500 MOVE PRINT-FLAG 20950000 209600 TO PRINT-LIMIT. 20960000 209700 ACCEPT KEY-DATE FROM DAY. 20970000 209800 ACCEPT DATE-HOLD FROM DATE. 20980000 209900 ACCEPT KEY-TIME FROM TIME. 20990000 210000 ACCEPT TIME-HOLD FROM TIME. 21000000 210100 MOVE YEAR-2 21010000 210200 TO KEY-ELEMENT-1. 21020000 210300 MOVE DAY-2 21030000 210400 TO KEY-ELEMENT-2. 21040000 210500 MOVE DAY-3 21050000 210600 TO KEY-ELEMENT-3. 21060000 210700 MOVE KEY-TIME-ZONE 21070000 210800 TO KEY-ELEMENT-4. 21080000 210900 SET EDIT-COLUMN-INDEX TO 1. 21090000 211000 MOVE 2 TO PAGE-FULL-FLAG. 21100000 211100* 21110000 211200* 21120000 211300 2000-PROCESS-EMPLOYEE-DATA. 21130000 211400 ADD 1 TO DISTRICT-RECORDS-READ. 21140000 211500 MOVE ZERO TO REJECT-RECORD-FLAG. 21150000 211600 MOVE SPACES TO CHECK-DATA-AREA. 21160000 211700 MOVE SPACE TO REASONABLE-FLAG. 21170000 211800 MOVE ZEROS TO DATA-COMP-AREA, 21180000 211900 VALID-DATA-FLAGS. 21190000 212000 PERFORM 2100-VALIDATE-KEY-FIELDS. 21200000 212100 PERFORM 2200-VALIDATE-DEMOGRAPHIC-DATA. 21210000 212200 PERFORM 2300-VALIDATE-EMPLOYMENT-DATA. 21220000 212300 PERFORM 2400-INTEGRITY-EDITS. 21230000 212400 IF RECORD-REJECTED 21240000 212500 ADD 1 TO DISTRICT-RECORDS-REJECTED 21250000 212600 MOVE REJECTED-LITERAL 21260000 212700 TO DATA-ELEMENT 21270000 212800 (18, EDIT-COLUMN-INDEX) 21280000 212900 PERFORM 2010-SETUP-FOR-PRINTING 21290000 213000 PERFORM 2020-BUMP-ERROR-COLUMN-INDEX 21300000 213100 ELSE 21310000 213200 IF REASONABLE-EXCEPTION 21320000 213300 PERFORM 2010-SETUP-FOR-PRINTING 21330000 213400 PERFORM 2020-BUMP-ERROR-COLUMN-INDEX 21340000 213500 PERFORM 3000-OUTPUT-EDITED-DATA 21350000 213600 ELSE 21360000 213700 PERFORM 3000-OUTPUT-EDITED-DATA. 21370000 213800 PERFORM 2600-READ-EMPLOYEE-RECORD. 21380000 213900* 21390000 214000* 21400000 214100 2010-SETUP-FOR-PRINTING. 21410000 214200 MOVE EMPLOYEE-IDENTIFIER 21420000 214300 IN EMPLOYEE-DATA-RECORD 21430000 214400 TO DATA-ELEMENT 21440000 214500 (1, EDIT-COLUMN-INDEX). 21450000 214600 MOVE RECORD-CODE 21460000 214700 IN EMPLOYEE-DATA-RECORD 21470000 214800 TO DATA-ELEMENT 21480000 214900 (2, EDIT-COLUMN-INDEX). 21490000 215000 MOVE DISTRICT-ID 21500000 215100 IN EMPLOYEE-DATA-RECORD 21510000 215200 TO DATA-ELEMENT 21520000 215300 (3, EDIT-COLUMN-INDEX). 21530000 215400 MOVE TERM-IDENTIFIER 21540000 215500 IN EMPLOYEE-DATA-RECORD 21550000 215600 TO DATA-ELEMENT 21560000 215700 (4, EDIT-COLUMN-INDEX). 21570000 215800 MOVE EMPLOYEE-IDENTIFIER-STATUS 21580000 215900 IN EMPLOYEE-DATA-RECORD 21590000 216000 TO DATA-ELEMENT 21600000 216100 (5, EDIT-COLUMN-INDEX). 21610000 216200 MOVE EMPLOYEE-BIRTHDATE 21620000 216300 IN EMPLOYEE-DATA-RECORD 21630000 216400 TO DATA-ELEMENT 21640000 216500 (6, EDIT-COLUMN-INDEX). 21650000 216600 MOVE EMPLOYEE-GENDER 21660000 216700 IN EMPLOYEE-DATA-RECORD 21670000 216800 TO DATA-ELEMENT 21680000 216900 (7, EDIT-COLUMN-INDEX). 21690000 217000 MOVE EMPLOYEE-RACIAL-ETHNIC-CODE 21700000 217100 IN EMPLOYEE-DATA-RECORD 21710000 217200 TO DATA-ELEMENT 21720000 217300 (8, EDIT-COLUMN-INDEX). 21730000 217400 MOVE EMPLOYEE-CITIZENSHIP 21740000 217500 IN EMPLOYEE-DATA-RECORD 21750000 217600 TO DATA-ELEMENT 21760000 217700 (9, EDIT-COLUMN-INDEX). 21770000 217800 MOVE EMPLOYEE-DISABILITY-STATUS 21780000 217900 IN EMPLOYEE-DATA-RECORD 21790000 218000 TO DATA-ELEMENT 21800000 218100 (10, EDIT-COLUMN-INDEX). 21810000 218200 MOVE EMPLOYEE-EEO6-ACTIVITY 21820000 218300 IN EMPLOYEE-DATA-RECORD 21830000 218400 TO DATA-ELEMENT 21840000 218500 (11, EDIT-COLUMN-INDEX). 21850000 218600 MOVE EMPLOYEE-CLASSIFICATION 21860000 218700 IN EMPLOYEE-DATA-RECORD 21870000 218800 TO DATA-ELEMENT 21880000 218900 (12, EDIT-COLUMN-INDEX). 21890000 219000 MOVE EMPLOYEE-STATUS 21900000 219100 IN EMPLOYEE-DATA-RECORD 21910000 219200 TO DATA-ELEMENT 21920000 219300 (13, EDIT-COLUMN-INDEX). 21930000 219400 MOVE EMPLOYEE-DATE-EMPLOYED 21940000 219500 IN EMPLOYEE-DATA-RECORD 21950000 219600 TO DATA-ELEMENT 21960000 219700 (14, EDIT-COLUMN-INDEX). 21970000 219800 MOVE EMPLOYEE-CONTRACT 21980000 219900 IN EMPLOYEE-DATA-RECORD 21990000 220000 TO DATA-ELEMENT 22000000 220100 (15, EDIT-COLUMN-INDEX). 22010000 220200 MOVE EMPLOYEE-SALARY 22020000 220300 IN EMPLOYEE-DATA-RECORD 22030000 220400 TO DATA-ELEMENT 22040000 220500 (16, EDIT-COLUMN-INDEX). 22050000 220600 MOVE EMPLOYEE-STIPEND 22060000 220700 IN EMPLOYEE-DATA-RECORD 22070000 220800 TO DATA-ELEMENT 22080000 220900 (17, EDIT-COLUMN-INDEX). 22090000 221000* 22100000 221100* 22110000 221200 2020-BUMP-ERROR-COLUMN-INDEX. 22120000 221300 SET ORIGINAL-INDEX-VALUE 22130000 221400 TO EDIT-COLUMN-INDEX. 22140000 221500 SEARCH EDIT-ERROR-COLUMNS 22150000 221600 IN EDIT-ERROR-TABLE 22160000 221700 AT END 22170000 221800 PERFORM 5000-PRINT-ERROR-REPORT 22180000 221900 SET EDIT-COLUMN-INDEX TO 1 22190000 222000 WHEN ORIGINAL-INDEX-VALUE 22200000 222100 IS NOT EQUAL TO EDIT-COLUMN-INDEX 22210000 222200 NEXT SENTENCE. 22220000 222300* 22230000 222400* 22240000 222500 2100-VALIDATE-KEY-FIELDS. 22250000 222600 PERFORM 2110-VALIDATE-RECORD-IDENTITY. 22260000 222700 PERFORM 2120-VALIDATE-DISTRICT-ID. 22270000 222800 PERFORM 2130-VALIDATE-TERM-IDENTIFIER. 22280000 222900 PERFORM 2140-VALIDATE-EMPLOYEE-ID. 22290000 223000 PERFORM 2150-VALIDATE-ID-STATUS. 22300000 223100* PERFORM 2150-CONTINUE-IDENTITY-CHECK. 22310000 223200* PERFORM 2160-VALIDATE-ID-FORMAT. 22320000 223300* PERFORM 2170-ERROR-IN-ID-SETUP. 22330000 223400* 22340000 223500* 22350000 223600 2110-VALIDATE-RECORD-IDENTITY. 22360000 223700 IF EMPLOYEE-DATA 22370000 223800 NEXT SENTENCE 22380000 223900 ELSE 22390000 224000 MOVE VALIDITY-LITERAL 22400000 224100 TO DATA-ELEMENT-FLAG 22410000 224200 (2, EDIT-COLUMN-INDEX) 22420000 224300 ADD 1 TO DISTRICT-COUNT (2, 1) 22430000 224400 MOVE 1 TO REJECT-RECORD-FLAG. 22440000 224500* 22450000 224600* 22460000 224700 2120-VALIDATE-DISTRICT-ID. 22470000 224800 IF DISTRICT-ID 22480000 224900 IN EMPLOYEE-DATA-RECORD 22490000 225000 IS EQUAL TO HOLD-DISTRICT-ID 22500000 225100 NEXT SENTENCE 22510000 225200 ELSE 22520000 225300 MOVE VALIDITY-LITERAL 22530000 225400 TO DATA-ELEMENT-FLAG 22540000 225500 (3, EDIT-COLUMN-INDEX) 22550000 225600 ADD 1 TO DISTRICT-COUNT (3, 1) 22560000 225700 MOVE 1 TO REJECT-RECORD-FLAG. 22570000 225800* 22580000 225900* 22590000 226000 2130-VALIDATE-TERM-IDENTIFIER. 22600000 226100 IF CALENDAR-YEAR 22610000 226200 IN EMPLOYEE-DATA-RECORD 22620000 226300 IS EQUAL TO CALENDAR-YEAR 22630000 226400 IN RUNTIME-PARAMETER-AREA 22640000 226500 AND TERM-CODE 22650000 226600 IN EMPLOYEE-DATA-RECORD 22660000 226700 IS EQUAL TO TERM-CODE 22670000 226800 IN RUNTIME-PARAMETER-AREA 22680000 226900 NEXT SENTENCE 22690000 227000 ELSE 22700000 227100 MOVE VALIDITY-LITERAL 22710000 227200 TO DATA-ELEMENT-FLAG 22720000 227300 (4, EDIT-COLUMN-INDEX) 22730000 227400 ADD 1 TO DISTRICT-COUNT (4, 1) 22740000 227500 MOVE 1 TO REJECT-RECORD-FLAG. 22750000 227600* 22760000 227700* 22770000 227800 2140-VALIDATE-EMPLOYEE-ID. 22780000 227900 IF EMPLOYEE-IDENTIFIER 22790000 228000 IN EMPLOYEE-DATA-RECORD 22800000 228100 IS EQUAL TO SPACES 22810000 228200 OR ID-FIRST IS EQUAL TO SPACE 22820000 228300 PERFORM 2170-ERROR-IN-ID-SETUP 22830000 228400 ELSE 22840000 228500 MOVE 1 TO EB00-FLAG. 22850000 228600* 22860000 228700* 22870000 228800 2150-VALIDATE-ID-STATUS. 22880000 228900 MOVE EMPLOYEE-IDENTIFIER-STATUS 22890000 229000 IN EMPLOYEE-DATA-RECORD 22900000 229100 TO CHECK-ID-STATUS. 22910000 229200 IF ID-STATUS-VALID 22920000 229300 MOVE 1 TO EB01-FLAG 22930000 229400 ELSE 22940000 229500 MOVE VALIDITY-LITERAL 22950000 229600 TO DATA-ELEMENT-FLAG 22960000 229700 (5, EDIT-COLUMN-INDEX) 22970000 229800 ADD 1 TO DISTRICT-COUNT (5, 1) 22980000 229900 MOVE 1 TO REJECT-RECORD-FLAG. 22990000 230000 23000000 230100*2150-CONTINUE-IDENTITY-CHECK. 23010000 230200* MOVE EMPLOYEE-IDENTIFIER-STATUS 23020000 230300* IN EMPLOYEE-DATA-RECORD 23030000 230400* TO CHECK-ID-STATUS. 23040000 230500* IF ID-STATUS-VALID 23050000 230600* PERFORM 2160-VALIDATE-ID-FORMAT 23060000 230700* ELSE 23070000 230800* MOVE VALIDITY-LITERAL 23080000 230900* TO DATA-ELEMENT-FLAG 23090000 231000* (5, EDIT-COLUMN-INDEX) 23100000 231100* ADD 1 TO DISTRICT-COUNT (5, 1) 23110000 231200* MOVE 1 TO REJECT-RECORD-FLAG. 23120000 231300* 23130000 231400* 23140000 231500*2160-VALIDATE-ID-FORMAT. 23150000 231600* IF EMPLOYEE-ID-IS-SSN 23160000 231700* AND EMPLOYEE-IDENTIFIER 23170000 231800* IN EMPLOYEE-DATA-RECORD 23180000 231900* IS NOT NUMERIC 23190000 232000* PERFORM 2170-ERROR-IN-ID-SETUP. 23200000 232100* 23210000 232200* 23220000 232300 2170-ERROR-IN-ID-SETUP. 23230000 232400 MOVE VALIDITY-LITERAL 23240000 232500 TO DATA-ELEMENT-FLAG 23250000 232600 (1, EDIT-COLUMN-INDEX). 23260000 232700 ADD 1 TO DISTRICT-COUNT (1, 1). 23270000 232800 MOVE 1 TO REJECT-RECORD-FLAG. 23280000 232900* 23290000 233000* 23300000 233100 2200-VALIDATE-DEMOGRAPHIC-DATA. 23310000 233200 IF EMPLOYEE-BIRTHDATE 23320000 233300 IN EMPLOYEE-DATA-RECORD 23330000 233400 IS NUMERIC 23340000 233500 PERFORM 2210-VALIDATE-BIRTHDATE 23350000 233600 ELSE 23360000 233700 MOVE VALIDITY-LITERAL 23370000 233800 TO DATA-ELEMENT-FLAG 23380000 233900 (6, EDIT-COLUMN-INDEX) 23390000 234000 ADD 1 TO DISTRICT-COUNT (6, 1) 23400000 234100 MOVE 1 TO REJECT-RECORD-FLAG. 23410000 234200 PERFORM 2220-VALIDATE-GENDER. 23420000 234300 PERFORM 2230-VALIDATE-ETHNICITY. 23430000 234400 PERFORM 2240-VALIDATE-CITIZENSHIP. 23440000 234500 PERFORM 2250-VALIDATE-DISABILITY. 23450000 234600* 23460000 234700* 23470000 234800 2210-VALIDATE-BIRTHDATE. 23480000 234900 MOVE EMPLOYEE-BIRTHDATE 23490000 235000 IN EMPLOYEE-DATA-RECORD 23500000 235100 TO CHECK-BIRTH-DATE 23510000 235200 IF BIRTH-DATE-UNKNOWN 23520000 235300 NEXT SENTENCE 23530000 235400 ELSE 23540000 235500 IF BIRTH-DAY-UNKNOWN 23550000 235600 MOVE EMPLOYEE-BIRTHDATE 23560000 235700 IN EMPLOYEE-DATA-RECORD 23570000 235800 TO HOLD-BIRTHDATE 23580000 235900 MOVE UNKNOWN-DAY 23590000 236000 TO BIRTH-DAY 23600000 236100 IN HOLD-BIRTHDATE 23610000 236200 PERFORM 2211-CONTINUE-BIRTHDATE 23620000 236300 ELSE 23630000 236400 IF BIRTH-DATE-NOT-APP 23640000 236500 NEXT SENTENCE 23650000 236600 ELSE 23660000 236700 MOVE EMPLOYEE-BIRTHDATE 23670000 236800 IN EMPLOYEE-DATA-RECORD 23680000 236900 TO HOLD-BIRTHDATE 23690000 237000 PERFORM 2211-CONTINUE-BIRTHDATE. 23700000 237100* 23710000 237200* 23720000 237300 2211-CONTINUE-BIRTHDATE. 23730000 237400 MOVE HOLD-BIRTHDATE 23740000 237500 TO YYMMDD-DATE-WORKAREA 23750000 237600 IN DATE-VALIDATION-WORKAREA. 23760000 237700 MOVE YYMMDD-FORMAT-VALUE 23770000 237800 OF DATE-ROUTINE-VALUES 23780000 237900 IN DATE-VALIDATION-WORKAREA 23790000 238000 TO DATE-FORMAT-FLAG 23800000 238100 IN DATE-VALIDATION-WORKAREA. 23810000 238200 PERFORM 2500-DATE-VALIDATION-ROUTINE. 23820000 238300 IF DATE-IS-VALID 23830000 238400 MOVE 1 TO EB02-FLAG 23840000 238500 PERFORM 2212-COMPUTE-EMPLOYEE-AGE 23850000 238600 ELSE 23860000 238700 MOVE VALIDITY-LITERAL 23870000 238800 TO DATA-ELEMENT-FLAG 23880000 238900 (6, EDIT-COLUMN-INDEX) 23890000 239000 ADD 1 TO DISTRICT-COUNT (6, 1) 23900000 239100 MOVE 1 TO REJECT-RECORD-FLAG. 23910000 239200* 23920000 239300* 23930000 239400 2212-COMPUTE-EMPLOYEE-AGE. 23940000 239500 COMPUTE COMPUTED-AGE 23950000 239600 = CALENDAR-YEAR 23960000 239700 IN EMPLOYEE-DATA-RECORD 23970000 239800 - BIRTH-YEAR 23980000 239900 IN HOLD-BIRTHDATE. 23990000 240000 IF BIRTH-MONTH 24000000 240100 IN HOLD-BIRTHDATE 24010000 240200 IS GREATER THAN 24020000 240300 AGE-COMPUTATION-MONTH 24030000 240400 IN TERM-IDENTIFIER-ENTRY 24040000 240500 (TERM-IDENTIFIER-INDEX) 24050000 240600 SUBTRACT 1 FROM COMPUTED-AGE 24060000 240700 ELSE 24070000 240800 IF BIRTH-MONTH 24080000 240900 IN HOLD-BIRTHDATE 24090000 241000 IS EQUAL TO 24100000 241100 AGE-COMPUTATION-MONTH 24110000 241200 IN TERM-IDENTIFIER-ENTRY 24120000 241300 (TERM-IDENTIFIER-INDEX) 24130000 241400 AND 24140000 241500 BIRTH-DAY 24150000 241600 IN HOLD-BIRTHDATE 24160000 241700 IS GREATER THAN 24170000 241800 AGE-COMPUTATION-DAY 24180000 241900 IN TERM-IDENTIFIER-ENTRY 24190000 242000 (TERM-IDENTIFIER-INDEX) 24200000 242100 SUBTRACT 1 FROM COMPUTED-AGE. 24210000 242200* 24220000 242300* 24230000 242400 2220-VALIDATE-GENDER. 24240000 242500 MOVE EMPLOYEE-GENDER 24250000 242600 IN EMPLOYEE-DATA-RECORD 24260000 242700 TO CHECK-GENDER. 24270000 242800* IF GENDER-UNKNOWN 24280000 242900* ADD 1 TO DISTRICT-COUNT (7, 2). 24290000 243000 IF GENDER-VALID 24300000 243100 MOVE 1 TO EB03-FLAG 24310000 243200 ELSE 24320000 243300 MOVE VALIDITY-LITERAL 24330000 243400 TO DATA-ELEMENT-FLAG 24340000 243500 (7, EDIT-COLUMN-INDEX) 24350000 243600 ADD 1 TO DISTRICT-COUNT (7, 1) 24360000 243700 MOVE 1 TO REJECT-RECORD-FLAG. 24370000 243800* 24380000 243900* 24390000 244000 2230-VALIDATE-ETHNICITY. 24400000 244100 INSPECT EMPLOYEE-RACIAL-ETHNIC-CODE 24410000 244200 IN EMPLOYEE-DATA-RECORD 24420000 244300 REPLACING ALL ' ' BY '.'. 24430000 244400 MOVE EMPLOYEE-RACIAL-ETHNIC-CODE 24440000 244500 IN EMPLOYEE-DATA-RECORD 24450000 244600 TO CHECK-RACE-ETHNICITY. 24460000 244700 IF RACE-ETHNICITY-UNKNOWN 24470000 244800 ADD 1 TO DISTRICT-COUNT (8, 2). 24480000 244900 IF RACE-ETHNICITY-VALID 24490000 245000 MOVE 1 TO EB04-FLAG 24500000 245100 ELSE 24510000 245200 MOVE VALIDITY-LITERAL 24520000 245300 TO DATA-ELEMENT-FLAG 24530000 245400 (8, EDIT-COLUMN-INDEX) 24540000 245500 ADD 1 TO DISTRICT-COUNT (8, 1) 24550000 245600 MOVE 1 TO REJECT-RECORD-FLAG. 24560000 245700* 24570000 245800* 24580000 245900 2240-VALIDATE-CITIZENSHIP. 24590000 246000 MOVE EMPLOYEE-CITIZENSHIP 24600000 246100 IN EMPLOYEE-DATA-RECORD 24610000 246200 TO CHECK-CITIZENSHIP. 24620000 246300* IF CITIZENSHIP-UNKNOWN 24630000 246400* ADD 1 TO DISTRICT-COUNT (9, 2). 24640000 246500 IF CITIZENSHIP-VALID 24650000 246600 MOVE 1 TO EB05-FLAG 24660000 246700 ELSE 24670000 246800 MOVE VALIDITY-LITERAL 24680000 246900 TO DATA-ELEMENT-FLAG 24690000 247000 (9, EDIT-COLUMN-INDEX) 24700000 247100 ADD 1 TO DISTRICT-COUNT (9, 1) 24710000 247200 MOVE 1 TO REJECT-RECORD-FLAG. 24720000 247300* 24730000 247400* 24740000 247500 2250-VALIDATE-DISABILITY. 24750000 247600 MOVE EMPLOYEE-DISABILITY-STATUS 24760000 247700 IN EMPLOYEE-DATA-RECORD 24770000 247800 TO CHECK-DISABILITY. 24780000 247900* IF DISABILITY-UNKNOWN 24790000 248000* ADD 1 TO DISTRICT-COUNT (10, 2). 24800000 248100 IF DISABILITY-VALID 24810000 248200 MOVE 1 TO EB06-FLAG 24820000 248300 ELSE 24830000 248400 MOVE VALIDITY-LITERAL 24840000 248500 TO DATA-ELEMENT-FLAG 24850000 248600 (10, EDIT-COLUMN-INDEX) 24860000 248700 ADD 1 TO DISTRICT-COUNT (10, 1) 24870000 248800 MOVE 1 TO REJECT-RECORD-FLAG. 24880000 248900* 24890000 249000* 24900000 249100 2300-VALIDATE-EMPLOYMENT-DATA. 24910000 249200 PERFORM 2310-VALIDATE-EEO6-ACTIVITY. 24920000 249300 PERFORM 2320-VALIDATE-CLASSIFICATION. 24930000 249400 PERFORM 2330-VALIDATE-EMPLOYEE-STATUS. 24940000 249500 PERFORM 2340-VALIDATE-HIRE-DATE. 24950000 249600 PERFORM 2350-VALIDATE-CONTRACT. 24960000 249700 PERFORM 2360-VALIDATE-SALARY. 24970000 249800 PERFORM 2370-VALIDATE-STIPEND. 24980000 249900* 24990000 250000* 25000000 250100 2310-VALIDATE-EEO6-ACTIVITY. 25010000 250200 MOVE EMPLOYEE-EEO6-ACTIVITY 25020000 250300 IN EMPLOYEE-DATA-RECORD 25030000 250400 TO CHECK-EEO6. 25040000 250500* IF EEO6-UNKNOWN 25050000 250600* ADD 1 TO DISTRICT-COUNT (11, 2). 25060000 250700 IF EEO6-VALID 25070000 250800 MOVE 1 TO EB07-FLAG 25080000 250900 ELSE 25090000 251000 MOVE VALIDITY-LITERAL 25100000 251100 TO DATA-ELEMENT-FLAG 25110000 251200 (11, EDIT-COLUMN-INDEX) 25120000 251300 ADD 1 TO DISTRICT-COUNT (11, 1) 25130000 251400 MOVE 1 TO REJECT-RECORD-FLAG. 25140000 251500* 25150000 251600* 25160000 251700 2320-VALIDATE-CLASSIFICATION. 25170000 251800 MOVE EMPLOYEE-CLASSIFICATION 25180000 251900 IN EMPLOYEE-DATA-RECORD 25190000 252000 TO CHECK-CLASSIFICATION. 25200000 252100 IF CLASSIFICATION-VALID 25210000 252200 MOVE 1 TO EB08-FLAG 25220000 252300 ELSE 25230000 252400 MOVE VALIDITY-LITERAL 25240000 252500 TO DATA-ELEMENT-FLAG 25250000 252600 (12, EDIT-COLUMN-INDEX) 25260000 252700 ADD 1 TO DISTRICT-COUNT (12, 1) 25270000 252800 MOVE 1 TO REJECT-RECORD-FLAG. 25280000 252900* 25290000 253000* 25300000 253100 2330-VALIDATE-EMPLOYEE-STATUS. 25310000 253200 MOVE EMPLOYEE-STATUS 25320000 253300 IN EMPLOYEE-DATA-RECORD 25330000 253400 TO CHECK-STATUS. 25340000 253500 IF STATUS-VALID 25350000 253600 MOVE 1 TO EB09-FLAG 25360000 253700 ELSE 25370000 253800 MOVE VALIDITY-LITERAL 25380000 253900 TO DATA-ELEMENT-FLAG 25390000 254000 (13, EDIT-COLUMN-INDEX) 25400000 254100 ADD 1 TO DISTRICT-COUNT (13, 1) 25410000 254200 MOVE 1 TO REJECT-RECORD-FLAG. 25420000 254300* 25430000 254400* 25440000 254500 2340-VALIDATE-HIRE-DATE. 25450000 254600 MOVE EMPLOYEE-DATE-EMPLOYED 25460000 254700 IN EMPLOYEE-DATA-RECORD 25470000 254800 TO CHECK-HIRE-DATE. 25480000 254900 IF HIRE-DATE-NOT-APP 25490000 255000 NEXT SENTENCE 25500000 255100 ELSE 25510000 255200 IF HIRE-DATE-UNKNOWN 25520000 255300 NEXT SENTENCE 25530000 255400 ELSE 25540000 255500 IF HIRE-DAY-UNKNOWN 25550000 255600 MOVE EMPLOYEE-DATE-EMPLOYED 25560000 255700 IN EMPLOYEE-DATA-RECORD 25570000 255800 TO HOLD-HIREDATE 25580000 255900 MOVE UNKNOWN-DAY 25590000 256000 TO HIRE-DAY 25600000 256100 IN HOLD-HIREDATE 25610000 256200 PERFORM 2341-CONTINUE-HIRE-DATE 25620000 256300 ELSE 25630000 256400 MOVE EMPLOYEE-DATE-EMPLOYED 25640000 256500 IN EMPLOYEE-DATA-RECORD 25650000 256600 TO HOLD-HIREDATE 25660000 256700 PERFORM 2341-CONTINUE-HIRE-DATE. 25670000 256800* 25680000 256900* 25690000 257000 2341-CONTINUE-HIRE-DATE. 25700000 257100 MOVE HOLD-HIREDATE 25710000 257200 TO YYMMDD-DATE-WORKAREA 25720000 257300 IN DATE-VALIDATION-WORKAREA. 25730000 257400 MOVE YYMMDD-FORMAT-VALUE 25740000 257500 OF DATE-ROUTINE-VALUES 25750000 257600 IN DATE-VALIDATION-WORKAREA 25760000 257700 TO DATE-FORMAT-FLAG 25770000 257800 IN DATE-VALIDATION-WORKAREA. 25780000 257900 PERFORM 2500-DATE-VALIDATION-ROUTINE. 25790000 258000 IF DATE-IS-VALID 25800000 258100 MOVE 1 TO EB10-FLAG 25810000 258200 ELSE 25820000 258300 MOVE VALIDITY-LITERAL 25830000 258400 TO DATA-ELEMENT-FLAG 25840000 258500 (14, EDIT-COLUMN-INDEX) 25850000 258600 ADD 1 TO DISTRICT-COUNT (14, 1) 25860000 258700 MOVE 1 TO REJECT-RECORD-FLAG. 25870000 258800* 25880000 258900* 25890000 259000 2350-VALIDATE-CONTRACT. 25900000 259100 MOVE EMPLOYEE-CONTRACT 25910000 259200 IN EMPLOYEE-DATA-RECORD 25920000 259300 TO CHECK-CONTRACT. 25930000 259400 IF CONTRACT-VALID 25940000 259500 MOVE 1 TO EB11-FLAG 25950000 259600 ELSE 25960000 259700 MOVE VALIDITY-LITERAL 25970000 259800 TO DATA-ELEMENT-FLAG 25980000 259900 (15, EDIT-COLUMN-INDEX) 25990000 260000 ADD 1 TO DISTRICT-COUNT (15, 1) 26000000 260100 MOVE 1 TO REJECT-RECORD-FLAG. 26010000 260200* 26020000 260300* 26030000 260400 2360-VALIDATE-SALARY. 26040000 260500 IF EMPLOYEE-SALARY 26050000 260600 IN EMPLOYEE-DATA-RECORD 26060000 260700 IS EQUAL TO SPACES 26070000 260800 MOVE VALIDITY-LITERAL 26080000 260900 TO DATA-ELEMENT-FLAG 26090000 261000 (16, EDIT-COLUMN-INDEX) 26100000 261100 ADD 1 TO DISTRICT-COUNT (16, 1) 26110000 261200 MOVE 1 TO REJECT-RECORD-FLAG 26120000 261300 ELSE 26130000 261400 PERFORM 2361-CONTINUE-SALARY. 26140000 261500* 26150000 261600* 26160000 261700 2361-CONTINUE-SALARY. 26170000 261800 INSPECT EMPLOYEE-SALARY 26180000 261900 IN EMPLOYEE-DATA-RECORD 26190000 262000 REPLACING LEADING SPACES BY ZEROS. 26200000 262100 MOVE EMPLOYEE-SALARY 26210000 262200 IN EMPLOYEE-DATA-RECORD 26220000 262300 TO CHECK-SALARY. 26230000 262400 IF CHECK-SALARY NOT NUMERIC 26240000 262500 MOVE VALIDITY-LITERAL 26250000 262600 TO DATA-ELEMENT-FLAG 26260000 262700 (16, EDIT-COLUMN-INDEX) 26270000 262800 ADD 1 TO DISTRICT-COUNT (16, 1) 26280000 262900 MOVE 1 TO REJECT-RECORD-FLAG 26290000 263000 ELSE 26300000 263100 MOVE 1 TO EB12-FLAG. 26310000 263200* 26320000 263300* 26330000 263400 2370-VALIDATE-STIPEND. 26340000 263500 IF EMPLOYEE-STIPEND 26350000 263600 IN EMPLOYEE-DATA-RECORD 26360000 263700 IS EQUAL TO SPACES 26370000 263800 MOVE VALIDITY-LITERAL 26380000 263900 TO DATA-ELEMENT-FLAG 26390000 264000 (17, EDIT-COLUMN-INDEX) 26400000 264100 ADD 1 TO DISTRICT-COUNT (17, 1) 26410000 264200 MOVE 1 TO REJECT-RECORD-FLAG 26420000 264300 ELSE 26430000 264400 PERFORM 2371-CONTINUE-STIPEND. 26440000 264500* 26450000 264600* 26460000 264700 2371-CONTINUE-STIPEND. 26470000 264800 INSPECT EMPLOYEE-STIPEND 26480000 264900 IN EMPLOYEE-DATA-RECORD 26490000 265000 REPLACING LEADING SPACES BY ZEROS. 26500000 265100 MOVE EMPLOYEE-STIPEND 26510000 265200 IN EMPLOYEE-DATA-RECORD 26520000 265300 TO CHECK-STIPEND. 26530000 265400 IF CHECK-STIPEND NOT NUMERIC 26540000 265500 OR CHECK-STIPEND NOT GREATER THAN 0 26550000 265600 MOVE VALIDITY-LITERAL 26560000 265700 TO DATA-ELEMENT-FLAG 26570000 265800 (17, EDIT-COLUMN-INDEX) 26580000 265900 ADD 1 TO DISTRICT-COUNT (17, 1) 26590000 266000 MOVE 1 TO REJECT-RECORD-FLAG 26600000 266100 ELSE 26610000 266200 MOVE 1 TO EB13-FLAG. 26620000 266300* 26630000 266400* 26640000 266500 2400-INTEGRITY-EDITS. 26650000 266600 IF (EB00-VALID AND EB01-VALID) 26660000 266700 AND NOT EMPLOYEE-ID-IS-LOCAL 26670000 266800 PERFORM 2410-CHECK-IDS. 26680000 266900 IF EB02-VALID AND NOT OTHER-EMPLOYEE 26690000 267000 PERFORM 2415-AGE-REASONABLE-CHECK. 26700000 267100 IF EB07-VALID AND EB11-VALID 26710000 267200 PERFORM 2420-CHECK-CONTRACT. 26720000 267300* IF EB09-VALID AND EB10-VALID 26730000 267400* PERFORM 2430-CHECK-HIRE-DATE. 26740000 267500 IF EB12-VALID AND EB13-VALID 26750000 267600 PERFORM 2440-CHECK-PAY. 26760000 267700 IF EB08-VALID 26770000 267800 PERFORM 2450-CHECK-CLASSIFICATION. 26780000 267900* 26790000 268000* 26800000 268100 2410-CHECK-IDS. 26810000 268200 IF EMPLOYEE-ID-IS-SSN 26820000 268300 AND 26830000 268400 EMPLOYEE-IDENTIFIER IN EMPLOYEE-DATA-RECORD 26840000 268500 IS NOT NUMERIC 26850000 268600 MOVE INTEGRITY-LITERAL 26860000 268700 TO DATA-ELEMENT-FLAG 26870000 268800 (1, EDIT-COLUMN-INDEX) 26880000 268900 MOVE INTEGRITY-LITERAL 26890000 269000 TO DATA-ELEMENT-FLAG 26900000 269100 (5, EDIT-COLUMN-INDEX) 26910000 269200 ADD 1 TO DISTRICT-INT-CNT (1) 26920000 269300 MOVE 1 TO REJECT-RECORD-FLAG 26930000 269400 ELSE 26940000 269500 NEXT SENTENCE. 26950000 269600* 26960000 269700* 26970000 269800 2415-AGE-REASONABLE-CHECK. 26980000 269900 IF NOT TOO-YOUNG AND NOT TOO-OLD 26990000 270000 NEXT SENTENCE 27000000 270100 ELSE 27010000 270200 MOVE REASONABLE-LITERAL 27020000 270300 TO DATA-ELEMENT-FLAG 27030000 270400 (6, EDIT-COLUMN-INDEX) 27040000 270500 MOVE REASONABLE-LITERAL 27050000 270600 TO REASONABLE-FLAG 27060000 270700 ADD 1 TO DISTRICT-COUNT (6, 3). 27070000 270800* 27080000 270900* 27090000 271000 2420-CHECK-CONTRACT. 27100000 271100 IF EEO6-FACULTY AND NOT KNOWN-CONTRACT-LENGTH 27110000 271200 MOVE INTEGRITY-LITERAL 27120000 271300 TO DATA-ELEMENT-FLAG 27130000 271400 (11, EDIT-COLUMN-INDEX) 27140000 271500 MOVE INTEGRITY-LITERAL 27150000 271600 TO DATA-ELEMENT-FLAG 27160000 271700 (15, EDIT-COLUMN-INDEX) 27170000 271800 ADD 1 TO DISTRICT-INT-CNT (5) 27180000 271900 MOVE 1 TO REJECT-RECORD-FLAG 27190000 272000 ELSE 27200000 272100 NEXT SENTENCE. 27210000 272200* 27220000 272300* 27230000 272400*2430-CHECK-HIRE-DATE. 27240000 272500* IF NEW-HIRE 27250000 272600* IF TERM-CODE 27260000 272700* IN RUNTIME-PARAMETER-AREA 27270000 272800* IS EQUAL TO '9' 27280000 272900* PERFORM 2431-CONT-CHECK-HIRE-DATE-FC 27290000 273000* ELSE 27300000 273100* PERFORM 2432-CONT-CHECK-HIRE-DATE-ANL. 27310000 273200* 27320000 273300* 27330000 273400 2431-CONT-CHECK-HIRE-DATE-FC. 27340000 273500 IF (HOLD-HIREDATE 27350000 273600 > EMPLOY-BEGIN-DATE-FIRSTCEN 27360000 273700 OR HOLD-HIREDATE 27370000 273800 = EMPLOY-BEGIN-DATE-FIRSTCEN) 27380000 273900 AND 27390000 274000 (HOLD-HIREDATE 27400000 274100 < EMPLOY-END-DATE-FIRSTCEN 27410000 274200 OR HOLD-HIREDATE 27420000 274300 = EMPLOY-END-DATE-FIRSTCEN) 27430000 274400 NEXT SENTENCE 27440000 274500 ELSE 27450000 274600 MOVE INTEGRITY-LITERAL 27460000 274700 TO DATA-ELEMENT-FLAG 27470000 274800 (13, EDIT-COLUMN-INDEX) 27480000 274900 MOVE INTEGRITY-LITERAL 27490000 275000 TO DATA-ELEMENT-FLAG 27500000 275100 (14, EDIT-COLUMN-INDEX) 27510000 275200 ADD 1 TO DISTRICT-INT-CNT (9) 27520000 275300 MOVE 1 TO REJECT-RECORD-FLAG. 27530000 275400* 27540000 275500* 27550000 275600 2432-CONT-CHECK-HIRE-DATE-ANL. 27560000 275700 IF (HOLD-HIREDATE 27570000 275800 > EMPLOY-BEGIN-DATE-ANNUAL 27580000 275900 OR HOLD-HIREDATE 27590000 276000 = EMPLOY-BEGIN-DATE-ANNUAL) 27600000 276100 AND 27610000 276200 (HOLD-HIREDATE 27620000 276300 < EMPLOY-END-DATE-ANNUAL 27630000 276400 OR HOLD-HIREDATE 27640000 276500 = EMPLOY-END-DATE-ANNUAL) 27650000 276600 NEXT SENTENCE 27660000 276700 ELSE 27670000 276800 MOVE INTEGRITY-LITERAL 27680000 276900 TO DATA-ELEMENT-FLAG 27690000 277000 (13, EDIT-COLUMN-INDEX) 27700000 277100 MOVE INTEGRITY-LITERAL 27710000 277200 TO DATA-ELEMENT-FLAG 27720000 277300 (14, EDIT-COLUMN-INDEX) 27730000 277400 ADD 1 TO DISTRICT-INT-CNT (9) 27740000 277500 MOVE 1 TO REJECT-RECORD-FLAG. 27750000 277600* 27760000 277700* 27770000 277800 2440-CHECK-PAY. 27780000 277900 IF (CHECK-STIPEND IS GREATER THAN 0 27790000 278000 AND NOT STIPEND-NOT-APP) 27800000 278100 IF (NOT SALARY-NOT-APP 27810000 278200 AND 27820000 278300 NOT UNPAID-LEAVE) 27830000 278400 NEXT SENTENCE 27840000 278500 ELSE 27850000 278600 MOVE INTEGRITY-LITERAL 27860000 278700 TO DATA-ELEMENT-FLAG 27870000 278800 (16, EDIT-COLUMN-INDEX) 27880000 278900 MOVE INTEGRITY-LITERAL 27890000 279000 TO DATA-ELEMENT-FLAG 27900000 279100 (17, EDIT-COLUMN-INDEX) 27910000 279200 ADD 1 TO DISTRICT-INT-CNT (12) 27920000 279300 MOVE 1 TO REJECT-RECORD-FLAG. 27930000 279400* 27940000 279500* 27950000 279600 2450-CHECK-CLASSIFICATION. 27960000 279700 IF BIRTH-DATE-NOT-APP 27970000 279800 PERFORM 2451-CHECK-BIRTH-DATE. 27980000 279900 IF CITIZENSHIP-NOT-APP AND EB05-VALID 27990000 280000 PERFORM 2452-CHECK-CITIZENSHIP. 28000000 280100 IF DISABILITY-NOT-APP AND EB06-VALID 28010000 280200 PERFORM 2453-CHECK-DISABILITY. 28020000 280300 IF STATUS-NOT-APP 28030000 280400 PERFORM 2454-CHECK-STATUS. 28040000 280500 IF HIRE-DATE-NOT-APP 28050000 280600 PERFORM 2455-CHECK-HIRE-DATE. 28060000 280700 IF CONTRACT-NOT-APP AND EB11-VALID 28070000 280800 PERFORM 2456-CHECK-CONTRACT. 28080000 280900 IF (OTHER-EMPLOYEE AND EB12-VALID) 28090000 281000 IF TERM-CODE IN EMPLOYEE-DATA-RECORD IS EQUAL TO '9' 28100000 281100 IF EB12-VALID 28110000 281200 PERFORM 2457-CHECK-SALARY. 28120000 281300 IF OTHER-EMPLOYEE 28130000 281400 IF TERM-CODE IN EMPLOYEE-DATA-RECORD IS EQUAL TO '9' 28140000 281500 IF EB13-VALID 28150000 281600 PERFORM 2458-CHECK-STIPEND. 28160000 281700* 28170000 281800* 28180000 281900 2451-CHECK-BIRTH-DATE. 28190000 282000 IF OTHER-EMPLOYEE 28200000 282100 NEXT SENTENCE 28210000 282200 ELSE 28220000 282300 MOVE INTEGRITY-LITERAL 28230000 282400 TO DATA-ELEMENT-FLAG 28240000 282500 (6, EDIT-COLUMN-INDEX) 28250000 282600 MOVE INTEGRITY-LITERAL 28260000 282700 TO DATA-ELEMENT-FLAG 28270000 282800 (12, EDIT-COLUMN-INDEX) 28280000 282900 ADD 1 TO DISTRICT-INT-CNT (2) 28290000 283000 MOVE 1 TO REJECT-RECORD-FLAG. 28300000 283100* 28310000 283200* 28320000 283300 2452-CHECK-CITIZENSHIP. 28330000 283400 IF OTHER-EMPLOYEE 28340000 283500 NEXT SENTENCE 28350000 283600 ELSE 28360000 283700 MOVE INTEGRITY-LITERAL 28370000 283800 TO DATA-ELEMENT-FLAG 28380000 283900 (9, EDIT-COLUMN-INDEX) 28390000 284000 MOVE INTEGRITY-LITERAL 28400000 284100 TO DATA-ELEMENT-FLAG 28410000 284200 (12, EDIT-COLUMN-INDEX) 28420000 284300 ADD 1 TO DISTRICT-INT-CNT (3) 28430000 284400 MOVE 1 TO REJECT-RECORD-FLAG. 28440000 284500* 28450000 284600* 28460000 284700 2453-CHECK-DISABILITY. 28470000 284800 IF OTHER-EMPLOYEE 28480000 284900 NEXT SENTENCE 28490000 285000 ELSE 28500000 285100 MOVE INTEGRITY-LITERAL 28510000 285200 TO DATA-ELEMENT-FLAG 28520000 285300 (10, EDIT-COLUMN-INDEX) 28530000 285400 MOVE INTEGRITY-LITERAL 28540000 285500 TO DATA-ELEMENT-FLAG 28550000 285600 (12, EDIT-COLUMN-INDEX) 28560000 285700 ADD 1 TO DISTRICT-INT-CNT (4) 28570000 285800 MOVE 1 TO REJECT-RECORD-FLAG. 28580000 285900* 28590000 286000* 28600000 286100 2454-CHECK-STATUS. 28610000 286200 IF OTHER-EMPLOYEE 28620000 286300 NEXT SENTENCE 28630000 286400 ELSE 28640000 286500 MOVE INTEGRITY-LITERAL 28650000 286600 TO DATA-ELEMENT-FLAG 28660000 286700 (13, EDIT-COLUMN-INDEX) 28670000 286800 MOVE INTEGRITY-LITERAL 28680000 286900 TO DATA-ELEMENT-FLAG 28690000 287000 (12, EDIT-COLUMN-INDEX) 28700000 287100 ADD 1 TO DISTRICT-INT-CNT (8) 28710000 287200 MOVE 1 TO REJECT-RECORD-FLAG. 28720000 287300* 28730000 287400* 28740000 287500 2455-CHECK-HIRE-DATE. 28750000 287600 IF OTHER-EMPLOYEE 28760000 287700 OR TEMP-EMPLOYEE 28770000 287800 NEXT SENTENCE 28780000 287900 ELSE 28790000 288000 MOVE INTEGRITY-LITERAL 28800000 288100 TO DATA-ELEMENT-FLAG 28810000 288200 (14, EDIT-COLUMN-INDEX) 28820000 288300 MOVE INTEGRITY-LITERAL 28830000 288400 TO DATA-ELEMENT-FLAG 28840000 288500 (12, EDIT-COLUMN-INDEX) 28850000 288600 ADD 1 TO DISTRICT-INT-CNT (10) 28860000 288700 MOVE 1 TO REJECT-RECORD-FLAG. 28870000 288800* 28880000 288900* 28890000 289000 2456-CHECK-CONTRACT. 28900000 289100 IF OTHER-EMPLOYEE 28910000 289200 NEXT SENTENCE 28920000 289300 ELSE 28930000 289400 MOVE INTEGRITY-LITERAL 28940000 289500 TO DATA-ELEMENT-FLAG 28950000 289600 (15, EDIT-COLUMN-INDEX) 28960000 289700 MOVE INTEGRITY-LITERAL 28970000 289800 TO DATA-ELEMENT-FLAG 28980000 289900 (12, EDIT-COLUMN-INDEX) 28990000 290000 ADD 1 TO DISTRICT-INT-CNT (11) 29000000 290100 MOVE 1 TO REJECT-RECORD-FLAG. 29010000 290200* 29020000 290300* 29030000 290400 2457-CHECK-SALARY. 29040000 290500 IF SALARY-NOT-APP 29050000 290600 NEXT SENTENCE 29060000 290700 ELSE 29070000 290800 MOVE INTEGRITY-LITERAL 29080000 290900 TO DATA-ELEMENT-FLAG 29090000 291000 (12, EDIT-COLUMN-INDEX) 29100000 291100 MOVE INTEGRITY-LITERAL 29110000 291200 TO DATA-ELEMENT-FLAG 29120000 291300 (16, EDIT-COLUMN-INDEX) 29130000 291400 ADD 1 TO DISTRICT-INT-CNT (6) 29140000 291500 MOVE 1 TO REJECT-RECORD-FLAG. 29150000 291600* 29160000 291700* 29170000 291800 2458-CHECK-STIPEND. 29180000 291900 IF STIPEND-NOT-APP 29190000 292000 NEXT SENTENCE 29200000 292100 ELSE 29210000 292200 MOVE INTEGRITY-LITERAL 29220000 292300 TO DATA-ELEMENT-FLAG 29230000 292400 (12, EDIT-COLUMN-INDEX) 29240000 292500 MOVE INTEGRITY-LITERAL 29250000 292600 TO DATA-ELEMENT-FLAG 29260000 292700 (17, EDIT-COLUMN-INDEX) 29270000 292800 ADD 1 TO DISTRICT-INT-CNT (7) 29280000 292900 MOVE 1 TO REJECT-RECORD-FLAG. 29290000 293000* 29300000 293100* 29310000 293200 2500-DATE-VALIDATION-ROUTINE. 29320000 293300**************************************************************** 29330000 293400* * 29340000 293500* D A T E V A L I D A T I O N P R O C E D U R E * 29350000 293600* * 29360000 293700* INSTRUCTIONS: * 29370000 293800* 1. MOVE THE DATE TO BE VALIDATED TO THE FOLLOWING * 29380000 293900* FIELDS FOR THE GIVEN FORMATS: * 29390000 294000* A. YYMMDD FORMAT -- MOVE TO: YYMMDD-DATE-WORKAREA * 29400000 294100* B. MMDD FORMAT -- MOVE TO: MMDD-DATE-WORK-FIELDS * 29410000 294200* (NOTE BELOW FOR DETERMINING LEAP YEAR FOR MMDD * 29420000 294300* DATE FORMAT.) * 29430000 294400* C. YYMM FORMAT -- MOVE TO: YYMM-DATE-WORKAREA * 29440000 294500* 2. WHEN PERFORMING THE PROCEDURE THAT USES THIS WORK * 29450000 294600* AREA, FILL IN THE APPROPRIATE DATE-FORMAT-FLAG * 29460000 294700* VALUES: 1, 2 OR 3. SEE 03 LEVEL DATE-FORMAT-FLAG. * 29470000 294800* 3. IF USING THE MMDD-DATE-FORMAT (VALUE 2), THE YEAR * 29480000 294900* YOU WISH TO USE TO DETERMINE IF IT IS A LEAP YEAR * 29490000 295000* MUST BE FILLED IN. MOVE THIS VALUE INTO THE * 29500000 295100* MMDD-YEAR DATA ITEM. DO THIS PRIOR TO PERFORMING * 29510000 295200* THIS PROCEDURE. * 29520000 295300* * 29530000 295400**************************************************************** 29540000 295500 MOVE ZERO TO DATE-FLAGS. 29550000 295600 IF YYMMDD-DATE-FORMAT 29560000 295700 IF YYMMDD-DATE-WORKAREA 29570000 295800 IS NOT NUMERIC 29580000 295900 MOVE DATE-NOT-NUMERIC-FLAG 29590000 296000 TO DATE-VALIDATION-FLAG 29600000 296100 ELSE 29610000 296200 NEXT SENTENCE 29620000 296300 ELSE 29630000 296400 IF MMDD-DATE-FORMAT 29640000 296500 IF MMDD-DATE-WORKAREA 29650000 296600 IS NOT NUMERIC 29660000 296700 MOVE DATE-NOT-NUMERIC-FLAG 29670000 296800 TO DATE-VALIDATION-FLAG 29680000 296900 ELSE 29690000 297000 NEXT SENTENCE 29700000 297100 ELSE 29710000 297200 IF YYMM-DATE-FORMAT 29720000 297300 IF YYMM-DATE-WORKAREA 29730000 297400 IS NOT NUMERIC 29740000 297500 MOVE DATE-NOT-NUMERIC-FLAG 29750000 297600 TO DATE-VALIDATION-FLAG 29760000 297700 ELSE 29770000 297800 NEXT SENTENCE 29780000 297900 ELSE 29790000 298000 MOVE DATE-MISSING-FLAG 29800000 298100 TO DATE-VALIDATION-FLAG. 29810000 298200 IF DATE-NOT-NUMERIC 29820000 298300 OR DATE-MISSING 29830000 298400 NEXT SENTENCE 29840000 298500 ELSE 29850000 298600 PERFORM 1DVP-VALIDATE-DAY-MONTH-RTN. 29860000 298700* 29870000 298800* 29880000 298900 1DVP-VALIDATE-DAY-MONTH-RTN. 29890000 299000 IF YYMMDD-DATE-FORMAT 29900000 299100 MOVE YYMMDD-YEAR 29910000 299200 IN YYMMDD-DATE-WORKAREA 29920000 299300 TO YEAR 29930000 299400 IN CENTURY-WORKAREA 29940000 299500 MOVE YYMMDD-MONTH 29950000 299600 IN YYMMDD-DATE-WORKAREA 29960000 299700 TO MONTH-WORKAREA 29970000 299800 IN MONTH-DAY-WORKAREA 29980000 299900 MOVE YYMMDD-DAY 29990000 300000 IN YYMMDD-DATE-WORKAREA 30000000 300100 TO DAY-WORKAREA 30010000 300200 IN MONTH-DAY-WORKAREA 30020000 300300 ELSE 30030000 300400 IF MMDD-DATE-FORMAT 30040000 300500 MOVE MMDD-YEAR 30050000 300600 IN MMDD-DATE-WORKAREA 30060000 300700 TO YEAR 30070000 300800 IN CENTURY-WORKAREA 30080000 300900 MOVE MMDD-MONTH 30090000 301000 IN MMDD-DATE-WORKAREA 30100000 301100 TO MONTH-WORKAREA 30110000 301200 IN MONTH-DAY-WORKAREA 30120000 301300 MOVE MMDD-DAY 30130000 301400 IN MMDD-DATE-WORKAREA 30140000 301500 TO DAY-WORKAREA 30150000 301600 IN MONTH-DAY-WORKAREA 30160000 301700 ELSE 30170000 301800 IF YYMM-DATE-FORMAT 30180000 301900 MOVE 1 TO DAY-FLAG 30190000 302000 MOVE YYMM-MONTH 30200000 302100 IN YYMM-DATE-WORKAREA 30210000 302200 TO MONTH-WORKAREA 30220000 302300 IN MONTH-DAY-WORKAREA. 30230000 302400 PERFORM 2DVP-VALIDATE-MONTH-ROUTINE. 30240000 302500 IF VALID-MONTH 30250000 302600 AND NOT YYMM-DATE-FORMAT 30260000 302700 PERFORM 3DVP-VALIDATE-DAY-ROUTINE. 30270000 302800 IF VALID-DAY 30280000 302900 AND VALID-MONTH 30290000 303000 MOVE 1 TO DATE-VALIDATION-FLAG. 30300000 303100* 30310000 303200* 30320000 303300 2DVP-VALIDATE-MONTH-ROUTINE. 30330000 303400 IF NOT VALID-MONTH-VALUE 30340000 303500 MOVE ZERO TO MONTH-FLAG 30350000 303600 ELSE 30360000 303700 MOVE 1 TO MONTH-FLAG. 30370000 303800* 30380000 303900* 30390000 304000 3DVP-VALIDATE-DAY-ROUTINE. 30400000 304100 DIVIDE CENTURY-FOR-COMPUTATION 30410000 304200 BY DIVISOR-FOR-LEAP-YEAR 30420000 304300 GIVING LEAP-YEAR-QUOTIENT 30430000 304400 REMAINDER LEAP-YEAR-REMAINDER. 30440000 304500 IF YYMMDD-YEAR = 00 30450000 304600 MOVE 01 TO LEAP-YEAR-REMAINDER 30460000 304700 IN LEAP-YEAR-WORK. 30470000 304800 MOVE MONTH-WORKAREA 30480000 304900 TO MAXIMUM-DAY-FLAG. 30490000 305000 IF THIRTY-DAY-MONTH 30500000 305100 AND DAY-WORKAREA 30510000 305200 IS GREATER THAN MONTH-OF-30-DAYS 30520000 305300 MOVE ZERO TO DAY-FLAG 30530000 305400 ELSE 30540000 305500 IF THIRTY-ONE-DAY-MONTH 30550000 305600 AND DAY-WORKAREA 30560000 305700 IS GREATER THAN MONTH-OF-31-DAYS 30570000 305800 MOVE ZERO TO DAY-FLAG 30580000 305900 ELSE 30590000 306000 IF FEBRUARY 30600000 306100 IN DATE-VALIDATION-WORKAREA 30610000 306200 IF LEAP-YEAR 30620000 306300 AND DAY-WORKAREA 30630000 306400 IS GREATER THAN MONTH-OF-29-DAYS 30640000 306500 MOVE ZERO TO DAY-FLAG 30650000 306600 ELSE 30660000 306700 IF NOT LEAP-YEAR 30670000 306800 AND DAY-WORKAREA 30680000 306900 IS GREATER THAN MONTH-OF-28-DAYS 30690000 307000 MOVE ZERO TO DAY-FLAG 30700000 307100 ELSE 30710000 307200 MOVE 1 TO DAY-FLAG 30720000 307300 ELSE 30730000 307400 MOVE 1 TO DAY-FLAG. 30740000 307500 IF DAY-WORKAREA 30750000 307600 IS LESS THAN 1 30760000 307700 MOVE ZERO TO DAY-FLAG. 30770000 307800* 30780000 307900* 30790000 308000 2600-READ-EMPLOYEE-RECORD. 30800000 308100 READ EMPLOYEE-DATA-FILE 30810000 308200 AT END 30820000 308300 MOVE 1 TO END-OF-DATA-FLAG. 30830000 308400 IF EMPLOYEE-DATA-RECORD 30840000 308500 NOT EQUAL TO SPACES 30850000 308600 MOVE 0 TO BLANK-REC-FLAG. 30860000 308700* 30870000 308800* 30880000 308900 3000-OUTPUT-EDITED-DATA. 30890000 309000 PERFORM 3010-ADJUST-DATES. 30900000 309100 MOVE DISTRICT-ID 30910000 309200 IN EMPLOYEE-DATA-RECORD 30920000 309300 TO DISTRICT-ID 30930000 309400 IN EDITED-EMPLOYEE-DATA-RECORD. 30940000 309500 MOVE TERM-IDENTIFIER 30950000 309600 IN EMPLOYEE-DATA-RECORD 30960000 309700 TO TERM-IDENTIFIER 30970000 309800 IN EDITED-EMPLOYEE-DATA-RECORD. 30980000 309900 MOVE EMPLOYEE-IDENTIFIER 30990000 310000 IN EMPLOYEE-DATA-RECORD 31000000 310100 TO EMPLOYEE-IDENTIFIER 31010000 310200 IN EDITED-EMPLOYEE-DATA-RECORD. 31020000 310300 MOVE EMPLOYEE-IDENTIFIER-STATUS 31030000 310400 IN EMPLOYEE-DATA-RECORD 31040000 310500 TO EMPLOYEE-IDENTIFIER-STATUS 31050000 310600 IN EDITED-EMPLOYEE-DATA-RECORD. 31060000 310700 MOVE EMPLOYEE-BIRTHDATE 31070000 310800 IN EMPLOYEE-DATA-RECORD 31080000 310900 TO EMPLOYEE-BIRTHDATE 31090000 311000 IN EDITED-EMPLOYEE-DATA-RECORD. 31100000 311100 MOVE COMPUTED-AGE 31110000 311200 TO EMPLOYEE-AGE 31120000 311300 IN EDITED-EMPLOYEE-DATA-RECORD. 31130000 311400 MOVE EMPLOYEE-GENDER 31140000 311500 IN EMPLOYEE-DATA-RECORD 31150000 311600 TO EMPLOYEE-GENDER 31160000 311700 IN EDITED-EMPLOYEE-DATA-RECORD. 31170000 311800 MOVE EMPLOYEE-RACIAL-ETHNIC-CODE 31180000 311900 IN EMPLOYEE-DATA-RECORD 31190000 312000 TO EMPLOYEE-RACIAL-ETHNIC-CODE 31200000 312100 IN EDITED-EMPLOYEE-DATA-RECORD. 31210000 312200 MOVE EMPLOYEE-CITIZENSHIP 31220000 312300 IN EMPLOYEE-DATA-RECORD 31230000 312400 TO EMPLOYEE-CITIZENSHIP 31240000 312500 IN EDITED-EMPLOYEE-DATA-RECORD. 31250000 312600 MOVE EMPLOYEE-DISABILITY-STATUS 31260000 312700 IN EMPLOYEE-DATA-RECORD 31270000 312800 TO EMPLOYEE-DISABILITY-STATUS 31280000 312900 IN EDITED-EMPLOYEE-DATA-RECORD. 31290000 313000 MOVE EMPLOYEE-EEO6-ACTIVITY 31300000 313100 IN EMPLOYEE-DATA-RECORD 31310000 313200 TO EMPLOYEE-EEO6-ACTIVITY 31320000 313300 IN EDITED-EMPLOYEE-DATA-RECORD. 31330000 313400 MOVE EMPLOYEE-CLASSIFICATION 31340000 313500 IN EMPLOYEE-DATA-RECORD 31350000 313600 TO EMPLOYEE-CLASSIFICATION 31360000 313700 IN EDITED-EMPLOYEE-DATA-RECORD. 31370000 313800 MOVE EMPLOYEE-STATUS 31380000 313900 IN EMPLOYEE-DATA-RECORD 31390000 314000 TO EMPLOYEE-STATUS 31400000 314100 IN EDITED-EMPLOYEE-DATA-RECORD. 31410000 314200 MOVE EMPLOYEE-DATE-EMPLOYED 31420000 314300 IN EMPLOYEE-DATA-RECORD 31430000 314400 TO EMPLOYEE-DATE-EMPLOYED 31440000 314500 IN EDITED-EMPLOYEE-DATA-RECORD. 31450000 314600 MOVE EMPLOYEE-CONTRACT 31460000 314700 IN EMPLOYEE-DATA-RECORD 31470000 314800 TO EMPLOYEE-CONTRACT 31480000 314900 IN EDITED-EMPLOYEE-DATA-RECORD. 31490000 315000 MOVE EMPLOYEE-SALARY 31500000 315100 IN EMPLOYEE-DATA-RECORD 31510000 315200 TO EMPLOYEE-SALARY 31520000 315300 IN EDITED-EMPLOYEE-DATA-RECORD. 31530000 315400 MOVE EMPLOYEE-STIPEND 31540000 315500 IN EMPLOYEE-DATA-RECORD 31550000 315600 TO EMPLOYEE-STIPEND 31560000 315700 IN EDITED-EMPLOYEE-DATA-RECORD. 31570000 315800 WRITE EDITED-EMPLOYEE-DATA-RECORD. 31580000 315900 ADD 1 TO DISTRICT-EDITED-RECS-WRITTEN. 31590000 316000* 31600000 316100* 31610000 316200 3010-ADJUST-DATES. 31620000 316300 IF BIRTH-DATE-UNKNOWN 31630000 316400 MOVE 99 TO COMPUTED-AGE 31640000 316500 MOVE UNKNOWN-DATE 31650000 316600 TO EMPLOYEE-BIRTHDATE 31660000 316700 IN EMPLOYEE-DATA-RECORD 31670000 316800 ELSE 31680000 316900 IF BIRTH-DAY-UNKNOWN 31690000 317000 MOVE 01 31700000 317100 TO EMPLOYEE-BIRTH-DAY 31710000 317200 IN EMPLOYEE-DATA-RECORD 31720000 317300 ELSE 31730000 317400 IF BIRTH-DATE-NOT-APP 31740000 317500 MOVE 99 TO COMPUTED-AGE 31750000 317600 MOVE NOT-APPL-DATE 31760000 317700 TO EMPLOYEE-BIRTHDATE 31770000 317800 IN EMPLOYEE-DATA-RECORD. 31780000 317900 IF HIRE-DATE-UNKNOWN 31790000 318000 ADD 1 TO DISTRICT-COUNT (14, 2) 31800000 318100 MOVE UNKNOWN-DATE 31810000 318200 TO EMPLOYEE-DATE-EMPLOYED 31820000 318300 IN EMPLOYEE-DATA-RECORD 31830000 318400 ELSE 31840000 318500 IF HIRE-DAY-UNKNOWN 31850000 318600 MOVE 01 31860000 318700 TO EMPLOYEE-HIRE-DAY 31870000 318800 IN EMPLOYEE-DATA-RECORD 31880000 318900 ELSE 31890000 319000 IF HIRE-DATE-NOT-APP 31900000 319100 MOVE NOT-APPL-DATE 31910000 319200 TO EMPLOYEE-DATE-EMPLOYED 31920000 319300 IN EMPLOYEE-DATA-RECORD. 31930000 319400* 31940000 319500* 31950000 319600 4100A-PRINT-TOTAL-LINES. 31960000 319700 MOVE TOTAL-DESCRIPTION 31970000 319800 IN TOTAL-DESCRIPTIONS-ENTRY 31980000 319900 (TOTAL-DESCRIPTIONS-INDEX) 31990000 320000 TO TOTAL-DESCRIPTION 32000000 320100 IN TOTAL-DETAIL-LINE. 32010000 320200 MOVE DISTRICT-TOTAL 32020000 320300 IN DISTRICT-TOTAL-ENTRY 32030000 320400 (DISTRICT-TOTAL-INDEX) 32040000 320500 TO TOTAL-FIELD 32050000 320600 IN TOTAL-DETAIL-LINE. 32060000 320700 WRITE PRINT-RECORD-2 32070000 320800 FROM TOTAL-DETAIL-LINE 32080000 320900 AFTER ADVANCING 1 LINE. 32090000 321000 MOVE SPACES TO TOTAL-DETAIL-LINE. 32100000 321100 SET ORIGINAL-INDEX-VALUE 32110000 321200 TO DISTRICT-TOTAL-INDEX. 32120000 321300 SEARCH DISTRICT-TOTAL-ENTRY 32130000 321400 AT END 32140000 321500 MOVE 1 TO TABLE-SEARCH-FLAG 32150000 321600 WHEN ORIGINAL-INDEX-VALUE 32160000 321700 IS NOT EQUAL TO DISTRICT-TOTAL-INDEX 32170000 321800 PERFORM 4150-BUMP-DESCRIPTOR-INDEX. 32180000 321900* 32190000 322000* 32200000 322100 4100B-OUTPUT-TOTALS-RECORD. 32210000 322200 MOVE REPORT-SUM3 TO TOTALS-ID3. 32220000 322300 MOVE DISTRICT-RECORDS-READ 32230000 322400 TO READ-TOTALS. 32240000 322500 MOVE DISTRICT-RECORDS-REJECTED 32250000 322600 TO REJECTED-TOTALS. 32260000 322700 MOVE DATE-HOLD TO DATE-FLAG. 32270000 322800 MOVE HH-MM TO TIME-FLAG. 32280000 322900 WRITE REPORT-TOTALS-RECORD3. 32290000 323000* 32300000 323100* 32310000 323200 4150-BUMP-DESCRIPTOR-INDEX. 32320000 323300 SEARCH TOTAL-DESCRIPTIONS-ENTRY 32330000 323400 AT END 32340000 323500 MOVE 1 TO TABLE-SEARCH-FLAG 32350000 323600 WHEN TOTAL-DESCRIPTIONS-INDEX 32360000 323700 IS EQUAL TO DISTRICT-TOTAL-INDEX 32370000 323800 NEXT SENTENCE. 32380000 323900* 32390000 324000* 32400000 324100 4200-PRINT-ERROR-TOTALS. 32410000 324200 MOVE REPORT-SUM1 TO TOTALS-ID1. 32420000 324300 MOVE ELEMENT-NUMBER 32430000 324400 (EDIT-ERROR-LITERAL-INDEX) 32440000 324500 TO DED-NUMBER. 32450000 324600 PERFORM 4210A-OUTPUT-TOTALS-RECORD. 32460000 324700 MOVE DATA-ELEMENT-LITERAL 32470000 324800 (EDIT-ERROR-LITERAL-INDEX) 32480000 324900 TO ELEMENT-LITERAL-AREA. 32490000 325000 SET ELEMENT-COLUMN-INDEX TO 1. 32500000 325100 SET ERROR-COUNT-COL-INDEX TO 1. 32510000 325200 PERFORM 4210B-FILL-ELEMENT-TOTAL-LINE 32520000 325300 UNTIL ELEMENT-COLUMN-INDEX > 4. 32530000 325400 WRITE PRINT-RECORD-2 32540000 325500 FROM ELEMENT-TOTAL-DETAIL-LINE 32550000 325600 AFTER ADVANCING 1 LINE. 32560000 325700 SET ORIGINAL-INDEX-VALUE 32570000 325800 TO ERROR-COUNT-ROW-INDEX. 32580000 325900 SEARCH EDIT-ERROR-COUNT-ROWS 32590000 326000 AT END 32600000 326100 MOVE 1 TO TABLE-SEARCH-FLAG 32610000 326200 WHEN ORIGINAL-INDEX-VALUE 32620000 326300 IS NOT EQUAL TO ERROR-COUNT-ROW-INDEX 32630000 326400 PERFORM 4250-BUMP-DESCRIPTOR-INDEX. 32640000 326500* 32650000 326600* 32660000 326700 4210A-OUTPUT-TOTALS-RECORD. 32670000 326800 MOVE ERROR-COUNT (ERROR-COUNT-ROW-INDEX, 1) 32680000 326900 TO EXCEPT-COUNT. 32690000 327000 MOVE ERROR-COUNT (ERROR-COUNT-ROW-INDEX, 2) 32700000 327100 TO UNKNOWN-COUNT. 32710000 327200 MOVE ERROR-COUNT (ERROR-COUNT-ROW-INDEX, 3) 32720000 327300 TO REASON-COUNT. 32730000 327400 WRITE REPORT-TOTALS-RECORD1. 32740000 327500* 32750000 327600* 32760000 327700 4210B-FILL-ELEMENT-TOTAL-LINE. 32770000 327800 IF (ERROR-COUNT-ROW-INDEX < 8 AND 32780000 327900 ERROR-COUNT-COL-INDEX = 2) OR 32790000 328000 (ERROR-COUNT-ROW-INDEX < 14 AND 32800000 328100 ERROR-COUNT-ROW-INDEX > 8 AND 32810000 328200 ERROR-COUNT-COL-INDEX = 2) OR 32820000 328300 (ERROR-COUNT-ROW-INDEX > 14 AND 32830000 328400 ERROR-COUNT-COL-INDEX = 2) OR 32840000 328500 (ERROR-COUNT-ROW-INDEX < 6 AND 32850000 328600 ERROR-COUNT-COL-INDEX = 3) OR 32860000 328700 (ERROR-COUNT-ROW-INDEX > 6 AND 32870000 328800 ERROR-COUNT-COL-INDEX = 3) OR 32880000 328900 (ERROR-COUNT-ROW-INDEX < 18 AND 32890000 329000 ERROR-COUNT-COL-INDEX = 4) 32900000 329100 MOVE NOT-APP-LITERAL 32910000 329200 TO ELEMENT-TOTAL-RED 32920000 329300 (ELEMENT-COLUMN-INDEX) 32930000 329400 ELSE 32940000 329500 MOVE ERROR-COUNT 32950000 329600 (ERROR-COUNT-ROW-INDEX, 32960000 329700 ERROR-COUNT-COL-INDEX) 32970000 329800 TO ELEMENT-TOTAL 32980000 329900 (ELEMENT-COLUMN-INDEX). 32990000 330000 SET ELEMENT-COLUMN-INDEX UP BY 1. 33000000 330100 SET ERROR-COUNT-COL-INDEX UP BY 1. 33010000 330200* 33020000 330300* 33030000 330400 4250-BUMP-DESCRIPTOR-INDEX. 33040000 330500 SEARCH EDIT-ERROR-LITERAL-ENTRY 33050000 330600 AT END 33060000 330700 MOVE 1 TO TABLE-SEARCH-FLAG 33070000 330800 WHEN EDIT-ERROR-LITERAL-INDEX 33080000 330900 IS EQUAL TO ERROR-COUNT-ROW-INDEX 33090000 331000 NEXT SENTENCE. 33100000 331100* 33110000 331200* 33120000 331300 4290-WRITE-COUNT-HEADERS. 33130000 331400 WRITE PRINT-RECORD-2 FROM REPORT-TITLE-LINE-5 33140000 331500 AFTER ADVANCING 2 LINES. 33150000 331600 WRITE PRINT-RECORD-2 FROM ELEMENT-COLUMN-LINE-1 33160000 331700 AFTER ADVANCING 2 LINES. 33170000 331800 WRITE PRINT-RECORD-2 FROM ELEMENT-COLUMN-LINE-2 33180000 331900 AFTER ADVANCING 1 LINES. 33190000 332000 WRITE PRINT-RECORD-2 FROM ELEMENT-COLUMN-LINE-3 33200000 332100 AFTER ADVANCING 1 LINES. 33210000 332200 MOVE SPACES TO PRINT-RECORD-2. 33220000 332300 WRITE PRINT-RECORD-2 AFTER ADVANCING 1 LINES. 33230000 332400* 33240000 332500* 33250000 332600 4500-WRITE-INTEGRITY-HEADERS. 33260000 332700 WRITE PRINT-RECORD-2 FROM REPORT-TITLE-LINE-7 33270000 332800 AFTER ADVANCING 2 LINES. 33280000 332900 MOVE SPACES TO PRINT-RECORD-2. 33290000 333000 WRITE PRINT-RECORD-2 AFTER ADVANCING 1 LINES. 33300000 333100* 33310000 333200* 33320000 333300 4600-WRITE-INTEGRITY-COUNTS. 33330000 333400 MOVE REPORT-SUM2 TO TOTALS-ID2. 33340000 333500 MOVE DISTRICT-INT-CNT (1) 33350000 333600 TO INT-CNT-OUT-1, INTEGRITY-ERROR-COUNT. 33360000 333700 MOVE '01' TO INTEGRITY-ERROR-CODE. 33370000 333800 WRITE REPORT-TOTALS-RECORD2. 33380000 333900 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-1 33390000 334000 AFTER ADVANCING 2 LINES. 33400000 334100 MOVE REPORT-SUM2 TO TOTALS-ID2. 33410000 334200 MOVE DISTRICT-INT-CNT (2) 33420000 334300 TO INT-CNT-OUT-2, INTEGRITY-ERROR-COUNT. 33430000 334400 MOVE '02' TO INTEGRITY-ERROR-CODE. 33440000 334500 WRITE REPORT-TOTALS-RECORD2. 33450000 334600 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-2 33460000 334700 AFTER ADVANCING 2 LINES. 33470000 334800 MOVE REPORT-SUM2 TO TOTALS-ID2. 33480000 334900 MOVE DISTRICT-INT-CNT (3) 33490000 335000 TO INT-CNT-OUT-3, INTEGRITY-ERROR-COUNT. 33500000 335100 MOVE '03' TO INTEGRITY-ERROR-CODE. 33510000 335200 WRITE REPORT-TOTALS-RECORD2. 33520000 335300 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-3 33530000 335400 AFTER ADVANCING 2 LINES. 33540000 335500 MOVE REPORT-SUM2 TO TOTALS-ID2. 33550000 335600 MOVE DISTRICT-INT-CNT (4) 33560000 335700 TO INT-CNT-OUT-4, INTEGRITY-ERROR-COUNT. 33570000 335800 MOVE '04' TO INTEGRITY-ERROR-CODE. 33580000 335900 WRITE REPORT-TOTALS-RECORD2. 33590000 336000 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-4 33600000 336100 AFTER ADVANCING 2 LINES. 33610000 336200 MOVE REPORT-SUM2 TO TOTALS-ID2. 33620000 336300 MOVE DISTRICT-INT-CNT (5) 33630000 336400 TO INT-CNT-OUT-5, INTEGRITY-ERROR-COUNT. 33640000 336500 MOVE '05' TO INTEGRITY-ERROR-CODE. 33650000 336600 WRITE REPORT-TOTALS-RECORD2. 33660000 336700 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-5 33670000 336800 AFTER ADVANCING 2 LINES. 33680000 336900 MOVE REPORT-SUM2 TO TOTALS-ID2. 33690000 337000 MOVE DISTRICT-INT-CNT (6) 33700000 337100 TO INT-CNT-OUT-6, INTEGRITY-ERROR-COUNT. 33710000 337200 MOVE '06' TO INTEGRITY-ERROR-CODE. 33720000 337300 WRITE REPORT-TOTALS-RECORD2. 33730000 337400 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-6 33740000 337500 AFTER ADVANCING 2 LINES. 33750000 337600 MOVE REPORT-SUM2 TO TOTALS-ID2. 33760000 337700 MOVE DISTRICT-INT-CNT (7) 33770000 337800 TO INT-CNT-OUT-7, INTEGRITY-ERROR-COUNT. 33780000 337900 MOVE '07' TO INTEGRITY-ERROR-CODE. 33790000 338000 WRITE REPORT-TOTALS-RECORD2. 33800000 338100 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-7 33810000 338200 AFTER ADVANCING 2 LINES. 33820000 338300 MOVE REPORT-SUM2 TO TOTALS-ID2. 33830000 338400 MOVE DISTRICT-INT-CNT (8) 33840000 338500 TO INT-CNT-OUT-8, INTEGRITY-ERROR-COUNT. 33850000 338600 MOVE '08' TO INTEGRITY-ERROR-CODE. 33860000 338700 WRITE REPORT-TOTALS-RECORD2. 33870000 338800 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-8 33880000 338900 AFTER ADVANCING 2 LINES. 33890000 339000 MOVE REPORT-SUM2 TO TOTALS-ID2. 33900000 339100 MOVE DISTRICT-INT-CNT (9) 33910000 339200 TO INT-CNT-OUT-9, INTEGRITY-ERROR-COUNT. 33920000 339300 MOVE '09' TO INTEGRITY-ERROR-CODE. 33930000 339400 WRITE REPORT-TOTALS-RECORD2. 33940000 339500 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-9 33950000 339600 AFTER ADVANCING 2 LINES. 33960000 339700 MOVE REPORT-SUM2 TO TOTALS-ID2. 33970000 339800 MOVE DISTRICT-INT-CNT (10) 33980000 339900 TO INT-CNT-OUT-A, INTEGRITY-ERROR-COUNT. 33990000 340000 MOVE '10' TO INTEGRITY-ERROR-CODE. 34000000 340100 WRITE REPORT-TOTALS-RECORD2. 34010000 340200 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-A 34020000 340300 AFTER ADVANCING 2 LINES. 34030000 340400 MOVE REPORT-SUM2 TO TOTALS-ID2. 34040000 340500 MOVE DISTRICT-INT-CNT (11) 34050000 340600 TO INT-CNT-OUT-B, INTEGRITY-ERROR-COUNT. 34060000 340700 MOVE '11' TO INTEGRITY-ERROR-CODE. 34070000 340800 WRITE REPORT-TOTALS-RECORD2. 34080000 340900 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-B 34090000 341000 AFTER ADVANCING 2 LINES. 34100000 341100 MOVE REPORT-SUM2 TO TOTALS-ID2. 34110000 341200 MOVE DISTRICT-INT-CNT (12) 34120000 341300 TO INT-CNT-OUT-C, INTEGRITY-ERROR-COUNT. 34130000 341400 MOVE '12' TO INTEGRITY-ERROR-CODE. 34140000 341500 WRITE REPORT-TOTALS-RECORD2. 34150000 341600 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-C 34160000 341700 AFTER ADVANCING 2 LINES. 34170000 341800* 34180000 341900* 34190000 342000 4700-ADD-TO-DIST-INTEGRITY. 34200000 342100 ADD DISTRICT-INT-CNT (1) 34210000 342200 TO DISTRICT-INT-CNT (1). 34220000 342300 ADD DISTRICT-INT-CNT (2) 34230000 342400 TO DISTRICT-INT-CNT (2). 34240000 342500 ADD DISTRICT-INT-CNT (3) 34250000 342600 TO DISTRICT-INT-CNT (3). 34260000 342700 ADD DISTRICT-INT-CNT (4) 34270000 342800 TO DISTRICT-INT-CNT (4). 34280000 342900 ADD DISTRICT-INT-CNT (5) 34290000 343000 TO DISTRICT-INT-CNT (5). 34300000 343100 ADD DISTRICT-INT-CNT (6) 34310000 343200 TO DISTRICT-INT-CNT (6). 34320000 343300 ADD DISTRICT-INT-CNT (7) 34330000 343400 TO DISTRICT-INT-CNT (7). 34340000 343500 ADD DISTRICT-INT-CNT (8) 34350000 343600 TO DISTRICT-INT-CNT (8). 34360000 343700 ADD DISTRICT-INT-CNT (9) 34370000 343800 TO DISTRICT-INT-CNT (9). 34380000 343900 ADD DISTRICT-INT-CNT (10) 34390000 344000 TO DISTRICT-INT-CNT (10). 34400000 344100 ADD DISTRICT-INT-CNT (11) 34410000 344200 TO DISTRICT-INT-CNT (11). 34420000 344300 ADD DISTRICT-INT-CNT (12) 34430000 344400 TO DISTRICT-INT-CNT (12). 34440000 344500* 34450000 344600* 34460000 344700 5000-PRINT-ERROR-REPORT. 34470000 344800 IF PRINT-ALL OR PRINT-LINE-COUNT < PRINT-LIMIT 34480000 344900 MOVE ZERO TO TABLE-SEARCH-FLAG 34490000 345000 SET EDIT-ROW-INDEX TO 1 34500000 345100 SET EDIT-ERROR-LITERAL-INDEX TO 1 34510000 345200 PERFORM 5000A-CHECK-FOR-HEADERS 34520000 345300 PERFORM 5100-PRINT-DETAIL-LINES 34530000 345400 UNTIL TABLE-SEARCH-COMPLETE 34540000 345500 MOVE SPACES TO PRINT-RECORD 34550000 345600 WRITE PRINT-RECORD AFTER ADVANCING 1 LINE. 34560000 345700 MOVE SPACES TO EDIT-ERROR-TABLE. 34570000 345800 SET EDIT-COLUMN-INDEX TO 1. 34580000 345900 IF PRINT-LINE-COUNT < PRINT-LIMIT 34590000 346000 ADD 1 TO PRINT-LINE-COUNT. 34600000 346100* 34610000 346200* 34620000 346300 5000A-CHECK-FOR-HEADERS. 34630000 346400 IF PAGE-FULL 34640000 346500 MOVE REPORT-ID TO PROGRAM-NAME 34650000 346600 MOVE HOLD-DISTRICT-NAME 34660000 346700 TO DISTRICT-NAME 34670000 346800 IN REPORT-TITLE-LINE-3 34680000 346900 PERFORM 8500-REPORT-HEADINGS 34690000 347000 WRITE PRINT-RECORD 34700000 347100 FROM REPORT-TITLE-LINE-3A 34710000 347200 AFTER ADVANCING 2 LINES 34720000 347300 WRITE PRINT-RECORD 34730000 347400 FROM REPORT-COLUMN-TITLES 34740000 347500 AFTER ADVANCING 2 LINES 34750000 347600 MOVE ZERO TO PAGE-FULL-FLAG. 34760000 347700 ADD 1 TO PAGE-FULL-FLAG. 34770000 347800* 34780000 347900* 34790000 348000 5100-PRINT-DETAIL-LINES. 34800000 348100 MOVE DATA-ELEMENT-LITERAL 34810000 348200 IN EDIT-ERROR-LITERAL-ENTRY 34820000 348300 (EDIT-ERROR-LITERAL-INDEX) 34830000 348400 TO DETAIL-LITERAL-AREA 34840000 348500 IN EDIT-ERROR-PRINT-LINE. 34850000 348600 SET EDIT-COLUMN-INDEX TO 1. 34860000 348700 SET EDIT-ERROR-DATA-INDEX TO 1. 34870000 348800 MOVE ZERO TO PRINT-LINE-FLAG. 34880000 348900 PERFORM 5200-FILL-PRINT-LINE 34890000 349000 UNTIL PRINT-LINE-FILLED. 34900000 349100 WRITE PRINT-RECORD 34910000 349200 FROM EDIT-ERROR-PRINT-LINE 34920000 349300 AFTER ADVANCING 1 LINE. 34930000 349400 MOVE SPACES TO EDIT-ERROR-PRINT-LINE. 34940000 349500 SET ORIGINAL-INDEX-VALUE 34950000 349600 TO EDIT-ROW-INDEX. 34960000 349700 SEARCH EDIT-ERROR-ROWS 34970000 349800 AT END 34980000 349900 MOVE 1 TO TABLE-SEARCH-FLAG 34990000 350000 WHEN ORIGINAL-INDEX-VALUE 35000000 350100 IS NOT EQUAL TO EDIT-ROW-INDEX 35010000 350200 PERFORM 5150-BUMP-LITERAL-INDEX. 35020000 350300* 35030000 350400* 35040000 350500 5150-BUMP-LITERAL-INDEX. 35050000 350600 SEARCH EDIT-ERROR-LITERAL-ENTRY 35060000 350700 AT END 35070000 350800 MOVE 1 TO TABLE-SEARCH-FLAG 35080000 350900 WHEN EDIT-ERROR-LITERAL-INDEX 35090000 351000 IS EQUAL TO EDIT-ROW-INDEX 35100000 351100 NEXT SENTENCE. 35110000 351200* 35120000 351300* 35130000 351400 5200-FILL-PRINT-LINE. 35140000 351500 MOVE DATA-ELEMENT 35150000 351600 IN EDIT-ERROR-COLUMNS 35160000 351700 (EDIT-ROW-INDEX 35170000 351800 EDIT-COLUMN-INDEX) 35180000 351900 TO DATA-ELEMENT-OUT 35190000 352000 IN EDIT-ERROR-PRINT-LINE 35200000 352100 (EDIT-ERROR-DATA-INDEX). 35210000 352200 MOVE DATA-ELEMENT-FLAG 35220000 352300 IN EDIT-ERROR-COLUMNS 35230000 352400 (EDIT-ROW-INDEX 35240000 352500 EDIT-COLUMN-INDEX) 35250000 352600 TO VALIDATION-FLAG 35260000 352700 IN EDIT-ERROR-PRINT-LINE 35270000 352800 (EDIT-ERROR-DATA-INDEX). 35280000 352900 SET ORIGINAL-INDEX-VALUE 35290000 353000 TO EDIT-COLUMN-INDEX. 35300000 353100 SEARCH EDIT-ERROR-COLUMNS 35310000 353200 AT END 35320000 353300 MOVE 1 TO PRINT-LINE-FLAG 35330000 353400 WHEN ORIGINAL-INDEX-VALUE 35340000 353500 IS NOT EQUAL EDIT-COLUMN-INDEX 35350000 353600 PERFORM 5250-BUMP-DETAIL-LINE-INDEX. 35360000 353700* 35370000 353800* 35380000 353900 5250-BUMP-DETAIL-LINE-INDEX. 35390000 354000 SEARCH EDIT-ERROR-DATA-ENTRY 35400000 354100 AT END 35410000 354200 MOVE 1 TO PRINT-LINE-FLAG 35420000 354300 WHEN EDIT-ERROR-DATA-INDEX 35430000 354400 IS EQUAL TO EDIT-COLUMN-INDEX 35440000 354500 NEXT SENTENCE. 35450000 354600 35460000 354700 35470000 354800 8500-REPORT-HEADINGS. 35480000 354900 MOVE SPACES TO PRINT-RECORD. 35490000 355000 MOVE ZEROS TO REPORT-LINE-COUNTER. 35500000 355100 ADD 1 TO REPORT-PAGE-COUNTER. 35510000 355200 MOVE REPORT-PAGE-COUNTER 35520000 355300 TO HEADER-PAGE-NUMBER. 35530000 355400 IF FIRST-PAGE 35540000 355500 PERFORM 1HDR-FIRST-PAGE-ROUTINE. 35550000 355600 IF NARROW-PAPER-REQUIRED 35560000 355700 PERFORM 2HDR-NARROW-PAPER-ROUTINE 35570000 355800 ELSE 35580000 355900 PERFORM 3HDR-WIDE-PAPER-ROUTINE. 35590000 356000 PERFORM 7HDR-USER-SUPPLIED-HEADINGS. 35600000 356100* 35610000 356200* 35620000 356300 1HDR-FIRST-PAGE-ROUTINE. 35630000 356400 ACCEPT REPORT-DATE 35640000 356500 IN HEADER-HOLDING-AREA 35650000 356600 FROM DATE. 35660000 356700 ACCEPT REPORT-TIME 35670000 356800 IN HEADER-HOLDING-AREA 35680000 356900 FROM TIME. 35690000 357000 MOVE FULL-MONTH-NAME 35700000 357100 IN HEADER-MONTH-TABLE 35710000 357200 (REPORT-MONTH) 35720000 357300 TO HEADER-MONTH. 35730000 357400 MOVE REPORT-DAY 35740000 357500 IN HEADER-HOLDING-AREA 35750000 357600 TO HEADER-DAY 35760000 357700 IN HEADER-STATISTICS. 35770000 357800 MOVE REPORT-YEAR 35780000 357900 IN HEADER-HOLDING-AREA 35790000 358000 TO HEADER-YEAR 35800000 358100 IN HEADER-STATISTICS. 35810000 358200 MOVE ACTUAL-CLOCK-TIME 35820000 358300 IN HEADER-HOLDING-AREA 35830000 358400 TO HEADER-TIME 35840000 358500 IN HEADER-STATISTICS. 35850000 358600 MOVE ZERO TO FIRST-PAGE-SWITCH. 35860000 358700 INSPECT HEADER-TIME-AREA 35870000 358800 REPLACING ALL '/' 35880000 358900 BY ':'. 35890000 359000* 35900000 359100* 35910000 359200 2HDR-NARROW-PAPER-ROUTINE. 35920000 359300 MOVE COMMUNITY-COLLEGE-TITLE 35930000 359400 IN HEADER-HOLDING-AREA 35940000 359500 TO HEADING-TITLE-LINE. 35950000 359600 WRITE PRINT-RECORD 35960000 359700 FROM HEADING-LINE 35970000 359800 AFTER ADVANCING PAGE. 35980000 359900 MOVE SPACES TO HEADING-LINE. 35990000 360000 MOVE MIS-PILOT-TITLE 36000000 360100 IN HEADER-HOLDING-AREA 36010000 360200 TO HEADING-TITLE-LINE. 36020000 360300 WRITE PRINT-RECORD 36030000 360400 FROM HEADING-LINE 36040000 360500 AFTER ADVANCING 1 LINE. 36050000 360600 MOVE SPACES TO HEADING-LINE. 36060000 360700 MOVE HEADER-REPORT-TIME 36070000 360800 TO LEFT-STATISTIC. 36080000 360900 MOVE HEADER-REPORT-PAGE 36090000 361000 TO NARROW-RIGHT-STATISTIC. 36100000 361100 WRITE PRINT-RECORD 36110000 361200 FROM HEADING-LINE 36120000 361300 AFTER ADVANCING 1 LINE. 36130000 361400 MOVE SPACES TO HEADING-LINE. 36140000 361500 MOVE HEADER-REPORT-ID 36150000 361600 TO LEFT-STATISTIC. 36160000 361700 MOVE HEADER-REPORT-DATE 36170000 361800 TO NARROW-RIGHT-STATISTIC. 36180000 361900 WRITE PRINT-RECORD 36190000 362000 FROM HEADING-LINE 36200000 362100 AFTER ADVANCING 1 LINE. 36210000 362200 MOVE SPACES TO HEADING-LINE. 36220000 362300* 36230000 362400* 36240000 362500 3HDR-WIDE-PAPER-ROUTINE. 36250000 362600 MOVE COMMUNITY-COLLEGE-TITLE 36260000 362700 IN HEADER-HOLDING-AREA 36270000 362800 TO WIDE-HEADING-LOCATION 36280000 362900 IN HEADING-TITLE-LINE. 36290000 363000 WRITE PRINT-RECORD 36300000 363100 FROM HEADING-LINE 36310000 363200 AFTER ADVANCING PAGE. 36320000 363300 MOVE SPACES TO HEADING-LINE. 36330000 363400 MOVE MIS-PILOT-TITLE 36340000 363500 IN HEADER-HOLDING-AREA 36350000 363600 TO WIDE-HEADING-LOCATION 36360000 363700 IN HEADING-TITLE-LINE. 36370000 363800 WRITE PRINT-RECORD 36380000 363900 FROM HEADING-LINE 36390000 364000 AFTER ADVANCING 1 LINE. 36400000 364100 MOVE SPACES TO HEADING-LINE. 36410000 364200 MOVE HEADER-REPORT-TIME 36420000 364300 TO LEFT-STATISTIC. 36430000 364400 MOVE HEADER-REPORT-PAGE 36440000 364500 TO WIDE-RIGHT-STATISTIC. 36450000 364600 WRITE PRINT-RECORD 36460000 364700 FROM HEADING-LINE 36470000 364800 AFTER ADVANCING 1 LINE. 36480000 364900 MOVE SPACES TO HEADING-LINE. 36490000 365000 MOVE HEADER-REPORT-ID 36500000 365100 TO LEFT-STATISTIC. 36510000 365200 MOVE HEADER-REPORT-DATE 36520000 365300 TO WIDE-RIGHT-STATISTIC. 36530000 365400 WRITE PRINT-RECORD 36540000 365500 FROM HEADING-LINE 36550000 365600 AFTER ADVANCING 1 LINE. 36560000 365700 MOVE SPACES TO HEADING-LINE. 36570000 365800* 36580000 365900* 36590000 366000 7HDR-USER-SUPPLIED-HEADINGS. 36600000 366100 WRITE PRINT-RECORD 36610000 366200 FROM REPORT-TITLE-LINE-1 36620000 366300 AFTER ADVANCING 1 LINE. 36630000 366400 WRITE PRINT-RECORD 36640000 366500 FROM REPORT-TITLE-LINE-2 36650000 366600 AFTER ADVANCING 1 LINES. 36660000 366700 WRITE PRINT-RECORD 36670000 366800 FROM REPORT-TITLE-LINE-3 36680000 366900 AFTER ADVANCING 1 LINES. 36690000 367000* 36700000 367100* 36710000 367200 8600-REPORT-HEADINGS. 36720000 367300 MOVE SPACES TO PRINT-RECORD-2. 36730000 367400 MOVE ZEROS TO REPORT-LINE-COUNTER. 36740000 367500 ADD 1 TO REPORT-PAGE-COUNTER. 36750000 367600 MOVE REPORT-PAGE-COUNTER 36760000 367700 TO HEADER-PAGE-NUMBER. 36770000 367800 IF FIRST-PAGE 36780000 367900 PERFORM 1HDR-FIRST-PAGE-ROUTINE-2. 36790000 368000 IF NARROW-PAPER-REQUIRED 36800000 368100 PERFORM 2HDR-NARROW-PAPER-ROUTINE-2 36810000 368200 ELSE 36820000 368300 PERFORM 3HDR-WIDE-PAPER-ROUTINE-2. 36830000 368400 PERFORM 7HDR-USER-SUPPLIED-HEADINGS-2. 36840000 368500* 36850000 368600* 36860000 368700 1HDR-FIRST-PAGE-ROUTINE-2. 36870000 368800 ACCEPT REPORT-DATE 36880000 368900 IN HEADER-HOLDING-AREA 36890000 369000 FROM DATE. 36900000 369100 ACCEPT REPORT-TIME 36910000 369200 IN HEADER-HOLDING-AREA 36920000 369300 FROM TIME. 36930000 369400 MOVE FULL-MONTH-NAME 36940000 369500 IN HEADER-MONTH-TABLE 36950000 369600 (REPORT-MONTH) 36960000 369700 TO HEADER-MONTH. 36970000 369800 MOVE REPORT-DAY 36980000 369900 IN HEADER-HOLDING-AREA 36990000 370000 TO HEADER-DAY 37000000 370100 IN HEADER-STATISTICS. 37010000 370200 MOVE REPORT-YEAR 37020000 370300 IN HEADER-HOLDING-AREA 37030000 370400 TO HEADER-YEAR 37040000 370500 IN HEADER-STATISTICS. 37050000 370600 MOVE ACTUAL-CLOCK-TIME 37060000 370700 IN HEADER-HOLDING-AREA 37070000 370800 TO HEADER-TIME 37080000 370900 IN HEADER-STATISTICS. 37090000 371000 MOVE ZERO TO FIRST-PAGE-SWITCH. 37100000 371100 INSPECT HEADER-TIME-AREA 37110000 371200 REPLACING ALL '/' 37120000 371300 BY ':'. 37130000 371400* 37140000 371500* 37150000 371600 2HDR-NARROW-PAPER-ROUTINE-2. 37160000 371700 MOVE COMMUNITY-COLLEGE-TITLE 37170000 371800 IN HEADER-HOLDING-AREA 37180000 371900 TO HEADING-TITLE-LINE. 37190000 372000 WRITE PRINT-RECORD-2 37200000 372100 FROM HEADING-LINE 37210000 372200 AFTER ADVANCING PAGE. 37220000 372300 MOVE SPACES TO HEADING-LINE. 37230000 372400 MOVE MIS-PILOT-TITLE 37240000 372500 IN HEADER-HOLDING-AREA 37250000 372600 TO HEADING-TITLE-LINE. 37260000 372700 WRITE PRINT-RECORD-2 37270000 372800 FROM HEADING-LINE 37280000 372900 AFTER ADVANCING 1 LINE. 37290000 373000 MOVE SPACES TO HEADING-LINE. 37300000 373100 MOVE HEADER-REPORT-TIME 37310000 373200 TO LEFT-STATISTIC. 37320000 373300 MOVE HEADER-REPORT-PAGE 37330000 373400 TO NARROW-RIGHT-STATISTIC. 37340000 373500 WRITE PRINT-RECORD-2 37350000 373600 FROM HEADING-LINE 37360000 373700 AFTER ADVANCING 1 LINE. 37370000 373800 MOVE SPACES TO HEADING-LINE. 37380000 373900 MOVE HEADER-REPORT-ID 37390000 374000 TO LEFT-STATISTIC. 37400000 374100 MOVE HEADER-REPORT-DATE 37410000 374200 TO NARROW-RIGHT-STATISTIC. 37420000 374300 WRITE PRINT-RECORD-2 37430000 374400 FROM HEADING-LINE 37440000 374500 AFTER ADVANCING 1 LINE. 37450000 374600 MOVE SPACES TO HEADING-LINE. 37460000 374700* 37470000 374800* 37480000 374900 3HDR-WIDE-PAPER-ROUTINE-2. 37490000 375000 MOVE COMMUNITY-COLLEGE-TITLE 37500000 375100 IN HEADER-HOLDING-AREA 37510000 375200 TO WIDE-HEADING-LOCATION 37520000 375300 IN HEADING-TITLE-LINE. 37530000 375400 WRITE PRINT-RECORD-2 37540000 375500 FROM HEADING-LINE 37550000 375600 AFTER ADVANCING PAGE. 37560000 375700 MOVE SPACES TO HEADING-LINE. 37570000 375800 MOVE MIS-PILOT-TITLE 37580000 375900 IN HEADER-HOLDING-AREA 37590000 376000 TO WIDE-HEADING-LOCATION 37600000 376100 IN HEADING-TITLE-LINE. 37610000 376200 WRITE PRINT-RECORD-2 37620000 376300 FROM HEADING-LINE 37630000 376400 AFTER ADVANCING 1 LINE. 37640000 376500 MOVE SPACES TO HEADING-LINE. 37650000 376600 MOVE HEADER-REPORT-TIME 37660000 376700 TO LEFT-STATISTIC. 37670000 376800 MOVE HEADER-REPORT-PAGE 37680000 376900 TO WIDE-RIGHT-STATISTIC. 37690000 377000 WRITE PRINT-RECORD-2 37700000 377100 FROM HEADING-LINE 37710000 377200 AFTER ADVANCING 1 LINE. 37720000 377300 MOVE SPACES TO HEADING-LINE. 37730000 377400 MOVE HEADER-REPORT-ID 37740000 377500 TO LEFT-STATISTIC. 37750000 377600 MOVE HEADER-REPORT-DATE 37760000 377700 TO WIDE-RIGHT-STATISTIC. 37770000 377800 WRITE PRINT-RECORD-2 37780000 377900 FROM HEADING-LINE 37790000 378000 AFTER ADVANCING 1 LINE. 37800000 378100 MOVE SPACES TO HEADING-LINE. 37810000 378200* 37820000 378300* 37830000 378400 7HDR-USER-SUPPLIED-HEADINGS-2. 37840000 378500 WRITE PRINT-RECORD-2 37850000 378600 FROM REPORT-TITLE-LINE-1 37860000 378700 AFTER ADVANCING 1 LINE. 37870000 378800 WRITE PRINT-RECORD-2 37880000 378900 FROM REPORT-TITLE-LINE-2 37890000 379000 AFTER ADVANCING 1 LINES. 37900000 379100 WRITE PRINT-RECORD-2 37910000 379200 FROM REPORT-TITLE-LINE-3 37920000 379300 AFTER ADVANCING 1 LINES. 37930000 379400* 37940000 379500* 37950000 379600 9000-PROGRAM-FINALIZATION. 37960000 379700 IF EDIT-ERROR-TABLE 37970000 379800 IS NOT EQUAL TO SPACES 37980000 379900 PERFORM 5000-PRINT-ERROR-REPORT. 37990000 380000 PERFORM 9700-OUTPUT-REPORT-TOTALS. 38000000 380100 PERFORM 9100-PRINT-DISTRICT-TOTAL-PAGE. 38010000 380200 MOVE REPORT-SUM2 TO PROGRAM-NAME. 38020000 380300 PERFORM 8600-REPORT-HEADINGS. 38030000 380400 PERFORM 9500-WRITE-INTEGRITY-HEADERS. 38040000 380500 PERFORM 9600-WRITE-INTEGRITY-COUNTS. 38050000 380600 MOVE REPORT-SUM3 TO PROGRAM-NAME. 38060000 380700 PERFORM 8600-REPORT-HEADINGS. 38070000 380800 WRITE PRINT-RECORD-2 38080000 380900 FROM DISTRICT-TOTAL-HEADING 38090000 381000 AFTER ADVANCING 2 LINES. 38100000 381100 MOVE SPACES TO PRINT-RECORD-2. 38110000 381200 WRITE PRINT-RECORD-2 38120000 381300 AFTER ADVANCING 1 LINES. 38130000 381400 MOVE ZERO TO TABLE-SEARCH-FLAG. 38140000 381500 SET DISTRICT-TOTAL-INDEX TO 1. 38150000 381600 SET TOTAL-DESCRIPTIONS-INDEX TO 1. 38160000 381700 PERFORM 9200-PRINT-TOTAL-LINES 38170000 381800 UNTIL TABLE-SEARCH-COMPLETE. 38180000 381900 CLOSE EMPLOYEE-DATA-FILE. 38190000 382000 CLOSE EDITED-EMPLOYEE-DATA-FILE. 38200000 382100 CLOSE EDIT-ERROR-REPORT. 38210000 382200 CLOSE INTEGRITY-ERROR-SUMMARY. 38220000 382300 CLOSE REPORT-TOTALS-FILE. 38230000 382400* 38240000 382500* 38250000 382600 9100-PRINT-DISTRICT-TOTAL-PAGE. 38260000 382700 MOVE HOLD-DISTRICT-NAME 38270000 382800 TO DISTRICT-NAME 38280000 382900 IN REPORT-TITLE-LINE-3. 38290000 383000 MOVE DISTRICT-ID 38300000 383100 IN RUNTIME-PARAMETER-AREA 38310000 383200 TO REPORT-CODE1, REPORT-CODE2, REPORT-CODE3. 38320000 383300 MOVE REPORT-SUM1 TO PROGRAM-NAME. 38330000 383400 PERFORM 8600-REPORT-HEADINGS. 38340000 383500 MOVE ZERO TO TABLE-SEARCH-FLAG. 38350000 383600 SET EDIT-ERROR-LITERAL-INDEX TO 1. 38360000 383700 SET DISTRICT-COUNT-ROW-INDEX TO 1. 38370000 383800 PERFORM 9390-WRITE-ERROR-HEADERS. 38380000 383900 PERFORM 9300-PRINT-ERROR-TOTALS 38390000 384000 UNTIL TABLE-SEARCH-COMPLETE. 38400000 384100* 38410000 384200* 38420000 384300 9200-PRINT-TOTAL-LINES. 38430000 384400 MOVE TOTAL-DESCRIPTION 38440000 384500 IN TOTAL-DESCRIPTIONS-ENTRY 38450000 384600 (TOTAL-DESCRIPTIONS-INDEX) 38460000 384700 TO TOTAL-DESCRIPTION 38470000 384800 IN TOTAL-DETAIL-LINE. 38480000 384900 MOVE DISTRICT-TOTAL 38490000 385000 IN DISTRICT-TOTAL-ENTRY 38500000 385100 (DISTRICT-TOTAL-INDEX) 38510000 385200 TO TOTAL-FIELD 38520000 385300 IN TOTAL-DETAIL-LINE. 38530000 385400 WRITE PRINT-RECORD-2 38540000 385500 FROM TOTAL-DETAIL-LINE 38550000 385600 AFTER ADVANCING 1 LINE. 38560000 385700 MOVE SPACES TO TOTAL-DETAIL-LINE. 38570000 385800 SET ORIGINAL-INDEX-VALUE 38580000 385900 TO DISTRICT-TOTAL-INDEX. 38590000 386000 SEARCH DISTRICT-TOTAL-ENTRY 38600000 386100 AT END 38610000 386200 MOVE 1 TO TABLE-SEARCH-FLAG 38620000 386300 WHEN ORIGINAL-INDEX-VALUE 38630000 386400 IS NOT EQUAL TO DISTRICT-TOTAL-INDEX 38640000 386500 PERFORM 9250-BUMP-DESCRIPTOR-INDEX. 38650000 386600* 38660000 386700* 38670000 386800 9250-BUMP-DESCRIPTOR-INDEX. 38680000 386900 SEARCH TOTAL-DESCRIPTIONS-ENTRY 38690000 387000 AT END 38700000 387100 MOVE 1 TO TABLE-SEARCH-FLAG 38710000 387200 WHEN TOTAL-DESCRIPTIONS-INDEX 38720000 387300 IS EQUAL TO DISTRICT-TOTAL-INDEX 38730000 387400 NEXT SENTENCE. 38740000 387500* 38750000 387600* 38760000 387700 9300-PRINT-ERROR-TOTALS. 38770000 387800 MOVE DATA-ELEMENT-LITERAL 38780000 387900 (EDIT-ERROR-LITERAL-INDEX) 38790000 388000 TO ELEMENT-LITERAL-AREA. 38800000 388100 SET ELEMENT-COLUMN-INDEX TO 1. 38810000 388200 SET DISTRICT-COUNT-COL-INDEX TO 1. 38820000 388300 PERFORM 9310-FILL-ELEMENT-TOTAL-LINE 38830000 388400 UNTIL ELEMENT-COLUMN-INDEX > 4. 38840000 388500 WRITE PRINT-RECORD-2 38850000 388600 FROM ELEMENT-TOTAL-DETAIL-LINE 38860000 388700 AFTER ADVANCING 1 LINE. 38870000 388800 SET ORIGINAL-INDEX-VALUE 38880000 388900 TO DISTRICT-COUNT-ROW-INDEX. 38890000 389000 SEARCH DISTRICT-ERROR-COUNT-ROWS 38900000 389100 AT END 38910000 389200 MOVE 1 TO TABLE-SEARCH-FLAG 38920000 389300 WHEN ORIGINAL-INDEX-VALUE 38930000 389400 IS NOT EQUAL TO DISTRICT-COUNT-ROW-INDEX 38940000 389500 PERFORM 9350-BUMP-DESCRIPTOR-INDEX. 38950000 389600* 38960000 389700* 38970000 389800 9310-FILL-ELEMENT-TOTAL-LINE. 38980000 389900 IF (DISTRICT-COUNT-ROW-INDEX < 8 AND 38990000 390000 DISTRICT-COUNT-COL-INDEX = 2) OR 39000000 390100 (DISTRICT-COUNT-ROW-INDEX < 14 AND 39010000 390200 DISTRICT-COUNT-ROW-INDEX > 8 AND 39020000 390300 DISTRICT-COUNT-COL-INDEX = 2) OR 39030000 390400 (DISTRICT-COUNT-ROW-INDEX > 14 AND 39040000 390500 DISTRICT-COUNT-COL-INDEX = 2) OR 39050000 390600 (DISTRICT-COUNT-ROW-INDEX < 6 AND 39060000 390700 DISTRICT-COUNT-COL-INDEX = 3) OR 39070000 390800 (DISTRICT-COUNT-ROW-INDEX > 6 AND 39080000 390900 DISTRICT-COUNT-COL-INDEX = 3) OR 39090000 391000 (DISTRICT-COUNT-ROW-INDEX < 18 AND 39100000 391100 DISTRICT-COUNT-COL-INDEX = 4) 39110000 391200 MOVE NOT-APP-LITERAL 39120000 391300 TO ELEMENT-TOTAL-RED 39130000 391400 (ELEMENT-COLUMN-INDEX) 39140000 391500 ELSE 39150000 391600 MOVE DISTRICT-COUNT 39160000 391700 (DISTRICT-COUNT-ROW-INDEX, 39170000 391800 DISTRICT-COUNT-COL-INDEX) 39180000 391900 TO ELEMENT-TOTAL 39190000 392000 (ELEMENT-COLUMN-INDEX). 39200000 392100 SET ELEMENT-COLUMN-INDEX UP BY 1. 39210000 392200 SET DISTRICT-COUNT-COL-INDEX UP BY 1. 39220000 392300* 39230000 392400* 39240000 392500 9350-BUMP-DESCRIPTOR-INDEX. 39250000 392600 SEARCH EDIT-ERROR-LITERAL-ENTRY 39260000 392700 AT END 39270000 392800 MOVE 1 TO TABLE-SEARCH-FLAG 39280000 392900 WHEN EDIT-ERROR-LITERAL-INDEX 39290000 393000 IS EQUAL TO DISTRICT-COUNT-ROW-INDEX 39300000 393100 NEXT SENTENCE. 39310000 393200* 39320000 393300* 39330000 393400 9390-WRITE-ERROR-HEADERS. 39340000 393500 WRITE PRINT-RECORD-2 FROM REPORT-TITLE-LINE-5 39350000 393600 AFTER ADVANCING 2 LINES. 39360000 393700 WRITE PRINT-RECORD-2 FROM ELEMENT-COLUMN-LINE-1 39370000 393800 AFTER ADVANCING 2 LINES. 39380000 393900 WRITE PRINT-RECORD-2 FROM ELEMENT-COLUMN-LINE-2 39390000 394000 AFTER ADVANCING 1 LINES. 39400000 394100 WRITE PRINT-RECORD-2 FROM ELEMENT-COLUMN-LINE-3 39410000 394200 AFTER ADVANCING 1 LINES. 39420000 394300 MOVE SPACES TO PRINT-RECORD-2. 39430000 394400 WRITE PRINT-RECORD-2 AFTER ADVANCING 1 LINES. 39440000 394500* 39450000 394600* 39460000 394700 9500-WRITE-INTEGRITY-HEADERS. 39470000 394800 WRITE PRINT-RECORD-2 FROM REPORT-TITLE-LINE-7 39480000 394900 AFTER ADVANCING 2 LINES. 39490000 395000 MOVE SPACES TO PRINT-RECORD-2. 39500000 395100 WRITE PRINT-RECORD-2 AFTER ADVANCING 1 LINES. 39510000 395200* 39520000 395300* 39530000 395400 9600-WRITE-INTEGRITY-COUNTS. 39540000 395500 MOVE DISTRICT-INT-CNT (1) 39550000 395600 TO INT-CNT-OUT-1. 39560000 395700 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-1 39570000 395800 AFTER ADVANCING 2 LINES. 39580000 395900 MOVE DISTRICT-INT-CNT (2) 39590000 396000 TO INT-CNT-OUT-2. 39600000 396100 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-2 39610000 396200 AFTER ADVANCING 2 LINES. 39620000 396300 MOVE DISTRICT-INT-CNT (3) 39630000 396400 TO INT-CNT-OUT-3. 39640000 396500 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-3 39650000 396600 AFTER ADVANCING 2 LINES. 39660000 396700 MOVE DISTRICT-INT-CNT (4) 39670000 396800 TO INT-CNT-OUT-4. 39680000 396900 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-4 39690000 397000 AFTER ADVANCING 2 LINES. 39700000 397100 MOVE DISTRICT-INT-CNT (5) 39710000 397200 TO INT-CNT-OUT-5. 39720000 397300 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-5 39730000 397400 AFTER ADVANCING 2 LINES. 39740000 397500 MOVE DISTRICT-INT-CNT (6) 39750000 397600 TO INT-CNT-OUT-6. 39760000 397700 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-6 39770000 397800 AFTER ADVANCING 2 LINES. 39780000 397900 MOVE DISTRICT-INT-CNT (7) 39790000 398000 TO INT-CNT-OUT-7. 39800000 398100 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-7 39810000 398200 AFTER ADVANCING 2 LINES. 39820000 398300 MOVE DISTRICT-INT-CNT (8) 39830000 398400 TO INT-CNT-OUT-8. 39840000 398500 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-8 39850000 398600 AFTER ADVANCING 2 LINES. 39860000 398700 MOVE DISTRICT-INT-CNT (9) 39870000 398800 TO INT-CNT-OUT-9. 39880000 398900 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-9 39890000 399000 AFTER ADVANCING 2 LINES. 39900000 399100 MOVE DISTRICT-INT-CNT (10) 39910000 399200 TO INT-CNT-OUT-A. 39920000 399300 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-A 39930000 399400 AFTER ADVANCING 2 LINES. 39940000 399500 MOVE DISTRICT-INT-CNT (11) 39950000 399600 TO INT-CNT-OUT-B. 39960000 399700 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-B 39970000 399800 AFTER ADVANCING 2 LINES. 39980000 399900 MOVE DISTRICT-INT-CNT (12) 39990000 400000 TO INT-CNT-OUT-C. 40000000 400100 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-C 40010000 400200 AFTER ADVANCING 2 LINES. 40020000 400300* 40030000 400400* 40040000 400500 9700-OUTPUT-REPORT-TOTALS. 40050000 400600 MOVE HOLD-DISTRICT-ID 40060000 400700 TO REPORT-CODE1, REPORT-CODE2, REPORT-CODE3. 40070000 400800 SET EDIT-ERROR-LITERAL-INDEX TO 1. 40080000 400900 SET DISTRICT-COUNT-ROW-INDEX TO 1. 40090000 401000 PERFORM 9710-OUTPUT-TOTALS1 40100000 401100 UNTIL EDIT-ERROR-LITERAL-INDEX > 17. 40110000 401200 PERFORM 9720-OUTPUT-TOTALS2. 40120000 401300 PERFORM 9730-OUTPUT-TOTALS3. 40130000 401400* 40140000 401500* 40150000 401600 9710-OUTPUT-TOTALS1. 40160000 401700 MOVE REPORT-SUM1 TO TOTALS-ID1. 40170000 401800 MOVE ELEMENT-NUMBER (EDIT-ERROR-LITERAL-INDEX) 40180000 401900 TO DED-NUMBER. 40190000 402000 MOVE DISTRICT-COUNT (DISTRICT-COUNT-ROW-INDEX, 1) 40200000 402100 TO EXCEPT-COUNT. 40210000 402200 MOVE DISTRICT-COUNT (DISTRICT-COUNT-ROW-INDEX, 2) 40220000 402300 TO UNKNOWN-COUNT. 40230000 402400 MOVE DISTRICT-COUNT (DISTRICT-COUNT-ROW-INDEX, 3) 40240000 402500 TO REASON-COUNT. 40250000 402600 MOVE DISTRICT-COUNT (DISTRICT-COUNT-ROW-INDEX, 4) 40260000 402700 TO GRP3-COUNT. 40270000 402800 WRITE REPORT-TOTALS-RECORD1. 40280000 402900 SET EDIT-ERROR-LITERAL-INDEX UP BY 1. 40290000 403000 SET DISTRICT-COUNT-ROW-INDEX UP BY 1. 40300000 403100* 40310000 403200* 40320000 403300 9720-OUTPUT-TOTALS2. 40330000 403400 MOVE REPORT-SUM2 TO TOTALS-ID2. 40340000 403500 MOVE DISTRICT-INT-CNT (1) 40350000 403600 TO INTEGRITY-ERROR-COUNT. 40360000 403700 MOVE '01' TO INTEGRITY-ERROR-CODE. 40370000 403800 WRITE REPORT-TOTALS-RECORD2. 40380000 403900 MOVE REPORT-SUM2 TO TOTALS-ID2. 40390000 404000 MOVE DISTRICT-INT-CNT (2) 40400000 404100 TO INTEGRITY-ERROR-COUNT. 40410000 404200 MOVE '02' TO INTEGRITY-ERROR-CODE. 40420000 404300 WRITE REPORT-TOTALS-RECORD2. 40430000 404400 MOVE REPORT-SUM2 TO TOTALS-ID2. 40440000 404500 MOVE DISTRICT-INT-CNT (3) 40450000 404600 TO INTEGRITY-ERROR-COUNT. 40460000 404700 MOVE '03' TO INTEGRITY-ERROR-CODE. 40470000 404800 WRITE REPORT-TOTALS-RECORD2. 40480000 404900 MOVE REPORT-SUM2 TO TOTALS-ID2. 40490000 405000 MOVE DISTRICT-INT-CNT (4) 40500000 405100 TO INTEGRITY-ERROR-COUNT. 40510000 405200 MOVE '04' TO INTEGRITY-ERROR-CODE. 40520000 405300 WRITE REPORT-TOTALS-RECORD2. 40530000 405400 MOVE REPORT-SUM2 TO TOTALS-ID2. 40540000 405500 MOVE DISTRICT-INT-CNT (5) 40550000 405600 TO INTEGRITY-ERROR-COUNT. 40560000 405700 MOVE '05' TO INTEGRITY-ERROR-CODE. 40570000 405800 WRITE REPORT-TOTALS-RECORD2. 40580000 405900 MOVE REPORT-SUM2 TO TOTALS-ID2. 40590000 406000 MOVE DISTRICT-INT-CNT (6) 40600000 406100 TO INTEGRITY-ERROR-COUNT. 40610000 406200 MOVE '06' TO INTEGRITY-ERROR-CODE. 40620000 406300 WRITE REPORT-TOTALS-RECORD2. 40630000 406400 MOVE REPORT-SUM2 TO TOTALS-ID2. 40640000 406500 MOVE DISTRICT-INT-CNT (7) 40650000 406600 TO INTEGRITY-ERROR-COUNT. 40660000 406700 MOVE '07' TO INTEGRITY-ERROR-CODE. 40670000 406800 WRITE REPORT-TOTALS-RECORD2. 40680000 406900 MOVE REPORT-SUM2 TO TOTALS-ID2. 40690000 407000 MOVE DISTRICT-INT-CNT (8) 40700000 407100 TO INTEGRITY-ERROR-COUNT. 40710000 407200 MOVE '08' TO INTEGRITY-ERROR-CODE. 40720000 407300 WRITE REPORT-TOTALS-RECORD2. 40730000 407400 MOVE REPORT-SUM2 TO TOTALS-ID2. 40740000 407500 MOVE DISTRICT-INT-CNT (9) 40750000 407600 TO INTEGRITY-ERROR-COUNT. 40760000 407700 MOVE '09' TO INTEGRITY-ERROR-CODE. 40770000 407800 WRITE REPORT-TOTALS-RECORD2. 40780000 407900 MOVE REPORT-SUM2 TO TOTALS-ID2. 40790000 408000 MOVE DISTRICT-INT-CNT (10) 40800000 408100 TO INTEGRITY-ERROR-COUNT. 40810000 408200 MOVE '10' TO INTEGRITY-ERROR-CODE. 40820000 408300 WRITE REPORT-TOTALS-RECORD2. 40830000 408400 MOVE REPORT-SUM2 TO TOTALS-ID2. 40840000 408500 MOVE DISTRICT-INT-CNT (11) 40850000 408600 TO INTEGRITY-ERROR-COUNT. 40860000 408700 MOVE '11' TO INTEGRITY-ERROR-CODE. 40870000 408800 WRITE REPORT-TOTALS-RECORD2. 40880000 408900 MOVE REPORT-SUM2 TO TOTALS-ID2. 40890000 409000 MOVE DISTRICT-INT-CNT (12) 40900000 409100 TO INTEGRITY-ERROR-COUNT. 40910000 409200 MOVE '12' TO INTEGRITY-ERROR-CODE. 40920000 409300 WRITE REPORT-TOTALS-RECORD2. 40930000 409400* 40940000 409500* 40950000 409600 9730-OUTPUT-TOTALS3. 40960000 409700 MOVE REPORT-SUM3 TO TOTALS-ID3. 40970000 409800 MOVE DISTRICT-RECORDS-READ 40980000 409900 TO READ-TOTALS. 40990000 410000 MOVE DISTRICT-RECORDS-REJECTED 41000000 410100 TO REJECTED-TOTALS. 41010000 410200 MOVE DATE-HOLD TO DATE-FLAG. 41020000 410300 MOVE HH-MM TO TIME-FLAG. 41030000 410400 WRITE REPORT-TOTALS-RECORD3. 41040000 410500* 41050000 410600 10000-PRINT-DUMMY. 41060000 410700* MOVE EMPLOY-BEGIN-DATE TO 41070000 410800* S-COMP-BEGIN-YEAR. 41080000 410900* MOVE EMPLOY-BEGIN-END-DATE TO 41090000 411000* S-COMP-END-YEAR. 41100000 411100* MOVE HOLD-HIREDATE TO S-HOLD-HIREDATE. 41110000 411200* MOVE EB09-FLAG TO S-EB09-FLAG. 41120000 411300* MOVE EB10-FLAG TO S-EB10-FLAG. 41130000 411400 MOVE HOLD-DISTRICT-ID TO S-CHECK-DIST-CODE. 41140000 411500 MOVE DUMMY-RECORD TO PRINT-RECORD. 41150000 411600 WRITE PRINT-RECORD AFTER ADVANCING 2 LINES. 41160000 411700 CLOSE EMPLOYEE-DATA-FILE. 41170000 411800 CLOSE EDITED-EMPLOYEE-DATA-FILE. 41180000 411900 CLOSE EDIT-ERROR-REPORT. 41190000 412000 CLOSE INTEGRITY-ERROR-SUMMARY. 41200000 412100 CLOSE REPORT-TOTALS-FILE. 41210000 412200 STOP RUN. 41220000 END PROGRAM EBEDIT.
Source Code after Change
This code is that same file at the next checkin with a number of changes (now 4104 lines).
It is hard to see the differences by simply looking at the text, partly just from the sheer
size of it. This is why you want a diff tool of some kind.
See the actual deltas generated from COBOL Smart Differencer.
For comparison, see deltas generated from a standard diff tool.
000100 IDENTIFICATION DIVISION. 00010000 000200 PROGRAM-ID. EBEDIT. 00020000 000300*AUTHOR. MIS PILOT PROJECT STAFF. 00030000 000400*INSTALLATION. CALIFORNIA COMMUNITY COLLEGES. 00040000 000500*DATE-WRITTEN. MAY 16, 1994. 00050000 000600 DATE-COMPILED. 00060000 000700* 00070000 000800*REMARKS. 00080000 000900* THIS PROGRAM WILL PROCESS THE EMPLOYEE DEMOGRAPHIC DATA FILES00090000 001000* SUBMITTED BY THE DISTRICTS. ALL DATA WILL BE EVALUATED TO 00100000 001100* INSURE THAT IT IS VALID AS DEFINED BY THE DATA ELEMENT 00110000 001200* DICTIONARY. SEVERAL DATA INTEGRITY EDITS WILL ALSO BE DONE. 00120000 001300* ONE OUTPUT FILE WILL BE CREATED. IT WILL BE USED FOR BOTH 00130000 001400* THE REFERENTIAL DATA VALIDATIONS AND FOR UPDATING THE 00140000 001500* TERADATA DATABASE. 00150000 001600* 00160000 001700* MODIFICATIONS 00170000 001800* 00180000 001900* 1. - REMOVED INTEGRITY CHECK ON NEW HIRE DATE RANGE. 00190000 002000* - CHANGED INTEGRITY CHECK AGAINST EB12 AND EB13 00200000 002100* AND EMPLOY CLASSIFICATION TO FIRST CENSUS ONLY. 00210000 002200* - CHANGED STIPEND INTEGRITY: ADDED 'NE 888888' FOR EB13 00220000 002300* AND 'OR 000000' FOR EB12. 00230000 002400* 5/24/95 KEC 00240000 002500* 00250000 002600* 2. - REMOVED "X" (UNKNOWN) AS VALID CODE FOR FOLLOWING 00260000 002700* DATA ELEMENTS: EB03, EB05, EB06 AND EB07. 00270000 002800* 6/2/97 KEC 00280000 002900**************************************************************** 00290000 003000/ 00300000 003100 ENVIRONMENT DIVISION. 00310000 003200 CONFIGURATION SECTION. 00320000 003300 SOURCE-COMPUTER. IBM-370. 00330000 003400 OBJECT-COMPUTER. IBM-370. 00340000 003500* 00350000 003600 INPUT-OUTPUT SECTION. 00360000 003700 FILE-CONTROL. 00370000 003800* 00380000 003900 SELECT EMPLOYEE-DATA-FILE 00390000 004000 ASSIGN TO UT-S-EBRECIN. 00400000 004100* 00410000 004200 SELECT EDITED-EMPLOYEE-DATA-FILE 00420000 004300 ASSIGN TO UT-S-EBRECOUT. 00430000 004400* 00440000 SELECT EDIT-ERROR-REPORT 004600 ASSIGN TO UT-S-PRINTER1 . 00460000 004700* 00470000 004800 SELECT INTEGRITY-ERROR-SUMMARY ASSIGN TO UT-S-PRINTER2. 00490000 005000 00500000 005100 SELECT REPORT-TOTALS-FILE 00510000 005200 ASSIGN TO UT-S-TOTSFILE. 00520000 005300/ 00530000 005400 DATA DIVISION. 00540000 005500 FILE SECTION. 00550000 005600* 00560000 005700 FD EMPLOYEE-DATA-FILE 00570000 005800 LABEL RECORDS ARE STANDARD 00580000 005900 RECORDING MODE IS F 00590000 006000 BLOCK CONTAINS 0 RECORDS 00600000 006100 DATA RECORD IS EMPLOYEE-DATA-RECORD. 00610000 006200* 00620000 006300 01 EMPLOYEE-DATA-RECORD. 00630000 006400* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00640000 006500* * 00650000 006600* EMPLOYEE DEMOGRAPHIC DATA RECORDS * 00660000 006700* * 00670000 006800* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00680000 006900* 00690000 007000 03 RECORD-CODE PIC XX. 00700000 007100 88 EMPLOYEE-DATA VALUE 'EB'. 00710000 007200 03 DISTRICT-ID PIC XXX. 00720000 007300 03 TERM-IDENTIFIER. 00730000 007400 05 CALENDAR-YEAR PIC 99. 00740000 007500 05 TERM-CODE PIC X. 00750000 007600 03 EMPLOYEE-IDENTIFIER PIC X(9). 00760000 007700 03 EMPLOYEE-ID-REDF 00770000 007800 REDEFINES EMPLOYEE-IDENTIFIER. 00780000 007900 05 ID-FIRST PIC X. 00790000 008000 05 ID-LAST8 PIC X(8). 00800000 008100 03 EMPLOYEE-IDENTIFIER-STATUS 00810000 008200 PIC X. 00820000 008300 03 EMPLOYEE-BIRTHDATE. 00830000 008400 05 EMPLOYEE-BIRTH-YR PIC XX. 00840000 008500 05 EMPLOYEE-BIRTH-MON PIC XX. 00850000 008600 05 EMPLOYEE-BIRTH-DAY PIC XX. 00860000 008700 03 EMPLOYEE-GENDER PIC X. 00870000 008800 03 EMPLOYEE-RACIAL-ETHNIC-CODE 00880000 008900 PIC XX. 00890000 009000 03 EMPLOYEE-CITIZENSHIP PIC X. 00900000 009100 03 EMPLOYEE-DISABILITY-STATUS 00910000 009200 PIC X. 00920000 009300 03 EMPLOYEE-EEO6-ACTIVITY PIC X. 00930000 009400 03 EMPLOYEE-CLASSIFICATION PIC X. 00940000 009500 03 EMPLOYEE-STATUS PIC X. 00950000 009600 03 EMPLOYEE-DATE-EMPLOYED. 00960000 * Modified for Y2K 009700 05 EMPLOYEE-HIRE-YRMON PIC X(6). 00970000 009800 05 EMPLOYEE-HIRE-DAY PIC X(2). 00980000 009900 03 EMPLOYEE-CONTRACT PIC X. 00990000 010000 03 EMPLOYEE-SALARY PIC X(6). 01000000 010100 03 EMPLOYEE-STIPEND PIC X(6). 01010000 010200 03 FILLER PIC X(29). 01020000 010300* 01030000 010400* 01040000 010500 FD EDITED-EMPLOYEE-DATA-FILE 01050000 010600 LABEL RECORDS ARE STANDARD 01060000 010700 RECORDING MODE IS F 01070000 010800 BLOCK CONTAINS 0 RECORDS 01080000 010900 DATA RECORD IS EDITED-EMPLOYEE-DATA-RECORD. 01090000 011000* 01100000 011100 01 EDITED-EMPLOYEE-DATA-RECORD. 01110000 011200* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 01120000 011300* * 01130000 011400* EDITED EMPLOYEE TABLE DATA * 01140000 011500* * 01150000 011600* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 01160000 011700* 01170000 011800 03 DISTRICT-ID PIC XXX. 01180000 011900 03 TERM-IDENTIFIER PIC XXX. 01190000 012000 03 EMPLOYEE-IDENTIFIER PIC X(9). 01200000 012100 03 EMPLOYEE-IDENTIFIER-STATUS 01210000 012200 PIC X. 01220000 012300 03 EMPLOYEE-BIRTHDATE PIC X(6). 01230000 012400 03 EMPLOYEE-AGE PIC XX. 01240000 012500 03 EMPLOYEE-GENDER PIC X. 01250000 012600 03 EMPLOYEE-RACIAL-ETHNIC-CODE 01260000 012700 PIC XX. 01270000 012800 03 EMPLOYEE-CITIZENSHIP PIC X. 01280000 012900 03 EMPLOYEE-DISABILITY-STATUS 01290000 013000 PIC X. 01300000 013100 03 EMPLOYEE-EEO6-ACTIVITY PIC X. 01310000 013200 03 EMPLOYEE-CLASSIFICATION PIC X. 01320000 013300 03 EMPLOYEE-STATUS PIC X. 01330000 013400 03 EMPLOYEE-DATE-EMPLOYED PIC X(6). 01340000 013500 03 EMPLOYEE-CONTRACT PIC X. 01350000 013600 03 EMPLOYEE-SALARY PIC X(6). 01360000 013700 03 EMPLOYEE-STIPEND PIC X(6). 01370000 013800* 01380000 013900* 01390000 014000 FD EDIT-ERROR-REPORT 01400000 014100 LABEL RECORDS ARE OMITTED 01410000 014200 RECORDING MODE IS F 01420000 014300 BLOCK CONTAINS 0 RECORDS 01430000 014400 DATA RECORD IS PRINT-RECORD. 01440000 014500* 01450000 014600 01 PRINT-RECORD PIC X(133). 01460000 014700* 01470000 014800* 01480000 014900 FD INTEGRITY-ERROR-SUMMARY 01490000 015000 LABEL RECORDS ARE OMITTED 01500000 015100 RECORDING MODE IS F 01510000 015200 BLOCK CONTAINS 0 RECORDS 01520000 015300 DATA RECORD IS PRINT-RECORD-2. 01530000 015400* 01540000 015500 01 PRINT-RECORD-2 PIC X(133). 01550000 015600 01560000 015700 01570000 015800 FD REPORT-TOTALS-FILE 01580000 015900 LABEL RECORDS ARE STANDARD 01590000 016000 RECORDING MODE IS F 01600000 016100 BLOCK CONTAINS 0 RECORDS 01610000 016200 DATA RECORDS ARE REPORT-TOTALS-RECORD1, 01620000 016300 REPORT-TOTALS-RECORD2, 01630000 016400 REPORT-TOTALS-RECORD3. 01640000 016500 01650000 016600 01 REPORT-TOTALS-RECORD1. 01660000 016700 03 TOTALS-ID1. 01670000 016800 05 TOTALS-DISTRICT1 PIC XXX. 01680000 016900 05 TOTALS-TYPE1 PIC XX. 01690000 017000 05 TOTALS-FLAG1 PIC X(7). 01700000 017100 03 DED-NUMBER PIC X(4). 01710000 017200 03 EXCEPT-COUNT PIC 9(6). 01720000 017300 03 UNKNOWN-COUNT PIC 9(6). 01730000 017400 03 REASON-COUNT PIC 9(6). 01740000 017500 03 GRP3-COUNT PIC 9(6). 01750000 017600 01760000 017700 01 REPORT-TOTALS-RECORD2. 01770000 017800 03 TOTALS-ID2 PIC X(12). 01780000 017900 03 INTEGRITY-ERROR-CODE PIC XX. 01790000 018000 03 INTEGRITY-ERROR-COUNT PIC 9(6). 01800000 018100 03 FILLER PIC X(20). 01810000 018200 01820000 018300 01 REPORT-TOTALS-RECORD3. 01830000 018400 03 TOTALS-ID3. 01840000 018500 05 TOTALS-DISTRICT3 PIC XXX. 01850000 018600 05 TOTALS-TYPE3 PIC XX. 01860000 018700 05 TOTALS-FLAG3 PIC X(7). 01870000 018800 03 READ-TOTALS PIC 9(6). 01880000 018900 03 REJECTED-TOTALS PIC 9(6). 01890000 019000 03 DATE-FLAG PIC 9(6). 01900000 019100 03 TIME-FLAG PIC 9(4). 01910000 019200 03 FILLER PIC X(6). 01920000 019300* 01930000 019400* 01940000 019500 WORKING-STORAGE SECTION. 01950000 019600* 01960000 019700 01 HOLD-FLAGS-AREA. 01970000 019800 03 BLANK-REC-FLAG PIC 9 VALUE 1. 01980000 019900 03 END-OF-DATA-FLAG PIC 9 VALUE ZERO. 01990000 020000 88 END-OF-EMPLOYEE-DATA VALUE 1. 02000000 020100 03 TERM-TYPE-FLAG PIC X VALUE SPACE. 02010000 020200 03 DATE-HOLD PIC 9(6). 02020000 020300 03 TIME-HOLD. 02030000 020400 05 HH-MM PIC 9(4). 02040000 020500 05 MM-HH PIC 9(4). 02050000 020600 03 HOLD-STATUS-YEAR PIC 99. 02060000 020700 03 HOLD-CALENDAR-YEAR PIC 99. 02070000 020800 03 PARAMETER-VALIDATION-FLAG 02080000 020900 PIC 9 VALUE ZERO. 02090000 021000 88 PARAMETER-FIELD-INVALID VALUE 1. 02100000 021100 03 TABLE-SEARCH-FLAG PIC 9 VALUE ZERO. 02110000 021200 88 TABLE-SEARCH-COMPLETE VALUE 1. 02120000 021300 03 PRINT-LINE-FLAG PIC 9 VALUE ZERO. 02130000 021400 88 PRINT-LINE-FILLED VALUE 1. 02140000 021500 03 PRINT-LINE-COUNT PIC 999 VALUE ZERO. 02150000 021600 03 PRINT-LIMIT PIC 999 VALUE ZERO. 02160000 021700 03 PAGE-FULL-FLAG PIC 9. 02170000 021800 88 PAGE-FULL VALUE 2. 02180000 021900 03 REJECT-RECORD-FLAG PIC 9 VALUE ZERO. 02190000 022000 88 RECORD-REJECTED VALUE 1. 02200000 022100 03 REASONABLE-FLAG PIC X VALUE SPACE. 02210000 022200 88 REASONABLE-EXCEPTION VALUE 'R'. 02220000 022300 03 ORIGINAL-INDEX-VALUE USAGE IS INDEX. 02230000 022400 03 HOLD-DISTRICT-ID PIC X(3) VALUE ZEROES. 02240000 022500 03 HOLD-DISTRICT-NAME PIC X(30) VALUE SPACES. 02250000 * Modified for Y2K COPY EMPLOYDT REPLACING ==:CLASS:== BY ==FIRSTCEN== ==:PT:== BY ==BEGIN== ==:MTHVAL:== BY ==07== ==:DAYVAL:== BY ==01==. COPY EMPLOYDT REPLACING ==:CLASS:== BY ==FIRSTCEN== ==:PT:== BY ==END== ==:MTHVAL:== BY ==11== ==:DAYVAL:== BY ==01==. COPY EMPLOYDT REPLACING ==:CLASS:== BY ==ANNUAL== ==:PT:== BY ==BEGIN== ==:MTHVAL:== BY ==07== ==:DAYVAL:== BY ==01==. COPY EMPLOYDT REPLACING ==:CLASS:== BY ==ANNUAL== ==:PT:== BY ==END== ==:MTHVAL:== BY ==06== ==:DAYVAL:== BY ==30==. 025000* 02500000 025100* 02510000 025200 01 CHECK-DATA-AREA. 02520000 025300 03 CHECK-ID-STATUS PIC X. 02530000 025400 88 EMPLOYEE-ID-IS-SSN VALUE 'S'. 02540000 025500 88 EMPLOYEE-ID-IS-LOCAL VALUE 'C'. 02550000 025600 88 ID-STATUS-VALID VALUE 'S' 'C'. 02560000 025700 03 CHECK-BIRTH-DATE. 02570000 025800 88 BIRTH-DATE-UNKNOWN VALUE '999999'. 02580000 025900 88 BIRTH-DATE-NOT-APP VALUE '888888'. 02590000 026000 05 CHECK-YR-MON PIC X(6). 02600000 026100 05 CHECK-BIRTH-DAY PIC XX. 02610000 026200 88 BIRTH-DAY-UNKNOWN VALUE '99'. 02620000 026300 88 BIRTH-DAY-NOT-APP VALUE '88'. 02630000 026400 03 CHECK-GENDER PIC X. 02640000 026500 88 GENDER-VALID VALUE 'F' 'M'. 02650000 026600* 88 GENDER-UNKNOWN VALUE 'X'. 02660000 026700 03 CHECK-RACE-ETHNICITY PIC XX. 02670000 026800 88 RACE-ETHNICITY-VALID 02680000 026900 VALUE 'AC' 'AI' 'AJ' 'AK' 'AL' 'AM' 'AV' 'AX' 02690000 027000 'H.' 'PG' 'PH' 'PS' 'PX' 02700000 027100 'B.' 'F.' 'N.' 'W.' 'X.'. 02710000 027200 88 RACE-ETHNICITY-UNKNOWN VALUE 'X.'. 02720000 027300 03 CHECK-CITIZENSHIP PIC X. 02730000 027400 88 U-S-CITIZEN VALUE 'C'. 02740000 027500 88 NON-CITIZEN VALUE 'F'. 02750000 027600 88 CITIZENSHIP-VALID VALUE 'C' 'N' 02760000 027700 'Y'. 02770000 027800* 88 CITIZENSHIP-UNKNOWN VALUE 'X'. 02780000 027900 88 CITIZENSHIP-NOT-APP VALUE 'Y'. 02790000 028000 03 CHECK-DISABILITY PIC X. 02800000 028100 88 DISABILITY-VALID VALUES '1' '2' 'Y'. 02810000 028200* 88 DISABILITY-UNKNOWN VALUES 'X'. 02820000 028300 88 DISABILITY-NOT-APP VALUES 'Y'. 02830000 028400 03 CHECK-EEO6 PIC X. 02840000 028500 88 EEO6-VALID VALUES '1' THRU '7'. 02850000 028600 88 EEO6-FACULTY VALUE '2'. 02860000 028700* 88 EEO6-UNKNOWN VALUE 'X'. 02870000 028800 03 CHECK-CLASSIFICATION PIC X. 02880000 028900 88 CLASSIFICATION-VALID VALUES 'A' 'C' 'O' 02890000 029000 'P' 'R' 'T'. 02900000 029100 88 OTHER-EMPLOYEE VALUE 'O'. 02910000 029200 88 TEMP-EMPLOYEE VALUE 'T'. 02920000 029300 03 CHECK-STATUS PIC X. 02930000 029400 88 STATUS-VALID VALUES 'C' 'N' 'P' 02940000 029500 'R' 'Y'. 02950000 029600 88 NEW-HIRE VALUE 'N'. 02960000 029700 88 STATUS-NOT-APP VALUE 'Y'. 02970000 029800 03 CHECK-HIRE-DATE. 02980000 029900 88 HIRE-DATE-UNKNOWN VALUE '999999'. 02990000 030000 88 HIRE-DATE-NOT-APP VALUE '888888'. 03000000 * Modified for Y2K 030100 05 CHECK-YR-MON PIC X(6). 03010000 030200 05 CHECK-HIRE-DAY PIC XX. 03020000 030300 88 HIRE-DAY-UNKNOWN VALUE '99'. 03030000 030400 03 CHECK-CONTRACT PIC X. 03040000 030500 88 CONTRACT-VALID VALUE '1' '2' '3' 03050000 030600 'Y'. 03060000 030700 88 KNOWN-CONTRACT-LENGTH VALUE '1' '2' '3'. 03070000 030800 88 CONTRACT-NOT-APP VALUE 'Y'. 03080000 030900 03 CHECK-SALARY PIC 9(6). 03090000 031000 88 UNPAID-LEAVE VALUE 0. 03100000 031100 88 SALARY-UNKNOWN VALUE 999999. 03110000 031200 88 SALARY-NOT-APP VALUE 888888. 03120000 031300 03 CHECK-STIPEND PIC 9(6). 03130000 031400 88 NO-STIPEND VALUE 0. 03140000 031500 88 STIPEND-RECEIVED VALUES 1 THRU 888887. 03150000 031600 88 STIPEND-UNKNOWN VALUE 999999. 03160000 031700 88 STIPEND-NOT-APP VALUE 888888. 03170000 031800* 03180000 031900* 03190000 032000 01 LITERALS-AREA. 03200000 032100 03 VALIDITY-LITERAL PIC X VALUE 'V'. 03210000 032200 03 INTEGRITY-LITERAL PIC X VALUE 'I'. 03220000 032300 03 REASONABLE-LITERAL PIC X VALUE 'R'. 03230000 032400 03 REJECTED-LITERAL PIC X(8) VALUE 'REJECTED'. 03240000 032500 03 NOT-APPL-LITERAL PIC X(6) VALUE 'YYYYYY'. 03250000 032600 03 NOT-APPL-DATE PIC X(6) VALUE '080808'. 03260000 032700 03 NOT-APPL-DAY PIC XX VALUE '08'. 03270000 032800 03 UNKNOWN-DATE PIC X(6) VALUE '090909'. 03280000 032900 03 UNKNOWN-DAY PIC XX VALUE '09'. 03290000 033000 03 NOT-APP-LITERAL PIC X(7) VALUE ' N/A'. 03300000 033100 03 INVALID-DISTRICT-INDEX-VALUE 03310000 033200 PIC 9 VALUE 2. 03320000 033300 03 INVALID-PF-INDEX-VALUE PIC 9 VALUE 3. 03330000 033400 03 INVALID-TERM-INDEX-VALUE 03340000 033500 PIC 9 VALUE 1. 03350000 033600 03 REPORT-ID. 03360000 033700 05 FILLER PIC X(6) VALUE 'EBEDIT'. 03370000 033800 05 FILLER PIC X(6) VALUE SPACES. 03380000 033900 03 REPORT-SUM1. 03390000 034000 05 REPORT-CODE1 PIC XXX. 03400000 034100 05 FILLER PIC X(9) VALUE 'EBSYNSUM1'. 03410000 034200 03 REPORT-SUM2. 03420000 034300 05 REPORT-CODE2 PIC XXX. 03430000 034400 05 FILLER PIC X(9) VALUE 'EBSYNSUM2'. 03440000 034500 03 REPORT-SUM3. 03450000 034600 05 REPORT-CODE3 PIC XXX. 03460000 034700 05 FILLER PIC X(9) VALUE 'EBSYNSUM3'. 03470000 034800* 03480000 034900* 03490000 035000 01 EMPLOYEE-KEY-AREA. 03500000 035100 03 KEY-DATE. 03510000 035200 05 YEAR-1 PIC 9. 03520000 035300 05 YEAR-2 PIC 9. 03530000 035400 05 DAY-1 PIC 9. 03540000 035500 05 DAY-2 PIC 9. 03550000 035600 05 DAY-3 PIC 9. 03560000 035700 03 KEY-TIME. 03570000 035800 05 HOUR-1 PIC 9. 03580000 035900 05 KEY-TIME-ZONE. 03590000 036000 07 HOUR-2 PIC 9. 03600000 036100 07 MINUTE-1 PIC 9. 03610000 036200 07 MINUTE-2 PIC 9. 03620000 036300 07 SECOND-1 PIC 9. 03630000 036400 07 SECOND-2 PIC 9. 03640000 036500 07 HUNDRED-1 PIC 9. 03650000 036600 05 HUNDRED-2 PIC 9. 03660000 036700 03 BUILD-KEY-AREA. 03670000 036800 05 KEY-ELEMENT-1 PIC 9. 03680000 036900 05 KEY-ELEMENT-2 PIC 9. 03690000 037000 05 KEY-ELEMENT-3 PIC 9. 03700000 037100 05 KEY-ELEMENT-4 PIC 9(6). 03710000 037200* 03720000 037300* 03730000 037400 01 DATA-COMP-AREA. 03740000 037500 03 HOLD-BIRTHDATE. 03750000 037600 05 BIRTH-YEAR PIC 99. 03760000 037700 05 BIRTH-MONTH PIC 99. 03770000 037800 05 BIRTH-DAY PIC 99. 03780000 037900 03 COMPUTED-AGE PIC 99. 03790000 038000 88 TOO-YOUNG VALUES 00 THRU 16. 03800000 038100 88 TOO-OLD VALUES 73 THRU 99. 03810000 038200* 03 COMPUTED-SENIORITY PIC 99. 03820000 038300* 88 NO-SENIORITY VALUES 0, 1. 03830000 038400 03 HOLD-HIREDATE. 03840000 038500 05 HIRE-YEAR PIC 99. 03850000 038600 05 HIRE-MONTH PIC 99. 03860000 038700 05 HIRE-DAY PIC 99. 03870000 038800* 03880000 038900* 03890000 039000 01 VALID-DATA-FLAGS. 03900000 039100 03 EB00-FLAG PIC 9. 03910000 039200 88 EB00-VALID VALUE 1. 03920000 039300 88 EB00-GROUP3 VALUE 2. 03930000 039400 03 EB01-FLAG PIC 9. 03940000 039500 88 EB01-VALID VALUE 1. 03950000 039600 88 EB01-GROUP3 VALUE 2. 03960000 039700 03 EB02-FLAG PIC 9. 03970000 039800 88 EB02-VALID VALUE 1. 03980000 039900 88 EB02-GROUP3 VALUE 2. 03990000 040000 03 EB03-FLAG PIC 9. 04000000 040100 88 EB03-VALID VALUE 1. 04010000 040200 88 EB03-GROUP3 VALUE 2. 04020000 040300 03 EB04-FLAG PIC 9. 04030000 040400 88 EB04-VALID VALUE 1. 04040000 040500 88 EB04-GROUP3 VALUE 2. 04050000 040600 03 EB05-FLAG PIC 9. 04060000 040700 88 EB05-VALID VALUE 1. 04070000 040800 88 EB05-GROUP3 VALUE 2. 04080000 040900 03 EB06-FLAG PIC 9. 04090000 041000 88 EB06-VALID VALUE 1. 04100000 041100 88 EB06-GROUP3 VALUE 2. 04110000 041200 03 EB07-FLAG PIC 9. 04120000 041300 88 EB07-VALID VALUE 1. 04130000 041400 88 EB07-GROUP3 VALUE 2. 04140000 041500 03 EB08-FLAG PIC 9. 04150000 041600 88 EB08-VALID VALUE 1. 04160000 041700 88 EB08-GROUP3 VALUE 2. 04170000 041800 03 EB09-FLAG PIC 9. 04180000 041900 88 EB09-VALID VALUE 1. 04190000 042000 88 EB09-GROUP3 VALUE 2. 04200000 042100 03 EB10-FLAG PIC 9. 04210000 042200 88 EB10-VALID VALUE 1. 04220000 042300 88 EB10-GROUP3 VALUE 2. 04230000 042400 03 EB11-FLAG PIC 9. 04240000 042500 88 EB11-VALID VALUE 1. 04250000 042600 88 EB11-GROUP3 VALUE 2. 04260000 042700 03 EB12-FLAG PIC 9. 04270000 042800 88 EB12-VALID VALUE 1. 04280000 042900 88 EB12-GROUP3 VALUE 2. 04290000 043000 03 EB13-FLAG PIC 9. 04300000 043100 88 EB13-VALID VALUE 1. 04310000 043200 88 EB13-GROUP3 VALUE 2. 04320000 043300* 04330000 043400* 04340000 043500 01 EDIT-ERROR-COUNT-TABLE VALUE ZEROS. 04350000 043600 03 EDIT-ERROR-COUNT-ROWS 04360000 043700 OCCURS 17 TIMES 04370000 043800 INDEXED BY ERROR-COUNT-ROW-INDEX. 04380000 043900 05 EDIT-ERROR-COUNT-COLS 04390000 044000 OCCURS 4 TIMES 04400000 044100 INDEXED BY ERROR-COUNT-COL-INDEX. 04410000 044200 07 ERROR-COUNT PIC 9(6). 04420000 044300* 04430000 044400* 04440000 044500 01 DISTRICT-ERROR-COUNT-TABLE VALUE ZEROS. 04450000 044600 03 DISTRICT-ERROR-COUNT-ROWS 04460000 044700 OCCURS 17 TIMES 04470000 044800 INDEXED BY DISTRICT-COUNT-ROW-INDEX. 04480000 044900 05 DISTRICT-ERROR-COUNT-COLS 04490000 045000 OCCURS 4 TIMES 04500000 045100 INDEXED BY DISTRICT-COUNT-COL-INDEX. 04510000 045200 07 DISTRICT-COUNT 04520000 045300 PIC 9(6). 04530000 045400* 04540000 045500* 04550000 045600 01 DISTRICT-INTEGRITY-COUNTS VALUE ZEROS. 04560000 045700 03 DISTRICT-INTEGRITY-ERROR 04570000 045800 OCCURS 12 TIMES 04580000 045900 INDEXED BY DISTRICT-INTEGRITY-INDEX. 04590000 046000 05 DISTRICT-INT-CNT PIC 9(6). 04600000 046100* 04610000 046200* 04620000 046300 01 DISTRICT-TOTAL-TABLE VALUE ZEROS. 04630000 046400 03 DISTRICT-TOTAL-ENTRIES. 04640000 046500 05 DISTRICT-RECORDS-READ 04650000 046600 PIC 9(6). 04660000 046700 05 DISTRICT-RECORDS-REJECTED 04670000 046800 PIC 9(6). 04680000 046900 05 DISTRICT-EDITED-RECS-WRITTEN 04690000 047000 PIC 9(6). 04700000 047100 03 DISTRICT-TOTAL-ENTRY 04710000 047200 REDEFINES DISTRICT-TOTAL-ENTRIES 04720000 047300 OCCURS 3 TIMES 04730000 047400 INDEXED BY DISTRICT-TOTAL-INDEX. 04740000 047500 05 DISTRICT-TOTAL PIC 9(6). 04750000 047600* 04760000 047700* 04770000 047800 01 EDIT-ERROR-LITERAL-TABLE. 04780000 047900 03 EDIT-ERROR-LITERAL-ENTRIES. 04790000 048000 05 FILLER PIC X(21) 04800000 048100 VALUE 'EMPLOYEE ID EB00'. 04810000 048200 05 FILLER PIC X(21) 04820000 048300 VALUE 'RECORD CODE GI90'. 04830000 048400 05 FILLER PIC X(21) 04840000 048500 VALUE 'DISTRICT ID GI01'. 04850000 048600 05 FILLER PIC X(21) 04860000 048700 VALUE 'TERM ID GI03'. 04870000 048800 05 FILLER PIC X(21) 04880000 048900 VALUE 'EMPLOYEE ID STAT EB01'. 04890000 049000 05 FILLER PIC X(21) 04900000 049100 VALUE 'BIRTH DATE EB02'. 04910000 049200 05 FILLER PIC X(21) 04920000 049300 VALUE 'GENDER EB03'. 04930000 049400 05 FILLER PIC X(21) 04940000 049500 VALUE 'ETHNICITY EB04'. 04950000 049600 05 FILLER PIC X(21) 04960000 049700 VALUE 'CITIZENSHIP EB05'. 04970000 049800 05 FILLER PIC X(21) 04980000 049900 VALUE 'DISAB STATUS EB06'. 04990000 050000 05 FILLER PIC X(21) 05000000 050100 VALUE 'EEO6 ACTIVITY EB07'. 05010000 050200 05 FILLER PIC X(21) 05020000 050300 VALUE 'EMPLOY CLASS EB08'. 05030000 050400 05 FILLER PIC X(21) 05040000 050500 VALUE 'EMPLOY STATUS EB09'. 05050000 050600 05 FILLER PIC X(21) 05060000 050700 VALUE 'HIRE DATE EB10'. 05070000 050800 05 FILLER PIC X(21) 05080000 050900 VALUE 'CONTRACT EB11'. 05090000 051000 05 FILLER PIC X(21) 05100000 051100 VALUE 'SALARY EB12'. 05110000 051200 05 FILLER PIC X(21) 05120000 051300 VALUE 'STIPEND EB13'. 05130000 051400 05 FILLER PIC X(21) 05140000 051500 VALUE ' ACTION:'. 05150000 051600 03 EDIT-ERROR-LITERAL-ENTRY 05160000 051700 REDEFINES EDIT-ERROR-LITERAL-ENTRIES 05170000 051800 OCCURS 18 TIMES 05180000 051900 INDEXED BY EDIT-ERROR-LITERAL-INDEX. 05190000 052000 05 DATA-ELEMENT-LITERAL. 05200000 052100 07 ELEMENT-NAME PIC X(17). 05210000 052200 07 ELEMENT-NUMBER PIC X(4). 05220000 052300* 05230000 052400* 05240000 052500 01 ERROR-MESSAGE-TABLE. 05250000 052600 03 ERROR-MESSAGE-ENTRIES. 05260000 052700 05 INVALID-TERM-MESSAGE. 05270000 052800 07 FILLER PIC X(13) VALUE 'INVALID TERM'. 05280000 052900 07 FILLER PIC X(17) VALUE 'IN PARAMETERS'.05290000 053000 05 INVALID-DISTRICT-MESSAGE. 05300000 053100 07 FILLER PIC X(8) VALUE 'INVALID'. 05310000 053200 07 FILLER PIC X(12) VALUE 'DISTRICT IN'. 05320000 053300 07 FILLER PIC X(10) VALUE 'PARAMETERS'. 05330000 053400 05 INVALID-PF-MESSAGE. 05340000 053500 07 FILLER PIC X(8) VALUE 'INVALID'. 05350000 053600 07 FILLER PIC X(11) VALUE 'PRINT FLAG'. 05360000 053700 07 FILLER PIC X(11) VALUE 'PARAMETER'. 05370000 053800 03 ERROR-MESSAGE-ENTRY 05380000 053900 REDEFINES ERROR-MESSAGE-ENTRIES 05390000 054000 OCCURS 3 TIMES 05400000 054100 INDEXED BY ERROR-MESSAGE-INDEX. 05410000 054200 05 ERROR-MESSAGE PIC X(30). 05420000 054300* 05430000 054400* 05440000 054500 01 TOTAL-DESCRIPTIONS-TABLE. 05450000 054600 03 TOTAL-DESCRIPTIONS-ENTRIES. 05460000 054700 05 TOTAL-RECORDS-READ PIC X(30) 05470000 054800 VALUE 'TOTAL RECORDS READ : '. 05480000 054900 05 TOTAL-REJECTIONS PIC X(30) 05490000 055000 VALUE 'TOTAL RECORDS REJECTED : '. 05500000 055100 05 TOTAL-BASE-RECORDS PIC X(30) 05510000 055200 VALUE 'TOTAL RECORDS WRITTEN : '. 05520000 055300 03 TOTAL-DESCRIPTIONS-ENTRY 05530000 055400 REDEFINES TOTAL-DESCRIPTIONS-ENTRIES 05540000 055500 OCCURS 3 TIMES 05550000 055600 INDEXED BY TOTAL-DESCRIPTIONS-INDEX. 05560000 055700 05 TOTAL-DESCRIPTION PIC X(30). 05570000 055800* 05580000 055900* 05590000 056000 01 EDIT-ERROR-TABLE VALUE SPACES. 05600000 056100 03 EDIT-ERROR-ROWS 05610000 056200 OCCURS 18 TIMES 05620000 056300 INDEXED BY EDIT-ROW-INDEX. 05630000 056400 05 EDIT-ERROR-COLUMNS 05640000 056500 OCCURS 6 TIMES 05650000 056600 INDEXED BY EDIT-COLUMN-INDEX. 05660000 056700 07 DATA-ELEMENT-FLAG 05670000 056800 PIC X. 05680000 056900 07 FILLER PIC X. 05690000 057000 07 DATA-ELEMENT PIC X(14). 05700000 057100* 05710000 057200* 05720000 057300* * * * * * * * REPORT LINE FORMATS * * * * * * * * 05730000 057400* 05740000 057500 01 EDIT-ERROR-PRINT-LINE VALUE SPACES. 05750000 057600 03 FILLER PIC X. 05760000 057700 03 DETAIL-LITERAL-AREA PIC X(21). 05770000 057800 03 EDIT-ERROR-DATA-ENTRY 05780000 057900 OCCURS 6 TIMES 05790000 058000 INDEXED BY EDIT-ERROR-DATA-INDEX. 05800000 058100 05 FILLER PIC XX. 05810000 058200 05 VALIDATION-FLAG PIC X. 05820000 058300 05 FILLER PIC X. 05830000 058400 05 DATA-ELEMENT-OUT PIC X(14). 05840000 058500* 05850000 058600* 05860000 058700 01 TOTAL-DETAIL-LINE VALUE SPACES. 05870000 058800 03 FILLER PIC X. 05880000 058900 03 FILLER PIC X(46). 05890000 059000 03 TOTAL-DESCRIPTION PIC X(30). 05900000 059100 03 TOTAL-FIELD PIC ZZZ,ZZ9. 05910000 059200* 05920000 059300* 05930000 059400 01 ELEMENT-TOTAL-DETAIL-LINE VALUE SPACE. 05940000 059500 03 FILLER PIC X. 05950000 059600 03 FILLER PIC X(16). 05960000 059700 03 ELEMENT-LITERAL-AREA PIC X(21). 05970000 059800 03 FILLER PIC X(9). 05980000 059900 03 ELEMENT-COLUMNS 05990000 060000 OCCURS 4 TIMES 06000000 060100 INDEXED BY ELEMENT-COLUMN-INDEX. 06010000 060200 05 ELEMENT-TOTAL PIC ZZZ,ZZ9. 06020000 060300 05 ELEMENT-TOTAL-RED REDEFINES ELEMENT-TOTAL 06030000 060400 PIC X(7). 06040000 060500 05 FILLER PIC X(14). 06050000 060600* 06060000 060700* * * * * * * * REPORT HEADINGS * * * * * * * * 06070000 060800* 06080000 060900 01 HEADER-WORKAREA. 06090000 061000* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 06100000 061100* * 06110000 061200* H E A D E R W O R K A R E A * 06120000 061300* * 06130000 061400* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 06140000 061500* 06150000 061600 03 HEADING-LINE PIC X(133) VALUE SPACES. 06160000 061700 03 HEADING-TITLE-LINE 06170000 061800 REDEFINES HEADING-LINE. 06180000 061900 05 FILLER PIC X(29). 06190000 062000 05 WIDE-HEADING-LOCATION 06200000 062100 PIC X(75). 06210000 062200 05 FILLER PIC X(29). 06220000 062300 03 HEADING-STATISTICS-LINE 06230000 062400 REDEFINES HEADING-LINE. 06240000 062500 05 FILLER PIC X. 06250000 062600 05 LEFT-STATISTIC PIC X(31). 06260000 062700 05 FILLER PIC X(26). 06270000 062800 05 NARROW-RIGHT-STATISTIC 06280000 062900 PIC X(18). 06290000 063000 05 FILLER PIC X(39). 06300000 063100 05 WIDE-RIGHT-STATISTIC 06310000 063200 PIC X(18). 06320000 063300 03 HEADER-STATISTICS. 06330000 063400 05 HEADER-REPORT-PAGE. 06340000 063500 07 FILLER PIC X(8) VALUE SPACES. 06350000 063600 07 FILLER PIC X(5) VALUE 'PAGE '. 06360000 063700 07 HEADER-PAGE-NUMBER 06370000 063800 PIC Z(5) VALUE SPACES. 06380000 * Modified for Y2K 063900 05 HEADER-REPORT-DATE. 06390000 064000 07 HEADER-MONTH PIC X(9) VALUE SPACES. 06400000 064100 07 FILLER PIC X VALUE SPACE. 06410000 064200 07 HEADER-DAY PIC Z(2) VALUE SPACES. 06420000 064300 07 FILLER PIC X(2) VALUE ', '. 06430000 064400 07 HEADER-YEAR PIC Z(4) VALUE SPACES. 06440000 064500 05 HEADER-REPORT-TIME. 06450000 064600 07 FILLER PIC X(6) VALUE 'TIME'. 06460000 064700 07 HEADER-TIME-AREA VALUE SPACES. 06470000 064800 09 HEADER-TIME PIC Z9/99. 06480000 064900 05 HEADER-REPORT-ID. 06490000 065000 07 FILLER PIC X(11) VALUE 'REPORT-ID: '. 06500000 065100 07 PROGRAM-NAME PIC X(20) VALUE SPACES. 06510000 065200 03 HEADER-MONTH-NAMES. 06520000 065300 05 JANUARY. 06530000 065400 07 FULL-MONTH-NAME PIC X(9) VALUE ' JANUARY'. 06540000 065500 05 FEBRUARY. 06550000 065600 07 FULL-MONTH-NAME PIC X(9) VALUE ' FEBRUARY'. 06560000 065700 05 MARCH. 06570000 065800 07 FULL-MONTH-NAME PIC X(9) VALUE ' MARCH'. 06580000 065900 05 APRIL. 06590000 066000 07 FULL-MONTH-NAME PIC X(9) VALUE ' APRIL'. 06600000 066100 05 MAY. 06610000 066200 07 FULL-MONTH-NAME PIC X(9) VALUE ' MAY'. 06620000 066300 05 JUNE. 06630000 066400 07 FULL-MONTH-NAME PIC X(9) VALUE ' JUNE'. 06640000 066500 05 JULY. 06650000 066600 07 FULL-MONTH-NAME PIC X(9) VALUE ' JULY'. 06660000 066700 05 AUGUST. 06670000 066800 07 FULL-MONTH-NAME PIC X(9) VALUE ' AUGUST'. 06680000 066900 05 SEPTEMBER. 06690000 067000 07 FULL-MONTH-NAME PIC X(9) VALUE 'SEPTEMBER'. 06700000 067100 05 OCTOBER. 06710000 067200 07 FULL-MONTH-NAME PIC X(9) VALUE ' OCTOBER'. 06720000 067300 05 NOVEMBER. 06730000 067400 07 FULL-MONTH-NAME PIC X(9) VALUE ' NOVEMBER'. 06740000 067500 05 DECEMBER. 06750000 067600 07 FULL-MONTH-NAME PIC X(9) VALUE ' DECEMBER'. 06760000 067700 03 HEADER-MONTH-TABLE 06770000 067800 REDEFINES HEADER-MONTH-NAMES 06780000 067900 OCCURS 12 TIMES 06790000 068000 INDEXED BY HEADER-MONTH-INDEX. 06800000 068100 05 HEADER-MONTH-NAME. 06810000 068200 07 FULL-MONTH-NAME PIC X(9). 06820000 068300 03 HEADER-HOLDING-AREA. 06830000 068400 05 REPORT-DATE PIC 9(6). 06840000 068500 05 EXPANDED-REPORT-DATE 06850000 068600 REDEFINES REPORT-DATE. 06860000 068700 07 REPORT-YEAR PIC 9(2). 06870000 068800 07 REPORT-MONTH PIC 9(2). 06880000 068900 07 REPORT-DAY PIC 9(2). 06890000 069000 05 REPORT-TIME PIC 9(8). 06900000 069100 05 EXPANDED-REPORT-TIME 06910000 069200 REDEFINES REPORT-TIME. 06920000 069300 07 ACTUAL-CLOCK-TIME 06930000 069400 PIC 9(4). 06940000 069500 07 FILLER PIC 9(4). 06950000 069600 05 MIS-PILOT-TITLE. 06960000 069700 07 FILLER PIC X(23) VALUE SPACES. 06970000 069800 07 FILLER PIC X(11) VALUE 'MANAGEMENT'. 06980000 069900 07 FILLER PIC X(12) VALUE 'INFORMATION'. 06990000 070000 07 FILLER PIC X(6) VALUE 'SYSTEM'. 07000000 070100 05 COMMUNITY-COLLEGE-TITLE. 07010000 070200 07 FILLER PIC X(9) VALUE SPACES. 07020000 070300 07 FILLER PIC X(12) VALUE 'C A L I F O '. 07030000 070400 07 FILLER PIC X(12) VALUE 'R N I A C '. 07040000 070500 07 FILLER PIC X(12) VALUE 'O M M U N I '. 07050000 070600 07 FILLER PIC X(12) VALUE 'T Y C O L '. 07060000 070700 07 FILLER PIC X(9) VALUE 'L E G E S'. 07070000 070800 05 MAXIMUM-LINES-PER-PAGE 07080000 070900 PIC 9(2) VALUE 59. 07090000 071000 03 HEADER-SWITCHES-AND-FLAGS. 07100000 071100 05 FIRST-PAGE-SWITCH PIC 9 VALUE 1. 07110000 071200 88 FIRST-PAGE VALUE 1. 07120000 071300 05 FIRST-PAGE-FLAG PIC 9 VALUE 1. 07130000 071400 05 REPORT-WIDTH-SWITCH PIC X VALUE 'W'. 07140000 071500 88 WIDE-PAPER-REQUIRED VALUE 'W'. 07150000 071600 88 NARROW-PAPER-REQUIRED VALUE 'N'. 07160000 071700 05 WIDE-PAPER-FLAG PIC X VALUE 'W'. 07170000 071800 05 NARROW-PAPER-FLAG PIC X VALUE 'N'. 07180000 071900 03 HEADER-WORKAREA-COUNTERS VALUE ZEROS. 07190000 072000 05 REPORT-PAGE-COUNTER PIC 9(5). 07200000 072100 05 REPORT-LINE-COUNTER PIC 9(2). 07210000 072200 88 TOP-OF-PAGE VALUE ZEROS. 07220000 072300* 07230000 072400* 07240000 072500 01 REPORT-COLUMN-LINE-1. 07250000 072600 03 FILLER PIC X. 07260000 072700 03 FILLER PIC X(12) VALUE 'DATA ELEMENT'. 07270000 072800 03 FILLER PIC X(4) VALUE SPACE. 07280000 072900 03 FILLER PIC X(4) VALUE 'DED#'. 07290000 073000* 07300000 073100* 07310000 073200 01 ELEMENT-COLUMN-LINE-1. 07320000 073300 03 FILLER PIC X VALUE SPACE. 07330000 073400 03 FILLER PIC X(48) VALUE SPACE. 07340000 073500 03 FILLER PIC X(5) 07350000 073600 VALUE 'TOTAL'. 07360000 073700 03 FILLER PIC X(16) VALUE SPACE. 07370000 073800 03 FILLER PIC X(5) 07380000 073900 VALUE 'TOTAL'. 07390000 074000 03 FILLER PIC X(16) VALUE SPACE. 07400000 074100 03 FILLER PIC X(5) 07410000 074200 VALUE 'TOTAL'. 07420000 074300 03 FILLER PIC X(16) VALUE SPACE. 07430000 074400 03 FILLER PIC X(5) 07440000 074500 VALUE 'TOTAL'. 07450000 074600* 07460000 074700* 07470000 074800 01 ELEMENT-COLUMN-LINE-2. 07480000 074900 03 FILLER PIC X VALUE SPACE. 07490000 075000 03 FILLER PIC X(47) VALUE SPACE. 07500000 075100 03 FILLER PIC X(6) 07510000 075200 VALUE 'FIELD'. 07520000 075300 03 FILLER PIC X(15) VALUE SPACE. 07530000 075400 03 FILLER PIC X(7) 07540000 075500 VALUE 'UNKNOWN'. 07550000 075600 03 FILLER PIC X(10) VALUE SPACE. 07560000 075700 03 FILLER PIC X(14) 07570000 075800 VALUE 'REASONABLENESS'. 07580000 075900 03 FILLER PIC X(11) VALUE SPACE. 07590000 076000 03 FILLER PIC X(7) 07600000 076100 VALUE 'GROUP 3'. 07610000 076200* 07620000 076300* 07630000 076400 01 ELEMENT-COLUMN-LINE-3. 07640000 076500 03 FILLER PIC X VALUE SPACE. 07650000 076600 03 FILLER PIC X(16) VALUE SPACE. 07660000 076700 03 FILLER PIC X(21) 07670000 076800 VALUE 'DATA ELEMENT DED#'. 07680000 076900 03 FILLER PIC X(8) VALUE SPACE. 07690000 077000 03 FILLER PIC X(10) VALUE 'EXCEPTIONS'. 07700000 077100 03 FILLER PIC X(13) VALUE SPACE. 07710000 077200 03 FILLER PIC X(6) VALUE 'VALUES'. 07720000 077300 03 FILLER PIC X(13) VALUE SPACE. 07730000 077400 03 FILLER PIC X(10) VALUE 'EXCEPTIONS'. 07740000 077500 03 FILLER PIC X(12) VALUE SPACE. 07750000 077600 03 FILLER PIC X(8) VALUE '(SPACES)'. 07760000 077700* 07770000 077800* 07780000 077900 01 REPORT-TITLE-LINE-1. 07790000 078000 03 FILLER PIC X(45) VALUE SPACES. 07800000 078100 03 FILLER PIC X(42) 07810000 078200 VALUE 'EMPLOYEE DEMOGRAPHIC DATA SYNTACTICAL EDIT'. 07820000 078300* 07830000 078400* 07840000 * Modified for Y2K 078500 01 REPORT-TITLE-LINE-2. 07850000 078600 03 FILLER PIC X(50) VALUE SPACES. 07860000 078700 03 TERM-NAME PIC X(19). 07870000 078800 03 FILLER PIC X VALUE ' '. 07880000 078900 03 CALENDAR-YEAR1 PIC 9999. 07890000 079000 03 FILLER PIC X(2) VALUE ' ('. 07900000 079100 03 CALENDAR-YEAR2 PIC 9999. 07910000 079200 03 FILLER PIC X VALUE '-'. 07920000 079300 03 TERM-CODE PIC X. 07930000 079400 03 FILLER PIC X VALUE ')'. 07940000 079500* 07950000 079600* 07960000 079700 01 REPORT-TITLE-LINE-3. 07970000 079800 03 FILLER PIC X(52) VALUE SPACES. 07980000 079900 03 DISTRICT-NAME PIC X(30). 07990000 080000* 08000000 080100* 08010000 080200 01 REPORT-TITLE-LINE-3A. 08020000 080300 03 FILLER PIC X(60) VALUE SPACES. 08030000 080400 03 FILLER PIC X(13) VALUE 'DETAIL REPORT'.08040000 080500* 08050000 080600* 08060000 080700 01 REPORT-TITLE-LINE-5. 08070000 080800 03 FILLER PIC X(44) VALUE SPACES. 08080000 080900 03 FILLER PIC X(45) 08090000 081000 VALUE 'SUMMARY DISTRICT EDIT ERROR TOTALS BY ELEMENT'.08100000 081100* 08110000 081200* 08120000 081300 01 REPORT-TITLE-LINE-7. 08130000 081400 03 FILLER PIC X(43) VALUE SPACES. 08140000 081500 03 FILLER PIC X(47) 08150000 081600 VALUE 'SUMMARY DISTRICT TOTAL INTEGRITY ERRORS BY TYPE'. 08160000 081700* 08170000 081800* 08180000 081900 01 REPORT-COLUMN-TITLES. 08190000 082000 05 FILLER PIC XX VALUE SPACES. 08200000 082100 05 FILLER PIC X(5) VALUE 'DATA'. 08210000 082200 05 FILLER PIC X(11) VALUE 'ELEMENTS'. 08220000 082300 05 FILLER PIC X(4) VALUE 'DED#'. 08230000 082400* 08240000 082500* 08250000 082600 01 DISTRICT-TOTAL-HEADING. 08260000 082700 03 FILLER PIC X VALUE SPACES. 08270000 082800 03 FILLER PIC X(53) VALUE SPACES. 08280000 082900 03 FILLER PIC X(24) 08290000 083000 VALUE 'DISTRICT SUMMARY TOTALS:'. 08300000 083100 03 FILLER PIC X(55) VALUE SPACES. 08310000 083200* 08320000 083300* 08330000 083400 01 INTEGRITY-ERROR-1. 08340000 083500 03 FILLER PIC X. 08350000 083600 03 FILLER PIC XX VALUE SPACES. 08360000 083700 03 INT-CNT-OUT-1 PIC ZZZ,ZZ9. 08370000 083800 03 FILLER PIC XXX VALUE SPACES. 08380000 083900 03 FILLER PIC X(40) 08390000 084000 VALUE 'EMPLOYEE ID STATUS (EB01) = S BUT THE EM'. 08400000 084100 03 FILLER PIC X(40) 08410000 084200 VALUE 'PLOYEE ID (EB00) IS NOT A VALID SOCIAL S'. 08420000 084300 03 FILLER PIC X(40) 08430000 084400 VALUE 'ECURITY NUMBER. '. 08440000 084500* 08450000 084600* 08460000 084700 01 INTEGRITY-ERROR-2. 08470000 084800 03 FILLER PIC X. 08480000 084900 03 FILLER PIC XX VALUE SPACES. 08490000 085000 03 INT-CNT-OUT-2 PIC ZZZ,ZZ9. 08500000 085100 03 FILLER PIC XXX VALUE SPACES. 08510000 085200 03 FILLER PIC X(41) 08520000 085300 VALUE 'BIRTH DATE (EB02) IS CODED AS 8"S BUT THE'. 08530000 085400 03 FILLER PIC X(40) 08540000 085500 VALUE ' EMPLOYEE CLASSIFICATION (EB08) IS NOT C'. 08550000 085600 03 FILLER PIC X(40) 08560000 085700 VALUE 'ODED AS AN "O" '. 08570000 085800* 08580000 085900* 08590000 086000 01 INTEGRITY-ERROR-3. 08600000 086100 03 FILLER PIC X. 08610000 086200 03 FILLER PIC XX VALUE SPACES. 08620000 086300 03 INT-CNT-OUT-3 PIC ZZZ,ZZ9. 08630000 086400 03 FILLER PIC XXX VALUE SPACES. 08640000 086500 03 FILLER PIC X(40) 08650000 086600 VALUE 'CITIZENSHIP (EB05) IS CODED AS A "Y" BUT'. 08660000 086700 03 FILLER PIC X(40) 08670000 086800 VALUE ' EMPLOYEE CLASSIFICATION (EB08) IS NOT C'. 08680000 086900 03 FILLER PIC X(40) 08690000 087000 VALUE 'ODED AS AN "O" '. 08700000 087100* 08710000 087200* 08720000 087300 01 INTEGRITY-ERROR-4. 08730000 087400 03 FILLER PIC X. 08740000 087500 03 FILLER PIC XX VALUE SPACES. 08750000 087600 03 INT-CNT-OUT-4 PIC ZZZ,ZZ9. 08760000 087700 03 FILLER PIC XXX VALUE SPACES. 08770000 087800 03 FILLER PIC X(41) 08780000 087900 VALUE 'DISABILITY STATUS (EB06) IS CODED AS A "Y'. 08790000 088000 03 FILLER PIC X(40) 08800000 088100 VALUE '" BUT EMPLOYEE CLASSIFICATION (EB08) IS '. 08810000 088200 03 FILLER PIC X(40) 08820000 088300 VALUE 'NOT CODED AS AN "O" '. 08830000 088400* 08840000 088500* 08850000 088600 01 INTEGRITY-ERROR-5. 08860000 088700 03 FILLER PIC X. 08870000 088800 03 FILLER PIC XX VALUE SPACES. 08880000 088900 03 INT-CNT-OUT-5 PIC ZZZ,ZZ9. 08890000 089000 03 FILLER PIC XXX VALUE SPACES. 08900000 089100 03 FILLER PIC X(41) 08910000 089200 VALUE 'EEO6 OCCUPATIONAL ACTIVITY (EB07) IS CODE'. 08920000 089300 03 FILLER PIC X(40) 08930000 089400 VALUE 'D AS A "2" BUT CONTRACT DURATION (EB11) '. 08940000 089500 03 FILLER PIC X(40) 08950000 089600 VALUE 'IS NOT A "1", "2" OR "3". '. 08960000 089700* 08970000 089800* 08980000 089900 01 INTEGRITY-ERROR-6. 08990000 090000 03 FILLER PIC X. 09000000 090100 03 FILLER PIC XX VALUE SPACES. 09010000 090200 03 INT-CNT-OUT-6 PIC ZZZ,ZZ9. 09020000 090300 03 FILLER PIC XXX VALUE SPACES. 09030000 090400 03 FILLER PIC X(40) 09040000 090500 VALUE 'EMPLOYEE CLASSIFICATION (EB08) IS = TO O'. 09050000 090600 03 FILLER PIC X(42) 09060000 090700 VALUE ' BUT ANNUAL SALARY (EB12) IS NOT EQUAL TO'. 09070000 090800 03 FILLER PIC X(7) 09080000 090900 VALUE ' 888888'. 09090000 091000* 09100000 091100* 09110000 091200 01 INTEGRITY-ERROR-7. 09120000 091300 03 FILLER PIC X. 09130000 091400 03 FILLER PIC XX VALUE SPACES. 09140000 091500 03 INT-CNT-OUT-7 PIC ZZZ,ZZ9. 09150000 091600 03 FILLER PIC XXX VALUE SPACES. 09160000 091700 03 FILLER PIC X(41) 09170000 091800 VALUE 'EMPLOYEE CLASSIFICATION (EB08) IS = TO O '. 09180000 091900 03 FILLER PIC X(35) 09190000 092000 VALUE 'BUT ANNUAL STIPEND (EB13) IS NOT = '. 09200000 092100 03 FILLER PIC X(9) 09210000 092200 VALUE 'TO 888888'. 09220000 092300* 09230000 092400* 09240000 092500 01 INTEGRITY-ERROR-8. 09250000 092600 03 FILLER PIC X. 09260000 092700 03 FILLER PIC XX VALUE SPACES. 09270000 092800 03 INT-CNT-OUT-8 PIC ZZZ,ZZ9. 09280000 092900 03 FILLER PIC XXX VALUE SPACES. 09290000 093000 03 FILLER PIC X(41) 09300000 093100 VALUE 'EMPLOYEE STATUS (EB09) IS CODED AS A "Y" '. 09310000 093200 03 FILLER PIC X(41) 09320000 093300 VALUE 'BUT EMPLOYEE CLASSIFICATION (EB08) IS NOT'. 09330000 093400 03 FILLER PIC X(41) 09340000 093500 VALUE ' CODED AS AN "O". '. 09350000 093600* 09360000 093700* 09370000 093800 01 INTEGRITY-ERROR-9. 09380000 093900 03 FILLER PIC X. 09390000 094000 03 FILLER PIC XX VALUE SPACES. 09400000 094100 03 INT-CNT-OUT-9 PIC ZZZ,ZZ9. 09410000 094200 03 FILLER PIC XXX VALUE SPACES. 09420000 094300 03 FILLER PIC X(41) 09430000 094400 VALUE 'EMPLOYEE STATUS (EB09) IS CODED AS A "N" '. 09440000 094500 03 FILLER PIC X(41) 09450000 094600 VALUE 'BUT DATE OF EMPLOYMENT (EB10) IS NOT WITH'. 09460000 094700 03 FILLER PIC X(41) 09470000 094800 VALUE 'IN THE REPORTING FISCAL YEAR. '. 09480000 094900* 09490000 095000* 09500000 095100 01 INTEGRITY-ERROR-A. 09510000 095200 03 FILLER PIC X. 09520000 095300 03 FILLER PIC XX VALUE SPACES. 09530000 095400 03 INT-CNT-OUT-A PIC ZZZ,ZZ9. 09540000 095500 03 FILLER PIC XXX VALUE SPACES. 09550000 095600 03 FILLER PIC X(41) 09560000 095700 VALUE 'DATE OF EMPLOYMENT (EB10) IS CODED AS 8"S'. 09570000 095800 03 FILLER PIC X(41) 09580000 095900 VALUE ' BUT EMPLOYEE CLASSIFICATOIN (EB08) IS NO'. 09590000 096000 03 FILLER PIC X(41) 09600000 096100 VALUE 'T CODED AS AN "O" OR "T". '. 09610000 096200* 09620000 096300* 09630000 096400 01 INTEGRITY-ERROR-B. 09640000 096500 03 FILLER PIC X. 09650000 096600 03 FILLER PIC XX VALUE SPACES. 09660000 096700 03 INT-CNT-OUT-B PIC ZZZ,ZZ9. 09670000 096800 03 FILLER PIC XXX VALUE SPACES. 09680000 096900 03 FILLER PIC X(41) 09690000 097000 VALUE 'CONTRACT DURATION (EB11) IS CODED AS "Y" '. 09700000 097100 03 FILLER PIC X(41) 09710000 097200 VALUE 'BUT EMPLOYEE CLASSIFICATOIN (EB08) IS NOT'. 09720000 097300 03 FILLER PIC X(41) 09730000 097400 VALUE ' CODED AS AN "O". '. 09740000 097500* 09750000 097600* 09760000 097700 01 INTEGRITY-ERROR-C. 09770000 097800 03 FILLER PIC X. 09780000 097900 03 FILLER PIC XX VALUE SPACES. 09790000 098000 03 INT-CNT-OUT-C PIC ZZZ,ZZ9. 09800000 098100 03 FILLER PIC XXX VALUE SPACES. 09810000 098200 03 FILLER PIC X(41) 09820000 098300 VALUE 'ANNUAL STIPEND (EB13) IS GREATER THAN ZER'. 09830000 098400 03 FILLER PIC X(39) 09840000 098500 VALUE '0 BUT ANNUAL SALARY (EB12) IS CODED AS '. 09850000 098600 03 FILLER PIC X(7) 09860000 098700 VALUE '888888.'. 09870000 098800* 09880000 098900* 09890000 099000* 09900000 099100* * * * * * * * VALIDATION TABLES * * * * * * * * 09910000 099200* 09920000 099300 01 DATE-VALIDATION-WORKAREA. 09930000 099400**************************************************************** 09940000 099500* * 09950000 099600* D A T E V A L I D A T I O N W O R K A R E A * 09960000 099700* * 09970000 099800* INSTRUCTIONS: * 09980000 099900* 1. MOVE THE DATE TO BE VALIDATED TO THE FOLLOWING * 09990000 100000* FIELDS FOR THE GIVEN FORMATS: * 10000000 100100* A. YYMMDD FORMAT -- MOVE TO: YYMMDD-DATE-WORKAREA * 10010000 100200* B. MMDD FORMAT -- MOVE TO: MMDD-DATE-WORK-FIELDS * 10020000 100300* (NOTE BELOW FOR DETERMINING LEAP YEAR FOR MMDD * 10030000 100400* DATE FORMAT.) * 10040000 100500* C. YYMM FORMAT -- MOVE TO: YYMM-DATE-WORKAREA * 10050000 100600* 2. WHEN PERFORMING THE PROCEDURE THAT USES THIS WORK * 10060000 100700* AREA, FILL IN THE APPROPRIATE DATE-FORMAT-FLAG * 10070000 100800* VALUES: 1, 2 OR 3. SEE 03 LEVEL DATE-FORMAT-FLAG. * 10080000 100900* 3. IF USING THE MMDD-DATE-FORMAT (VALUE 2), THE YEAR * 10090000 101000* YOU WISH TO USE TO DETERMINE IF IT IS A LEAP YEAR * 10100000 101100* MUST BE FILLED IN. MOVE THIS VALUE INTO THE * 10110000 101200* MMDD-YEAR DATA ITEM. DO THIS PRIOR TO PERFORMING * 10120000 101300* THE PROCEDURE DATVALP. * 10130000 101400* * 10140000 101500* NOTE: THE DEFAULT DATE IS SET TO THE YYMMDD FORMAT. * 10150000 101600* * 10160000 101700**************************************************************** 10170000 101800 03 DATE-FORMAT-FLAG PIC 9 VALUE 1. 10180000 101900 88 YYMMDD-DATE-FORMAT VALUE 1. 10190000 102000 88 MMDD-DATE-FORMAT VALUE 2. 10200000 102100 88 YYMM-DATE-FORMAT VALUE 3. 10210000 102200 03 DATE-FLAGS VALUE ZEROES. 10220000 102300 05 DATE-VALIDATION-FLAG 10230000 102400 PIC 9. 10240000 102500 88 DATE-IS-VALID VALUE 1. 10250000 102600 88 DATE-NOT-NUMERIC VALUE 2. 10260000 102700 88 DATE-MISSING VALUE 3. 10270000 102800 05 MONTH-FLAG 10280000 102900 PIC 9. 10290000 103000 88 VALID-MONTH VALUE 1. 10300000 103100 05 DAY-FLAG PIC 9. 10310000 103200 88 VALID-DAY VALUE 1. 10320000 103300 05 MAXIMUM-DAY-FLAG PIC 9(2). 10330000 103400 88 THIRTY-DAY-MONTH VALUE 4 6 9 11. 10340000 103500 88 THIRTY-ONE-DAY-MONTH 10350000 103600 VALUE 1 3 5 7 8 10 12. 10360000 103700 88 FEBRUARY VALUE 2. 10370000 103800 03 YYMMDD-DATE-WORKAREA. 10380000 103900 05 YYMMDD-YEAR PIC 9(2). 10390000 104000 05 YYMMDD-MONTH PIC 9(2). 10400000 104100 05 YYMMDD-DAY PIC 9(2). 10410000 104200 03 MMDD-DATE-WORKAREA. 10420000 104300 05 MMDD-DATE-WORK-FIELDS. 10430000 104400 07 MMDD-MONTH PIC 9(2). 10440000 104500 07 MMDD-DAY PIC 9(2). 10450000 104600 05 MMDD-YEAR PIC 9(2). 10460000 104700 03 YYMM-DATE-WORKAREA. 10470000 104800 05 YYMM-YEAR PIC 9(2). 10480000 104900 05 YYMM-MONTH PIC 9(2). 10490000 105000 03 CENTURY-WORKAREA. 10500000 105100 05 CENTURY PIC 9(2) VALUE 19. 10510000 105200 05 YEAR PIC 9(2) VALUE ZERO. 10520000 105300 03 CENTURY-FOR-COMPUTATION 10530000 105400 REDEFINES CENTURY-WORKAREA 10540000 105500 PIC 9(4). 10550000 105600 03 MONTH-DAY-WORKAREA VALUE ZERO. 10560000 105700 05 MONTH-WORKAREA PIC 9(2). 10570000 105800 88 VALID-MONTH-VALUE VALUES 1 THRU 12. 10580000 105900 05 DAY-WORKAREA PIC 9(2). 10590000 106000 03 LEAP-YEAR-WORK VALUE ZERO. 10600000 106100 05 LEAP-YEAR-QUOTIENT PIC 9(4). 10610000 106200 05 LEAP-YEAR-REMAINDER 10620000 106300 PIC 9(2). 10630000 106400 88 LEAP-YEAR VALUE ZERO. 10640000 106500 03 DATE-ROUTINE-VALUES. 10650000 106600 05 YYMMDD-FORMAT-VALUE PIC 9 VALUE 1. 10660000 106700 05 MMDD-FORMAT-VALUE PIC 9 VALUE 2. 10670000 106800 05 YYMM-FORMAT-VALUE PIC 9 VALUE 3. 10680000 106900 05 DATE-MISSING-FLAG PIC 9 VALUE 3. 10690000 107000 05 DATE-NOT-NUMERIC-FLAG 10700000 107100 PIC 9 VALUE 2. 10710000 107200 05 MONTH-OF-30-DAYS PIC 9(2) VALUE 30. 10720000 107300 05 MONTH-OF-31-DAYS PIC 9(2) VALUE 31. 10730000 107400 05 MONTH-OF-29-DAYS PIC 9(2) VALUE 29. 10740000 107500 05 MONTH-OF-28-DAYS PIC 9(2) VALUE 28. 10750000 107600 05 DIVISOR-FOR-LEAP-YEAR 10760000 107700 PIC 9 VALUE 4. 10770000 107800* 10780000 107900* 10790000 108000 01 TERM-IDENTIFIER-TABLE. 10800000 108100* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 10810000 108200* * 10820000 108300* TERM IDENTIFIER TABLE * 10830000 108400* * 10840000 108500* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 10850000 108600* 10860000 108700 03 TERM-IDENTIFIER-ENTRIES. 10870000 108800 05 ANNUAL-TERM. 10880000 108900 07 TERM-CODE PIC X(1) VALUE '0'. 10890000 109000 07 TERM-NAME PIC X(19) VALUE 'ANNUAL'. 10900000 109100 07 BIRTH-COMPUTATION-DATE. 10910000 109200 09 AGE-COMPUTATION-MONTH 10920000 109300 PIC 9(2) VALUE 10. 10930000 109400 09 AGE-COMPUTATION-DAY 10940000 109500 PIC 9(2) VALUE 15. 10950000 109600 07 QUARTER-TYPE-TERM-FLAG 10960000 109700 PIC 9 VALUE ZERO. 10970000 109800 07 EFFECTIVE-DATES. 10980000 109900 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 10990000 110000 09 END-DATE PIC 9(6) VALUE 999999. 11000000 110100 05 WINTER-INTERCESSION. 11010000 110200 07 TERM-CODE PIC X(1) VALUE '1'. 11020000 110300 07 TERM-NAME PIC X(19) 11030000 110400 VALUE 'WINTER INTERCESSION'. 11040000 110500 07 BIRTH-COMPUTATION-DATE. 11050000 110600 09 AGE-COMPUTATION-MONTH 11060000 110700 PIC 9(2) VALUE 02. 11070000 110800 09 AGE-COMPUTATION-DAY 11080000 110900 PIC 9(2) VALUE 01. 11090000 111000 07 QUARTER-TYPE-TERM-FLAG 11100000 111100 PIC 9 VALUE ZERO. 11110000 111200 07 EFFECTIVE-DATES. 11120000 111300 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11130000 111400 09 END-DATE PIC 9(6) VALUE 999999. 11140000 111500 05 WINTER-QUARTER. 11150000 111600 07 TERM-CODE PIC X(1) VALUE '2'. 11160000 111700 07 TERM-NAME PIC X(19) 11170000 111800 VALUE 'WINTER QUARTER'. 11180000 111900 07 BIRTH-COMPUTATION-DATE. 11190000 112000 09 AGE-COMPUTATION-MONTH 11200000 112100 PIC 9(2) VALUE 02. 11210000 112200 09 AGE-COMPUTATION-DAY 11220000 112300 PIC 9(2) VALUE 01. 11230000 112400 07 QUARTER-TYPE-TERM-FLAG 11240000 112500 PIC 9 VALUE 1. 11250000 112600 07 EFFECTIVE-DATES. 11260000 112700 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11270000 112800 09 END-DATE PIC 9(6) VALUE 999999. 11280000 112900 05 SPRING-SEMESTER. 11290000 113000 07 TERM-CODE PIC X(1) VALUE '3'. 11300000 113100 07 TERM-NAME PIC X(19) 11310000 113200 VALUE 'SPRING SEMESTER'. 11320000 113300 07 BIRTH-COMPUTATION-DATE. 11330000 113400 09 AGE-COMPUTATION-MONTH 11340000 113500 PIC 9(2) VALUE 03. 11350000 113600 09 AGE-COMPUTATION-DAY 11360000 113700 PIC 9(2) VALUE 01. 11370000 113800 07 QUARTER-TYPE-TERM-FLAG 11380000 113900 PIC 9 VALUE ZERO. 11390000 114000 07 EFFECTIVE-DATES. 11400000 114100 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11410000 114200 09 END-DATE PIC 9(6) VALUE 999999. 11420000 114300 05 SPRING-QUARTER. 11430000 114400 07 TERM-CODE PIC X(1) VALUE '4'. 11440000 114500 07 TERM-NAME PIC X(19) 11450000 114600 VALUE 'SPRING QUARTER'. 11460000 114700 07 BIRTH-COMPUTATION-DATE. 11470000 114800 09 AGE-COMPUTATION-MONTH 11480000 114900 PIC 9(2) VALUE 03. 11490000 115000 09 AGE-COMPUTATION-DAY 11500000 115100 PIC 9(2) VALUE 01. 11510000 115200 07 QUARTER-TYPE-TERM-FLAG 11520000 115300 PIC 9 VALUE 1. 11530000 115400 07 EFFECTIVE-DATES. 11540000 115500 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11550000 115600 09 END-DATE PIC 9(6) VALUE 999999. 11560000 115700 05 SUMMER-TERM. 11570000 115800 07 TERM-CODE PIC X(1) VALUE '5'. 11580000 115900 07 TERM-NAME PIC X(19) VALUE 'SUMMER TERM'. 11590000 116000 07 BIRTH-COMPUTATION-DATE. 11600000 116100 09 AGE-COMPUTATION-MONTH 11610000 116200 PIC 9(2) VALUE 07. 11620000 116300 09 AGE-COMPUTATION-DAY 11630000 116400 PIC 9(2) VALUE 01. 11640000 116500 07 QUARTER-TYPE-TERM-FLAG 11650000 116600 PIC 9 VALUE ZERO. 11660000 116700 07 EFFECTIVE-DATES. 11670000 116800 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11680000 116900 09 END-DATE PIC 9(6) VALUE 999999. 11690000 117000 05 SUMMER-QUARTER. 11700000 117100 07 TERM-CODE PIC X(1) VALUE '6'. 11710000 117200 07 TERM-NAME PIC X(19) 11720000 117300 VALUE 'SUMMER QUARTER'. 11730000 117400 07 BIRTH-COMPUTATION-DATE. 11740000 117500 09 AGE-COMPUTATION-MONTH 11750000 117600 PIC 9(2) VALUE 07. 11760000 117700 09 AGE-COMPUTATION-DAY 11770000 117800 PIC 9(2) VALUE 01. 11780000 117900 07 QUARTER-TYPE-TERM-FLAG 11790000 118000 PIC 9 VALUE 1. 11800000 118100 07 EFFECTIVE-DATES. 11810000 118200 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11820000 118300 09 END-DATE PIC 9(6) VALUE 999999. 11830000 118400 05 FALL-SEMESTER. 11840000 118500 07 TERM-CODE PIC X(1) VALUE '7'. 11850000 118600 07 TERM-NAME PIC X(19) 11860000 118700 VALUE 'FALL SEMESTER'. 11870000 118800 07 BIRTH-COMPUTATION-DATE. 11880000 118900 09 AGE-COMPUTATION-MONTH 11890000 119000 PIC 9(2) VALUE 10. 11900000 119100 09 AGE-COMPUTATION-DAY 11910000 119200 PIC 9(2) VALUE 15. 11920000 119300 07 QUARTER-TYPE-TERM-FLAG 11930000 119400 PIC 9 VALUE ZERO. 11940000 119500 07 EFFECTIVE-DATES. 11950000 119600 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 11960000 119700 09 END-DATE PIC 9(6) VALUE 999999. 11970000 119800 05 FALL-QUARTER. 11980000 119900 07 TERM-CODE PIC X(1) VALUE '8'. 11990000 120000 07 TERM-NAME PIC X(19) VALUE 'FALL QUARTER'. 12000000 120100 07 BIRTH-COMPUTATION-DATE. 12010000 120200 09 AGE-COMPUTATION-MONTH 12020000 120300 PIC 9(2) VALUE 10. 12030000 120400 09 AGE-COMPUTATION-DAY 12040000 120500 PIC 9(2) VALUE 15. 12050000 120600 07 QUARTER-TYPE-TERM-FLAG 12060000 120700 PIC 9 VALUE 1. 12070000 120800 07 EFFECTIVE-DATES. 12080000 120900 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 12090000 121000 09 END-DATE PIC 9(6) VALUE 999999. 12100000 121100 05 NONE-ABOVE. 12110000 121200 07 TERM-CODE PIC X(1) VALUE '9'. 12120000 121300 07 TERM-NAME PIC X(19) VALUE 'OTHER'. 12130000 121400 07 BIRTH-COMPUTATION-DATE. 12140000 121500 09 AGE-COMPUTATION-MONTH 12150000 121600 PIC 9(2) VALUE 10. 12160000 121700 09 AGE-COMPUTATION-DAY 12170000 121800 PIC 9(2) VALUE 15. 12180000 121900 07 QUARTER-TYPE-TERM-FLAG 12190000 122000 PIC 9 VALUE ZERO. 12200000 122100 07 EFFECTIVE-DATES. 12210000 122200 09 BEGIN-DATE PIC 9(6) VALUE ZEROES. 12220000 122300 09 END-DATE PIC 9(6) VALUE 999999. 12230000 122400 03 TERM-IDENTIFIER-ENTRY 12240000 122500 REDEFINES TERM-IDENTIFIER-ENTRIES 12250000 122600 OCCURS 10 TIMES 12260000 122700 INDEXED BY TERM-IDENTIFIER-INDEX. 12270000 122800 05 TERM-CODE PIC X(1). 12280000 122900 05 TERM-NAME PIC X(19). 12290000 123000 05 BIRTH-COMPUTATION-DATE. 12300000 123100 07 AGE-COMPUTATION-MONTH 12310000 123200 PIC 9(2). 12320000 123300 07 AGE-COMPUTATION-DAY 12330000 123400 PIC 9(2). 12340000 123500 05 QUARTER-TYPE-TERM-FLAG 12350000 123600 PIC 9. 12360000 123700 88 TERM-IS-A-QUARTER VALUE 1. 12370000 123800 05 EFFECTIVE-DATES. 12380000 123900 07 BEGIN-DATE PIC 9(6). 12390000 124000 07 END-DATE PIC 9(6). 12400000 124100* 12410000 124200* 12420000 124300 01 DISTRICT-CODE-TABLE. 12430000 124400* 12440000 124500* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 12450000 124600* * 12460000 124700* D I S T R I C T C O D E T A B L E * 12470000 124800* * 12480000 124900* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 12490000 125000* 12500000 125100 03 DISTRICT-CODE-VALUES. 12510000 125200 05 ALLAN-HANCOCK. 12520000 125300 07 DISTRICT-CODE PIC 9(5) VALUE 69096. 12530000 125400 07 DISTRICT-ID PIC 9(3) VALUE 610. 12540000 125500 07 DISTRICT-NAME PIC X(30) 12550000 125600 VALUE 'ALLAN HANCOCK DISTRICT'. 12560000 125700 07 CPEC-DISTRICT-CODE 12570000 125800 PIC X(6) VALUE 'C9001A'. 12580000 125900 07 SINGLE-COLLEGE-FLAG 12590000 126000 PIC 9 VALUE 1. 12600000 126100 05 ANTELOPE-VALLEY. 12610000 126200 07 DISTRICT-CODE PIC 9(5) VALUE 64253. 12620000 126300 07 DISTRICT-ID PIC 9(3) VALUE 620. 12630000 126400 07 DISTRICT-NAME PIC X(30) 12640000 126500 VALUE 'ANTELOPE VALLEY DISTRICT'. 12650000 126600 07 CPEC-DISTRICT-CODE 12660000 126700 PIC X(6) VALUE 'C9002A'. 12670000 126800 07 SINGLE-COLLEGE-FLAG 12680000 126900 PIC 9 VALUE 1. 12690000 127000 05 BARSTOW. 12700000 127100 07 DISTRICT-CODE PIC 9(5) VALUE 67629. 12710000 127200 07 DISTRICT-ID PIC 9(3) VALUE 910. 12720000 127300 07 DISTRICT-NAME PIC X(30) 12730000 127400 VALUE 'BARSTOW DISTRICT'. 12740000 127500 07 CPEC-DISTRICT-CODE 12750000 127600 PIC X(6) VALUE 'C9003A'. 12760000 127700 07 SINGLE-COLLEGE-FLAG 12770000 127800 PIC 9 VALUE 1. 12780000 127900 05 BUTTE. 12790000 128000 07 DISTRICT-CODE PIC 9(5) VALUE 61416. 12800000 128100 07 DISTRICT-ID PIC 9(3) VALUE 110. 12810000 128200 07 DISTRICT-NAME PIC X(30) 12820000 128300 VALUE 'BUTTE DISTRICT'. 12830000 128400 07 CPEC-DISTRICT-CODE 12840000 128500 PIC X(6) VALUE 'C9004A'. 12850000 128600 07 SINGLE-COLLEGE-FLAG 12860000 128700 PIC 9 VALUE 1. 12870000 128800 05 CABRILLO. 12880000 128900 07 DISTRICT-CODE PIC 9(5) VALUE 69740. 12890000 129000 07 DISTRICT-ID PIC 9(3) VALUE 410. 12900000 129100 07 DISTRICT-NAME PIC X(30) 12910000 129200 VALUE 'CABRILLO DISTRICT'. 12920000 129300 07 CPEC-DISTRICT-CODE 12930000 129400 PIC X(6) VALUE 'C9005A'. 12940000 129500 07 SINGLE-COLLEGE-FLAG 12950000 129600 PIC 9 VALUE 1. 12960000 129700 05 CERRITOS. 12970000 129800 07 DISTRICT-CODE PIC 9(5) VALUE 64360. 12980000 129900 07 DISTRICT-ID PIC 9(3) VALUE 810. 12990000 130000 07 DISTRICT-NAME PIC X(30) 13000000 130100 VALUE 'CERRITOS DISTRICT'. 13010000 130200 07 CPEC-DISTRICT-CODE 13020000 130300 PIC X(6) VALUE 'C9006A'. 13030000 130400 07 SINGLE-COLLEGE-FLAG 13040000 130500 PIC 9 VALUE 1. 13050000 130600 05 CHAFFEY. 13060000 130700 07 DISTRICT-CODE PIC 9(5) VALUE 67660. 13070000 130800 07 DISTRICT-ID PIC 9(3) VALUE 920. 13080000 130900 07 DISTRICT-NAME PIC X(30) 13090000 131000 VALUE 'CHAFFEY DISTRICT'. 13100000 131100 07 CPEC-DISTRICT-CODE 13110000 131200 PIC X(6) VALUE 'C9007A'. 13120000 131300 07 SINGLE-COLLEGE-FLAG 13130000 131400 PIC 9 VALUE 1. 13140000 131500 05 CITRUS. 13150000 131600 07 DISTRICT-CODE PIC 9(5) VALUE 64386. 13160000 131700 07 DISTRICT-ID PIC 9(3) VALUE 820. 13170000 131800 07 DISTRICT-NAME PIC X(30) 13180000 131900 VALUE 'CITRUS DISTRICT'. 13190000 132000 07 CPEC-DISTRICT-CODE 13200000 132100 PIC X(6) VALUE 'C9008A'. 13210000 132200 07 SINGLE-COLLEGE-FLAG 13220000 132300 PIC 9 VALUE 1. 13230000 132400 05 DESERT. 13240000 132500 07 DISTRICT-CODE PIC 9(5) VALUE 67025. 13250000 132600 07 DISTRICT-ID PIC 9(3) VALUE 930. 13260000 132700 07 DISTRICT-NAME PIC X(30) 13270000 132800 VALUE 'DESERT DISTRICT'. 13280000 132900 07 CPEC-DISTRICT-CODE 13290000 133000 PIC X(6) VALUE 'C9009A'. 13300000 133100 07 SINGLE-COLLEGE-FLAG 13310000 133200 PIC 9 VALUE 1. 13320000 133300 05 COAST-DISTRICT. 13330000 133400 07 DISTRICT-CODE PIC 9(5) VALUE 66639. 13340000 133500 07 DISTRICT-ID PIC 9(3) VALUE 830. 13350000 133600 07 DISTRICT-NAME PIC X(30) 13360000 133700 VALUE 'COAST DISTRICT'. 13370000 133800 07 CPEC-DISTRICT-CODE 13380000 133900 PIC X(6) VALUE 'C9010A'. 13390000 134000 07 SINGLE-COLLEGE-FLAG 13400000 134100 PIC 9 VALUE ZERO. 13410000 134200 05 COMPTON. 13420000 134300 07 DISTRICT-CODE PIC 9(5) VALUE 64428. 13430000 134400 07 DISTRICT-ID PIC 9(3) VALUE 710. 13440000 134500 07 DISTRICT-NAME PIC X(30) 13450000 134600 VALUE 'COMPTON DISTRICT'. 13460000 134700 07 CPEC-DISTRICT-CODE 13470000 134800 PIC X(6) VALUE 'C9011A'. 13480000 134900 07 SINGLE-COLLEGE-FLAG 13490000 135000 PIC 9 VALUE 1. 13500000 135100 05 CONTRA-COSTA. 13510000 135200 07 DISTRICT-CODE PIC 9(5) VALUE 61689. 13520000 135300 07 DISTRICT-ID PIC 9(3) VALUE 310. 13530000 135400 07 DISTRICT-NAME PIC X(30) 13540000 135500 VALUE 'CONTRA COSTA DISTRICT'. 13550000 135600 07 CPEC-DISTRICT-CODE 13560000 135700 PIC X(6) VALUE 'C9012A'. 13570000 135800 07 SINGLE-COLLEGE-FLAG 13580000 135900 PIC 9 VALUE ZERO. 13590000 136000 05 EL-CAMINO. 13600000 136100 07 DISTRICT-CODE PIC 9(5) VALUE 64493. 13610000 136200 07 DISTRICT-ID PIC 9(3) VALUE 720. 13620000 136300 07 DISTRICT-NAME PIC X(30) 13630000 136400 VALUE 'EL CAMINO DISTRICT'. 13640000 136500 07 CPEC-DISTRICT-CODE 13650000 136600 PIC X(6) VALUE 'C9013A'. 13660000 136700 07 SINGLE-COLLEGE-FLAG 13670000 136800 PIC 9 VALUE 1. 13680000 136900 05 FEATHER-RIVER. 13690000 137000 07 DISTRICT-CODE PIC 9(5) VALUE 75143. 13700000 137100 07 DISTRICT-ID PIC 9(3) VALUE 120. 13710000 137200 07 DISTRICT-NAME PIC X(30) 13720000 137300 VALUE 'FEATHER RIVER DISTRICT'. 13730000 137400 07 CPEC-DISTRICT-CODE 13740000 137500 PIC X(6) VALUE 'C9071A'. 13750000 137600 07 SINGLE-COLLEGE-FLAG 13760000 137700 PIC 9 VALUE 1. 13770000 137800 05 FOOTHILL-DISTRICT. 13780000 137900 07 DISTRICT-CODE PIC 9(5) VALUE 69443. 13790000 138000 07 DISTRICT-ID PIC 9(3) VALUE 420. 13800000 138100 07 DISTRICT-NAME PIC X(30) 13810000 138200 VALUE 'FOOTHILL DISTRICT'. 13820000 138300 07 CPEC-DISTRICT-CODE 13830000 138400 PIC X(6) VALUE 'C9014A'. 13840000 138500 07 SINGLE-COLLEGE-FLAG 13850000 138600 PIC 9 VALUE ZERO. 13860000 138700 05 FREMONT-NEWARK. 13870000 138800 07 DISTRICT-CODE PIC 9(5) VALUE 61184. 13880000 138900 07 DISTRICT-ID PIC 9(3) VALUE 430. 13890000 139000 07 DISTRICT-NAME PIC X(30) 13900000 139100 VALUE 'FREMONT-NEWARK DISTRICT'. 13910000 139200 07 CPEC-DISTRICT-CODE 13920000 139300 PIC X(6) VALUE 'C9015A'. 13930000 139400 07 SINGLE-COLLEGE-FLAG 13940000 139500 PIC 9 VALUE 1. 13950000 139600 05 GAVILAN. 13960000 139700 07 DISTRICT-CODE PIC 9(5) VALUE 69476. 13970000 139800 07 DISTRICT-ID PIC 9(3) VALUE 440. 13980000 139900 07 DISTRICT-NAME PIC X(30) 13990000 140000 VALUE 'GAVILAN DISTRICT'. 14000000 140100 07 CPEC-DISTRICT-CODE 14010000 140200 PIC X(6) VALUE 'C9016A'. 14020000 140300 07 SINGLE-COLLEGE-FLAG 14030000 140400 PIC 9 VALUE 1. 14040000 140500 05 GLENDALE. 14050000 140600 07 DISTRICT-CODE PIC 9(5) VALUE 73486. 14060000 140700 07 DISTRICT-ID PIC 9(3) VALUE 730. 14070000 140800 07 DISTRICT-NAME PIC X(30) 14080000 140900 VALUE 'GLENDALE DISTRICT'. 14090000 141000 07 CPEC-DISTRICT-CODE 14100000 141100 PIC X(6) VALUE 'C9017A'. 14110000 141200 07 SINGLE-COLLEGE-FLAG 14120000 141300 PIC 9 VALUE 1. 14130000 141400 05 GROSSMONT. 14140000 141500 07 DISTRICT-CODE PIC 9(5) VALUE 68148. 14150000 141600 07 DISTRICT-ID PIC 9(3) VALUE 020. 14160000 141700 07 DISTRICT-NAME PIC X(30) 14170000 141800 VALUE 'GROSSMONT DISTRICT'. 14180000 141900 07 CPEC-DISTRICT-CODE 14190000 142000 PIC X(6) VALUE 'C9018A'. 14200000 142100 07 SINGLE-COLLEGE-FLAG 14210000 142200 PIC 9 VALUE ZERO. 14220000 142300 05 HARTNELL. 14230000 142400 07 DISTRICT-CODE PIC 9(5) VALUE 66043. 14240000 142500 07 DISTRICT-ID PIC 9(3) VALUE 450. 14250000 142600 07 DISTRICT-NAME PIC X(30) 14260000 142700 VALUE 'HARTNELL DISTRICT'. 14270000 142800 07 CPEC-DISTRICT-CODE 14280000 142900 PIC X(6) VALUE 'C9019A'. 14290000 143000 07 SINGLE-COLLEGE-FLAG 14300000 143100 PIC 9 VALUE 1. 14310000 143200 05 IMPERIAL. 14320000 143300 07 DISTRICT-CODE PIC 9(5) VALUE 63156. 14330000 143400 07 DISTRICT-ID PIC 9(3) VALUE 030. 14340000 143500 07 DISTRICT-NAME PIC X(30) 14350000 143600 VALUE 'IMPERIAL DISTRICT'. 14360000 143700 07 CPEC-DISTRICT-CODE 14370000 143800 PIC X(6) VALUE 'C9020A'. 14380000 143900 07 SINGLE-COLLEGE-FLAG 14390000 144000 PIC 9 VALUE 1. 14400000 144100 05 KERN-DISTRICT. 14410000 144200 07 DISTRICT-CODE PIC 9(5) VALUE 63537. 14420000 144300 07 DISTRICT-ID PIC 9(3) VALUE 520. 14430000 144400 07 DISTRICT-NAME PIC X(30) 14440000 144500 VALUE 'KERN DISTRICT'. 14450000 144600 07 CPEC-DISTRICT-CODE 14460000 144700 PIC X(6) VALUE 'C9021A'. 14470000 144800 07 SINGLE-COLLEGE-FLAG 14480000 144900 PIC 9 VALUE ZERO. 14490000 145000 05 LAKE-TAHOE. 14500000 145100 07 DISTRICT-CODE PIC 9(5) VALUE 73775. 14510000 145200 07 DISTRICT-ID PIC 9(3) VALUE 220. 14520000 145300 07 DISTRICT-NAME PIC X(30) 14530000 145400 VALUE 'LAKE TAHOE DISTRICT'. 14540000 145500 07 CPEC-DISTRICT-CODE 14550000 145600 PIC X(6) VALUE 'C9022A'. 14560000 145700 07 SINGLE-COLLEGE-FLAG 14570000 145800 PIC 9 VALUE 1. 14580000 145900 05 LASSEN. 14590000 146000 07 DISTRICT-CODE PIC 9(5) VALUE 64147. 14600000 146100 07 DISTRICT-ID PIC 9(3) VALUE 130. 14610000 146200 07 DISTRICT-NAME PIC X(30) 14620000 146300 VALUE 'LASSEN DISTRICT'. 14630000 146400 07 CPEC-DISTRICT-CODE 14640000 146500 PIC X(6) VALUE 'C9023A'. 14650000 146600 07 SINGLE-COLLEGE-FLAG 14660000 146700 PIC 9 VALUE 1. 14670000 146800 05 LONG-BEACH. 14680000 146900 07 DISTRICT-CODE PIC 9(5) VALUE 73494. 14690000 147000 07 DISTRICT-ID PIC 9(3) VALUE 840. 14700000 147100 07 DISTRICT-NAME PIC X(30) 14710000 147200 VALUE 'LONG BEACH DISTRICT'. 14720000 147300 07 CPEC-DISTRICT-CODE 14730000 147400 PIC X(6) VALUE 'C9024A'. 14740000 147500 07 SINGLE-COLLEGE-FLAG 14750000 147600 PIC 9 VALUE 1. 14760000 147700 05 LOS-ANGELES. 14770000 147800 07 DISTRICT-CODE PIC 9(5) VALUE 64741. 14780000 147900 07 DISTRICT-ID PIC 9(3) VALUE 740. 14790000 148000 07 DISTRICT-NAME PIC X(30) 14800000 148100 VALUE 'LOS ANGELES DISTRICT'. 14810000 148200 07 CPEC-DISTRICT-CODE 14820000 148300 PIC X(6) VALUE 'C9025A'. 14830000 148400 07 SINGLE-COLLEGE-FLAG 14840000 148500 PIC 9 VALUE ZERO. 14850000 148600 05 LOS-RIOS. 14860000 148700 07 DISTRICT-CODE PIC 9(5) VALUE 67371. 14870000 148800 07 DISTRICT-ID PIC 9(3) VALUE 230. 14880000 148900 07 DISTRICT-NAME PIC X(30) 14890000 149000 VALUE 'LOS RIOS DISTRICT'. 14900000 149100 07 CPEC-DISTRICT-CODE 14910000 149200 PIC X(6) VALUE 'C9026A'. 14920000 149300 07 SINGLE-COLLEGE-FLAG 14930000 149400 PIC 9 VALUE ZERO. 14940000 149500 05 MARIN-DISTRICT. 14950000 149600 07 DISTRICT-CODE PIC 9(5) VALUE 65383. 14960000 149700 07 DISTRICT-ID PIC 9(3) VALUE 330. 14970000 149800 07 DISTRICT-NAME PIC X(30) 14980000 149900 VALUE 'MARIN DISTRICT'. 14990000 150000 07 CPEC-DISTRICT-CODE 15000000 150100 PIC X(6) VALUE 'C9027A'. 15010000 150200 07 SINGLE-COLLEGE-FLAG 15020000 150300 PIC 9 VALUE ZERO. 15030000 150400 05 MENDOCINO. 15040000 150500 07 DISTRICT-CODE PIC 9(5) VALUE 73718. 15050000 150600 07 DISTRICT-ID PIC 9(3) VALUE 140. 15060000 150700 07 DISTRICT-NAME PIC X(30) 15070000 150800 VALUE 'MENDOCINO DISTRICT'. 15080000 150900 07 CPEC-DISTRICT-CODE 15090000 151000 PIC X(6) VALUE 'C9028A'. 15100000 151100 07 SINGLE-COLLEGE-FLAG 15110000 151200 PIC 9 VALUE 1. 15120000 151300 05 MERCED. 15130000 151400 07 DISTRICT-CODE PIC 9(5) VALUE 65797. 15140000 151500 07 DISTRICT-ID PIC 9(3) VALUE 530. 15150000 151600 07 DISTRICT-NAME PIC X(30) 15160000 151700 VALUE 'MERCED DISTRICT'. 15170000 151800 07 CPEC-DISTRICT-CODE 15180000 151900 PIC X(6) VALUE 'C9029A'. 15190000 152000 07 SINGLE-COLLEGE-FLAG 15200000 152100 PIC 9 VALUE 1. 15210000 152200 05 MIRA-COSTA. 15220000 152300 07 DISTRICT-CODE PIC 9(5) VALUE 68247. 15230000 152400 07 DISTRICT-ID PIC 9(3) VALUE 050. 15240000 152500 07 DISTRICT-NAME PIC X(30) 15250000 152600 VALUE 'MIRA COSTA DISTRICT'. 15260000 152700 07 CPEC-DISTRICT-CODE 15270000 152800 PIC X(6) VALUE 'C9030A'. 15280000 152900 07 SINGLE-COLLEGE-FLAG 15290000 153000 PIC 9 VALUE 1. 15300000 153100 05 MONTEREY-PENINSULA. 15310000 153200 07 DISTRICT-CODE PIC 9(5) VALUE 66100. 15320000 153300 07 DISTRICT-ID PIC 9(3) VALUE 460. 15330000 153400 07 DISTRICT-NAME PIC X(30) 15340000 153500 VALUE 'MONTEREY PENINSULA DIST'. 15350000 153600 07 CPEC-DISTRICT-CODE 15360000 153700 PIC X(6) VALUE 'C9031A'. 15370000 153800 07 SINGLE-COLLEGE-FLAG 15380000 153900 PIC 9 VALUE 1. 15390000 154000 05 MT-SAN-ANTONIO. 15400000 154100 07 DISTRICT-CODE PIC 9(5) VALUE 64824. 15410000 154200 07 DISTRICT-ID PIC 9(3) VALUE 850. 15420000 154300 07 DISTRICT-NAME PIC X(30) 15430000 154400 VALUE 'MT. SAN ANTONIO DISTRICT'. 15440000 154500 07 CPEC-DISTRICT-CODE 15450000 154600 PIC X(6) VALUE 'C9032A'. 15460000 154700 07 SINGLE-COLLEGE-FLAG 15470000 154800 PIC 9 VALUE 1. 15480000 154900 05 MT-SAN-JACINTO. 15490000 155000 07 DISTRICT-CODE PIC 9(5) VALUE 67132. 15500000 155100 07 DISTRICT-ID PIC 9(3) VALUE 940. 15510000 155200 07 DISTRICT-NAME PIC X(30) 15520000 155300 VALUE 'MT. SAN JACINTO DISTRICT'. 15530000 155400 07 CPEC-DISTRICT-CODE 15540000 155500 PIC X(6) VALUE 'C9033A'. 15550000 155600 07 SINGLE-COLLEGE-FLAG 15560000 155700 PIC 9 VALUE 1. 15570000 155800 05 NAPA. 15580000 155900 07 DISTRICT-CODE PIC 9(5) VALUE 66274. 15590000 156000 07 DISTRICT-ID PIC 9(3) VALUE 240. 15600000 156100 07 DISTRICT-NAME PIC X(30) 15610000 156200 VALUE 'NAPA VALLEY DISTRICT'. 15620000 156300 07 CPEC-DISTRICT-CODE 15630000 156400 PIC X(6) VALUE 'C9034A'. 15640000 156500 07 SINGLE-COLLEGE-FLAG 15650000 156600 PIC 9 VALUE 1. 15660000 156700 05 NORTH-ORANGE. 15670000 156800 07 DISTRICT-CODE PIC 9(5) VALUE 66605. 15680000 156900 07 DISTRICT-ID PIC 9(3) VALUE 860. 15690000 157000 07 DISTRICT-NAME PIC X(30) 15700000 157100 VALUE 'NORTH ORANGE DISTRICT'. 15710000 157200 07 CPEC-DISTRICT-CODE 15720000 157300 PIC X(6) VALUE 'C9035A'. 15730000 157400 07 SINGLE-COLLEGE-FLAG 15740000 157500 PIC 9 VALUE ZERO. 15750000 157600 05 PALOMAR. 15760000 157700 07 DISTRICT-CODE PIC 9(5) VALUE 68270. 15770000 157800 07 DISTRICT-ID PIC 9(3) VALUE 060. 15780000 157900 07 DISTRICT-NAME PIC X(30) 15790000 158000 VALUE 'PALOMAR DISTRICT'. 15800000 158100 07 CPEC-DISTRICT-CODE 15810000 158200 PIC X(6) VALUE 'C9037A'. 15820000 158300 07 SINGLE-COLLEGE-FLAG 15830000 158400 PIC 9 VALUE 1. 15840000 158500 05 PALO-VERDE. 15850000 158600 07 DISTRICT-CODE PIC 9(5) VALUE 73510. 15860000 158700 07 DISTRICT-ID PIC 9(3) VALUE 950. 15870000 158800 07 DISTRICT-NAME PIC X(30) 15880000 158900 VALUE 'PALO VERDE DISTRICT'. 15890000 159000 07 CPEC-DISTRICT-CODE 15900000 159100 PIC X(6) VALUE 'C9036A'. 15910000 159200 07 SINGLE-COLLEGE-FLAG 15920000 159300 PIC 9 VALUE 1. 15930000 159400 05 PASADENA-AREA. 15940000 159500 07 DISTRICT-CODE PIC 9(5) VALUE 64899. 15950000 159600 07 DISTRICT-ID PIC 9(3) VALUE 770. 15960000 159700 07 DISTRICT-NAME PIC X(30) 15970000 159800 VALUE 'PASADENA AREA DISTRICT'. 15980000 159900 07 CPEC-DISTRICT-CODE 15990000 160000 PIC X(6) VALUE 'C9038A'. 16000000 160100 07 SINGLE-COLLEGE-FLAG 16010000 160200 PIC 9 VALUE 1. 16020000 160300 05 PERALTA. 16030000 160400 07 DISTRICT-CODE PIC 9(5) VALUE 61267. 16040000 160500 07 DISTRICT-ID PIC 9(3) VALUE 340. 16050000 160600 07 DISTRICT-NAME PIC X(30) 16060000 160700 VALUE 'PERALTA DISTRICT'. 16070000 160800 07 CPEC-DISTRICT-CODE 16080000 160900 PIC X(6) VALUE 'C9039A'. 16090000 161000 07 SINGLE-COLLEGE-FLAG 16100000 161100 PIC 9 VALUE ZERO. 16110000 161200 05 RANCHO-SANTIAGO. 16120000 161300 07 DISTRICT-CODE PIC 9(5) VALUE 66688. 16130000 161400 07 DISTRICT-ID PIC 9(3) VALUE 870. 16140000 161500 07 DISTRICT-NAME PIC X(30) 16150000 161600 VALUE 'RANCHO SANTIAGO DISTRICT'. 16160000 161700 07 CPEC-DISTRICT-CODE 16170000 161800 PIC X(6) VALUE 'C9040A'. 16180000 161900 07 SINGLE-COLLEGE-FLAG 16190000 162000 PIC 9 VALUE ZERO. 16200000 162100 05 REDWOODS. 16210000 162200 07 DISTRICT-CODE PIC 9(5) VALUE 62992. 16220000 162300 07 DISTRICT-ID PIC 9(3) VALUE 160. 16230000 162400 07 DISTRICT-NAME PIC X(30) 16240000 162500 VALUE 'REDWOODS DISTRICT'. 16250000 162600 07 CPEC-DISTRICT-CODE 16260000 162700 PIC X(6) VALUE 'C9041A'. 16270000 162800 07 SINGLE-COLLEGE-FLAG 16280000 162900 PIC 9 VALUE 1. 16290000 163000 05 RIO-HONDO. 16300000 163100 07 DISTRICT-CODE PIC 9(5) VALUE 64923. 16310000 163200 07 DISTRICT-ID PIC 9(3) VALUE 880. 16320000 163300 07 DISTRICT-NAME PIC X(30) 16330000 163400 VALUE 'RIO HONDO DISTRICT'. 16340000 163500 07 CPEC-DISTRICT-CODE 16350000 163600 PIC X(6) VALUE 'C9042A'. 16360000 163700 07 SINGLE-COLLEGE-FLAG 16370000 163800 PIC 9 VALUE 1. 16380000 163900 05 RIVERSIDE. 16390000 164000 07 DISTRICT-CODE PIC 9(5) VALUE 67223. 16400000 164100 07 DISTRICT-ID PIC 9(3) VALUE 960. 16410000 164200 07 DISTRICT-NAME PIC X(30) 16420000 164300 VALUE 'RIVERSIDE DISTRICT'. 16430000 164400 07 CPEC-DISTRICT-CODE 16440000 164500 PIC X(6) VALUE 'C9043A'. 16450000 164600 07 SINGLE-COLLEGE-FLAG 16460000 164700 PIC 9 VALUE 1. 16470000 164800 05 SOUTH-ORANGE. 16480000 164900 07 DISTRICT-CODE PIC 9(5) VALUE 66654. 16490000 165000 07 DISTRICT-ID PIC 9(3) VALUE 890. 16500000 165100 07 DISTRICT-NAME PIC X(30) 16510000 165200 VALUE 'SOUTH ORANGE COUNTY DISTRICT'. 16520000 165300 07 CPEC-DISTRICT-CODE 16530000 165400 PIC X(6) VALUE 'C9044A'. 16540000 165500 07 SINGLE-COLLEGE-FLAG 16550000 165600 PIC 9 VALUE ZERO. 16560000 165700 05 SAN-BERNARDINO. 16570000 165800 07 DISTRICT-CODE PIC 9(5) VALUE 67884. 16580000 165900 07 DISTRICT-ID PIC 9(3) VALUE 980. 16590000 166000 07 DISTRICT-NAME PIC X(30) 16600000 166100 VALUE 'SAN BERNARDINO DISTRICT'. 16610000 166200 07 CPEC-DISTRICT-CODE 16620000 166300 PIC X(6) VALUE 'C9045A'. 16630000 166400 07 SINGLE-COLLEGE-FLAG 16640000 166500 PIC 9 VALUE ZERO. 16650000 166600 05 SAN-DIEGO. 16660000 166700 07 DISTRICT-CODE PIC 9(5) VALUE 73528. 16670000 166800 07 DISTRICT-ID PIC 9(3) VALUE 070. 16680000 166900 07 DISTRICT-NAME PIC X(30) 16690000 167000 VALUE 'SAN DIEGO DISTRICT'. 16700000 167100 07 CPEC-DISTRICT-CODE 16710000 167200 PIC X(6) VALUE 'C9046A'. 16720000 167300 07 SINGLE-COLLEGE-FLAG 16730000 167400 PIC 9 VALUE ZERO. 16740000 167500 05 SAN-FRANCISCO. 16750000 167600 07 DISTRICT-CODE PIC 9(5) VALUE 73536. 16760000 167700 07 DISTRICT-ID PIC 9(3) VALUE 360. 16770000 167800 07 DISTRICT-NAME PIC X(30) 16780000 167900 VALUE 'SAN FRANCISCO DISTRICT'. 16790000 168000 07 CPEC-DISTRICT-CODE 16800000 168100 PIC X(6) VALUE 'C9047A'. 16810000 168200 07 SINGLE-COLLEGE-FLAG 16820000 168300 PIC 9 VALUE ZERO. 16830000 168400 05 SAN-JOAQUIN-DELTA. 16840000 168500 07 DISTRICT-CODE PIC 9(5) VALUE 68668. 16850000 168600 07 DISTRICT-ID PIC 9(3) VALUE 550. 16860000 168700 07 DISTRICT-NAME PIC X(30) 16870000 168800 VALUE 'SAN JOAQUIN DELTA DIST'. 16880000 168900 07 CPEC-DISTRICT-CODE 16890000 169000 PIC X(6) VALUE 'C9048A'. 16900000 169100 07 SINGLE-COLLEGE-FLAG 16910000 169200 PIC 9 VALUE 1. 16920000 169300 05 SAN-JOSE. 16930000 169400 07 DISTRICT-CODE PIC 9(5) VALUE 69658. 16940000 169500 07 DISTRICT-ID PIC 9(3) VALUE 470. 16950000 169600 07 DISTRICT-NAME PIC X(30) 16960000 169700 VALUE 'SAN JOSE/EVERGREEN DIST'. 16970000 169800 07 CPEC-DISTRICT-CODE 16980000 169900 PIC X(6) VALUE 'C9049A'. 16990000 170000 07 SINGLE-COLLEGE-FLAG 17000000 170100 PIC 9 VALUE ZERO. 17010000 170200 05 SAN-LUIS-OBISPO. 17020000 170300 07 DISTRICT-CODE PIC 9(5) VALUE 68817. 17030000 170400 07 DISTRICT-ID PIC 9(3) VALUE 640. 17040000 170500 07 DISTRICT-NAME PIC X(30) 17050000 170600 VALUE 'SAN LUIS OBISPO DISTRICT'. 17060000 170700 07 CPEC-DISTRICT-CODE 17070000 170800 PIC X(6) VALUE 'C9050A'. 17080000 170900 07 SINGLE-COLLEGE-FLAG 17090000 171000 PIC 9 VALUE 1. 17100000 171100 05 SAN-MATEO. 17110000 171200 07 DISTRICT-CODE PIC 9(5) VALUE 69054. 17120000 171300 07 DISTRICT-ID PIC 9(3) VALUE 370. 17130000 171400 07 DISTRICT-NAME PIC X(30) 17140000 171500 VALUE 'SAN MATEO DISTRICT'. 17150000 171600 07 CPEC-DISTRICT-CODE 17160000 171700 PIC X(6) VALUE 'C9051A'. 17170000 171800 07 SINGLE-COLLEGE-FLAG 17180000 171900 PIC 9 VALUE ZERO. 17190000 172000 05 SANTA-BARBARA. 17200000 172100 07 DISTRICT-CODE PIC 9(5) VALUE 69294. 17210000 172200 07 DISTRICT-ID PIC 9(3) VALUE 650. 17220000 172300 07 DISTRICT-NAME PIC X(30) 17230000 172400 VALUE 'SANTA BARBARA DISTRICT'. 17240000 172500 07 CPEC-DISTRICT-CODE 17250000 172600 PIC X(6) VALUE 'C9052A'. 17260000 172700 07 SINGLE-COLLEGE-FLAG 17270000 172800 PIC 9 VALUE 1. 17280000 172900 05 SANTA-CLARITA. 17290000 173000 07 DISTRICT-CODE PIC 9(5) VALUE 64972. 17300000 173100 07 DISTRICT-ID PIC 9(3) VALUE 660. 17310000 173200 07 DISTRICT-NAME PIC X(30) 17320000 173300 VALUE 'SANTA CLARITA DISTRICT'. 17330000 173400 07 CPEC-DISTRICT-CODE 17340000 173500 PIC X(6) VALUE 'C9053A'. 17350000 173600 07 SINGLE-COLLEGE-FLAG 17360000 173700 PIC 9 VALUE 1. 17370000 173800 05 SANTA-MONICA. 17380000 173900 07 DISTRICT-CODE PIC 9(5) VALUE 73502. 17390000 174000 07 DISTRICT-ID PIC 9(3) VALUE 780. 17400000 174100 07 DISTRICT-NAME PIC X(30) 17410000 174200 VALUE 'SANTA MONICA DISTRICT'. 17420000 174300 07 CPEC-DISTRICT-CODE 17430000 174400 PIC X(6) VALUE 'C9054A'. 17440000 174500 07 SINGLE-COLLEGE-FLAG 17450000 174600 PIC 9 VALUE 1. 17460000 174700 05 SEQUOIAS. 17470000 174800 07 DISTRICT-CODE PIC 9(5) VALUE 72124. 17480000 174900 07 DISTRICT-ID PIC 9(3) VALUE 560. 17490000 175000 07 DISTRICT-NAME PIC X(30) 17500000 175100 VALUE 'SEQUOIAS DISTRICT'. 17510000 175200 07 CPEC-DISTRICT-CODE 17520000 175300 PIC X(6) VALUE 'C9055A'. 17530000 175400 07 SINGLE-COLLEGE-FLAG 17540000 175500 PIC 9 VALUE 1. 17550000 175600 05 SHASTA-TE-TR. 17560000 175700 07 DISTRICT-CODE PIC 9(5) VALUE 70144. 17570000 175800 07 DISTRICT-ID PIC 9(3) VALUE 170. 17580000 175900 07 DISTRICT-NAME PIC X(30) 17590000 176000 VALUE 'SHASTA-TE-TR DISTRICT'. 17600000 176100 07 CPEC-DISTRICT-CODE 17610000 176200 PIC X(6) VALUE 'C9056A'. 17620000 176300 07 SINGLE-COLLEGE-FLAG 17630000 176400 PIC 9 VALUE 1. 17640000 176500 05 SIERRA. 17650000 176600 07 DISTRICT-CODE PIC 9(5) VALUE 66936. 17660000 176700 07 DISTRICT-ID PIC 9(3) VALUE 270. 17670000 176800 07 DISTRICT-NAME PIC X(30) 17680000 176900 VALUE 'SIERRA DISTRICT'. 17690000 177000 07 CPEC-DISTRICT-CODE 17700000 177100 PIC X(6) VALUE 'C9057A'. 17710000 177200 07 SINGLE-COLLEGE-FLAG 17720000 177300 PIC 9 VALUE 1. 17730000 177400 05 SISKIYOU. 17740000 177500 07 DISTRICT-CODE PIC 9(5) VALUE 70474. 17750000 177600 07 DISTRICT-ID PIC 9(3) VALUE 180. 17760000 177700 07 DISTRICT-NAME PIC X(30) 17770000 177800 VALUE 'SISKIYOU DISTRICT'. 17780000 177900 07 CPEC-DISTRICT-CODE 17790000 178000 PIC X(6) VALUE 'C9058A'. 17800000 178100 07 SINGLE-COLLEGE-FLAG 17810000 178200 PIC 9 VALUE 1. 17820000 178300 05 SOLAN0-COUNTY. 17830000 178400 07 DISTRICT-CODE PIC 9(5) VALUE 70557. 17840000 178500 07 DISTRICT-ID PIC 9(3) VALUE 280. 17850000 178600 07 DISTRICT-NAME PIC X(30) 17860000 178700 VALUE 'SOLANO COUNTY DISTRICT'. 17870000 178800 07 CPEC-DISTRICT-CODE 17880000 178900 PIC X(6) VALUE 'C9059A'. 17890000 179000 07 SINGLE-COLLEGE-FLAG 17900000 179100 PIC 9 VALUE 1. 17910000 179200 05 SONOMA-COUNTY. 17920000 179300 07 DISTRICT-CODE PIC 9(5) VALUE 70946. 17930000 179400 07 DISTRICT-ID PIC 9(3) VALUE 260. 17940000 179500 07 DISTRICT-NAME PIC X(30) 17950000 179600 VALUE 'SONOMA COUNTY DISTRICT'. 17960000 179700 07 CPEC-DISTRICT-CODE 17970000 179800 PIC X(6) VALUE 'C9060A'. 17980000 179900 07 SINGLE-COLLEGE-FLAG 17990000 180000 PIC 9 VALUE 1. 18000000 180100 05 SOUTH-COUNTY. 18010000 180200 07 DISTRICT-CODE PIC 9(5) VALUE 61317. 18020000 180300 07 DISTRICT-ID PIC 9(3) VALUE 480. 18030000 180400 07 DISTRICT-NAME PIC X(30) 18040000 180500 VALUE 'CHABOT-LAS POSITAS DISTRICT'. 18050000 180600 07 CPEC-DISTRICT-CODE 18060000 180700 PIC X(6) VALUE 'C9061A'. 18070000 180800 07 SINGLE-COLLEGE-FLAG 18080000 180900 PIC 9 VALUE ZERO. 18090000 181000 05 STATE-CENTER. 18100000 181100 07 DISTRICT-CODE PIC 9(5) VALUE 62463. 18110000 181200 07 DISTRICT-ID PIC 9(3) VALUE 570. 18120000 181300 07 DISTRICT-NAME PIC X(30) 18130000 181400 VALUE 'STATE CENTER DISTRICT'. 18140000 181500 07 CPEC-DISTRICT-CODE 18150000 181600 PIC X(6) VALUE 'C9062A'. 18160000 181700 07 SINGLE-COLLEGE-FLAG 18170000 181800 PIC 9 VALUE ZERO. 18180000 181900 05 SOUTHWESTERN. 18190000 182000 07 DISTRICT-CODE PIC 9(5) VALUE 68429. 18200000 182100 07 DISTRICT-ID PIC 9(3) VALUE 090. 18210000 182200 07 DISTRICT-NAME PIC X(30) 18220000 182300 VALUE 'SOUTHWESTERN DISTRICT'. 18230000 182400 07 CPEC-DISTRICT-CODE 18240000 182500 PIC X(6) VALUE 'C9063A'. 18250000 182600 07 SINGLE-COLLEGE-FLAG 18260000 182700 PIC 9 VALUE 1. 18270000 182800 05 VENTURA-COUNTY. 18280000 182900 07 DISTRICT-CODE PIC 9(5) VALUE 72660. 18290000 183000 07 DISTRICT-ID PIC 9(3) VALUE 680. 18300000 183100 07 DISTRICT-NAME PIC X(30) 18310000 183200 VALUE 'VENTURA COUNTY DISTRICT'. 18320000 183300 07 CPEC-DISTRICT-CODE 18330000 183400 PIC X(6) VALUE 'C9064A'. 18340000 183500 07 SINGLE-COLLEGE-FLAG 18350000 183600 PIC 9 VALUE ZERO. 18360000 183700 05 VICTOR-VALLEY. 18370000 183800 07 DISTRICT-CODE PIC 9(5) VALUE 67926. 18380000 183900 07 DISTRICT-ID PIC 9(3) VALUE 990. 18390000 184000 07 DISTRICT-NAME PIC X(30) 18400000 184100 VALUE 'VICTOR VALLEY DISTRICT'. 18410000 184200 07 CPEC-DISTRICT-CODE 18420000 184300 PIC X(6) VALUE 'C9065A'. 18430000 184400 07 SINGLE-COLLEGE-FLAG 18440000 184500 PIC 9 VALUE 1. 18450000 184600 05 WEST-HILLS. 18460000 184700 07 DISTRICT-CODE PIC 9(5) VALUE 62133. 18470000 184800 07 DISTRICT-ID PIC 9(3) VALUE 580. 18480000 184900 07 DISTRICT-NAME PIC X(30) 18490000 185000 VALUE 'WEST HILLS DISTRICT'. 18500000 185100 07 CPEC-DISTRICT-CODE 18510000 185200 PIC X(6) VALUE 'C9066A'. 18520000 185300 07 SINGLE-COLLEGE-FLAG 18530000 185400 PIC 9 VALUE 1. 18540000 185500 05 WEST-KERN. 18550000 185600 07 DISTRICT-CODE PIC 9(5) VALUE 63867. 18560000 185700 07 DISTRICT-ID PIC 9(3) VALUE 690. 18570000 185800 07 DISTRICT-NAME PIC X(30) 18580000 185900 VALUE 'WEST KERN DISTRICT'. 18590000 186000 07 CPEC-DISTRICT-CODE 18600000 186100 PIC X(6) VALUE 'C9067A'. 18610000 186200 07 SINGLE-COLLEGE-FLAG 18620000 186300 PIC 9 VALUE 1. 18630000 186400 05 WEST-VALLEY. 18640000 186500 07 DISTRICT-CODE PIC 9(5) VALUE 69716. 18650000 186600 07 DISTRICT-ID PIC 9(3) VALUE 490. 18660000 186700 07 DISTRICT-NAME PIC X(30) 18670000 186800 VALUE 'WEST VALLEY DISTRICT'. 18680000 186900 07 CPEC-DISTRICT-CODE 18690000 187000 PIC X(6) VALUE 'C9068A'. 18700000 187100 07 SINGLE-COLLEGE-FLAG 18710000 187200 PIC 9 VALUE ZERO. 18720000 187300 05 YOSEMITE. 18730000 187400 07 DISTRICT-CODE PIC 9(5) VALUE 71340. 18740000 187500 07 DISTRICT-ID PIC 9(3) VALUE 590. 18750000 187600 07 DISTRICT-NAME PIC X(30) 18760000 187700 VALUE 'YOSEMITE DISTRICT'. 18770000 187800 07 CPEC-DISTRICT-CODE 18780000 187900 PIC X(6) VALUE 'C9069A'. 18790000 188000 07 SINGLE-COLLEGE-FLAG 18800000 188100 PIC 9 VALUE ZERO. 18810000 188200 05 YUBA-DISTRICT. 18820000 188300 07 DISTRICT-CODE PIC 9(5) VALUE 72777. 18830000 188400 07 DISTRICT-ID PIC 9(3) VALUE 290. 18840000 188500 07 DISTRICT-NAME PIC X(30) 18850000 188600 VALUE 'YUBA DISTRICT'. 18860000 188700 07 CPEC-DISTRICT-CODE 18870000 188800 PIC X(6) VALUE 'C9070A'. 18880000 188900 07 SINGLE-COLLEGE-FLAG 18890000 189000 PIC 9 VALUE 1. 18900000 189100 03 DISTRICT-CODE-ENTRY 18910000 189200 REDEFINES DISTRICT-CODE-VALUES 18920000 189300 OCCURS 71 TIMES 18930000 189400 INDEXED BY DISTRICT-CODE-INDEX. 18940000 189500 05 DISTRICT-CODE PIC 9(5). 18950000 189600 05 DISTRICT-ID PIC 9(3). 18960000 189700 05 DISTRICT-NAME PIC X(30). 18970000 189800 05 CPEC-DISTRICT-CODE PIC X(6). 18980000 189900 05 SINGLE-COLLEGE-FLAG PIC 9. 18990000 190000 88 SINGLE-COLLEGE-DISTRICT VALUE 1. 19000000 190100* 19010000 190200/ 19020000 190300* 19030000 190400 01 DUMMY-RECORD. 19040000 190500* 03 FILLER PIC X. 19050000 190600* 03 S-COMP-BEGIN-YEAR PIC X(6). 19060000 190700* 03 FILLER PIC X VALUE SPACE. 19070000 190800* 03 S-COMP-END-YEAR PIC X(6). 19080000 190900* 03 FILLER PIC X VALUE SPACE. 19090000 191000* 03 S-HOLD-HIREDATE PIC X(6). 19100000 191100* 03 FILLER PIC X VALUE SPACE. 19110000 191200* 03 S-EB09-FLAG PIC X(1). 19120000 191300* 03 FILLER PIC X VALUE SPACE. 19130000 191400* 03 S-EB10-FLAG PIC X(1). 19140000 191500 03 FILLER PIC X VALUE SPACE. 19150000 191600 03 S-CHECK-DIST-CODE PIC X(3). 19160000 191700 19170000 191800 LINKAGE SECTION. 19180000 191900* 19190000 192000 01 RUNTIME-PARAMETER-AREA. 19200000 192100 03 FILLER PIC 999 USAGE IS COMP. 19210000 192200 03 PRINT-FLAG PIC XXX. 19220000 192300 88 VALID-PRINT-FLAG VALUE '000' THRU '999' 19230000 192400 'ALL'. 19240000 192500 88 PRINT-ALL VALUE 'ALL'. 19250000 192600 03 FILLER PIC X. 19260000 192700 03 PARAMETER-TERM-ID. 19270000 192800 05 CALENDAR-YEAR PIC XX. 19280000 192900 05 TERM-CODE PIC X. 19290000 193000 03 FILLER PIC X. 19300000 193100 03 DISTRICT-ID PIC XXX. 19310000 193200/ 19320000 193300 PROCEDURE DIVISION USING RUNTIME-PARAMETER-AREA. 19330000 193400* 19340000 193500* 19350000 193600 0000-MAIN-PROCESS. 19360000 193700 PERFORM 1000-INITIAL-PROCESSES. 19370000 193800 PERFORM 2000-PROCESS-EMPLOYEE-DATA 19380000 193900 UNTIL END-OF-EMPLOYEE-DATA. 19390000 194000 PERFORM 9000-PROGRAM-FINALIZATION. 19400000 194100 STOP RUN. 19410000 194200* 19420000 194300* 19430000 194400 1000-INITIAL-PROCESSES. 19440000 194500 PERFORM 1100-VALIDATE-PARAMETERS. 19450000 194600 PERFORM 1200-OPEN-FILES-FOR-PROCESS. 19460000 194700 PERFORM 2600-READ-EMPLOYEE-RECORD 19470000 194800 UNTIL BLANK-REC-FLAG = 0. 19480000 194900 PERFORM 1300-INITIALIZE-WORKAREA. 19490000 195000* 19500000 195100* 19510000 195200 1100-VALIDATE-PARAMETERS. 19520000 195300 OPEN OUTPUT EDIT-ERROR-REPORT. 19530000 195400 PERFORM 1105-VALIDATE-PRINT-FLAG. 19540000 195500 PERFORM 1110-VALIDATE-PARAMETER-TERM. 19550000 195600 PERFORM 1130-VALIDATE-DISTRICT-PARM. 19560000 195700* 19570000 195800* 19580000 195900 1105-VALIDATE-PRINT-FLAG. 19590000 196000 IF NOT VALID-PRINT-FLAG 19600000 196100 SET ERROR-MESSAGE-INDEX 19610000 196200 TO INVALID-PF-INDEX-VALUE 19620000 196300 PERFORM 1190-INVALID-PARAMETER-ABEND. 19630000 196400* 19640000 196500* 19650000 196600 1110-VALIDATE-PARAMETER-TERM. 19660000 196700 PERFORM 1120-VALIDATE-TERM-ID. 19670000 196800 IF CALENDAR-YEAR 19680000 196900 IN RUNTIME-PARAMETER-AREA 19690000 197000 IS NOT NUMERIC 19700000 197100 OR PARAMETER-FIELD-INVALID 19710000 197200 SET ERROR-MESSAGE-INDEX 19720000 197300 TO INVALID-TERM-INDEX-VALUE 19730000 197400 PERFORM 1190-INVALID-PARAMETER-ABEND 19740000 197500 ELSE 19750000 197600 PERFORM 1111-HIRE-DATE-SETUP. 19760000 197700* 19770000 197800* 19780000 197900 1111-HIRE-DATE-SETUP. 19790000 198000 IF TERM-CODE 19800000 198100 IN RUNTIME-PARAMETER-AREA 19810000 198200 IS EQUAL TO '9' 19820000 198300 MOVE CALENDAR-YEAR 19830000 198400 IN RUNTIME-PARAMETER-AREA 19840000 198500 TO EMPLOY-BEGIN-FIRSTCEN-YEAR 19850000 198600 SUBTRACT 1 FROM EMPLOY-BEGIN-FIRSTCEN-YEAR 19860000 198700 MOVE CALENDAR-YEAR 19870000 198800 IN RUNTIME-PARAMETER-AREA 19880000 198900 TO EMPLOY-END-FIRSTCEN-YEAR 19890000 199000 ELSE 19900000 199100 IF TERM-CODE 19910000 199200 IN RUNTIME-PARAMETER-AREA 19920000 199300 IS EQUAL TO '0' 19930000 199400 IF CALENDAR-YEAR 19940000 199500 IN RUNTIME-PARAMETER-AREA 19950000 199600 IS EQUAL TO '95' 19960000 199700 MOVE 93 TO EMPLOY-BEGIN-ANNUAL-YEAR 19970000 199800 MOVE 11 TO EMPLOY-BEGIN-ANNUAL-MTH 19980000 199900 MOVE 01 TO EMPLOY-BEGIN-ANNUAL-DAY 19990000 200000 MOVE CALENDAR-YEAR 20000000 200100 IN RUNTIME-PARAMETER-AREA 20010000 200200 TO EMPLOY-END-ANNUAL-YEAR 20020000 200300 ELSE 20030000 200400 MOVE CALENDAR-YEAR 20040000 200500 IN RUNTIME-PARAMETER-AREA 20050000 200600 TO EMPLOY-END-ANNUAL-YEAR 20060000 200700 MOVE CALENDAR-YEAR 20070000 200800 IN RUNTIME-PARAMETER-AREA 20080000 200900 TO EMPLOY-BEGIN-ANNUAL-YEAR 20090000 201000 SUBTRACT 1 FROM EMPLOY-BEGIN-ANNUAL-YEAR. 20100000 201100* 20110000 201200* 20120000 201300 1120-VALIDATE-TERM-ID. 20130000 201400 SET TERM-IDENTIFIER-INDEX TO 1 20140000 201500 SEARCH TERM-IDENTIFIER-ENTRY 20150000 201600 IN TERM-IDENTIFIER-TABLE 20160000 201700 AT END 20170000 201800 MOVE 1 TO PARAMETER-VALIDATION-FLAG 20180000 201900 WHEN TERM-CODE 20190000 202000 IN RUNTIME-PARAMETER-AREA 20200000 202100 IS EQUAL TO TERM-CODE 20210000 202200 IN TERM-IDENTIFIER-ENTRY 20220000 202300 OF TERM-IDENTIFIER-TABLE 20230000 202400 (TERM-IDENTIFIER-INDEX) 20240000 202500 NEXT SENTENCE. 20250000 202600* 20260000 202700* 20270000 202800 1130-VALIDATE-DISTRICT-PARM. 20280000 202900 SET DISTRICT-CODE-INDEX TO 1. 20290000 203000 SEARCH DISTRICT-CODE-ENTRY 20300000 203100 IN DISTRICT-CODE-TABLE 20310000 203200 AT END 20320000 203300 SET ERROR-MESSAGE-INDEX 20330000 203400 TO INVALID-DISTRICT-INDEX-VALUE 20340000 203500 PERFORM 1190-INVALID-PARAMETER-ABEND 20350000 203600 WHEN DISTRICT-ID 20360000 203700 IN RUNTIME-PARAMETER-AREA 20370000 203800 IS EQUAL TO DISTRICT-ID 20380000 203900 IN DISTRICT-CODE-ENTRY 20390000 204000 OF DISTRICT-CODE-TABLE 20400000 204100 (DISTRICT-CODE-INDEX) 20410000 204200 MOVE DISTRICT-ID 20420000 204300 IN DISTRICT-CODE-ENTRY 20430000 204400 OF DISTRICT-CODE-TABLE 20440000 204500 (DISTRICT-CODE-INDEX) 20450000 204600 TO HOLD-DISTRICT-ID 20460000 204700 MOVE DISTRICT-NAME 20470000 204800 IN DISTRICT-CODE-ENTRY 20480000 204900 OF DISTRICT-CODE-TABLE 20490000 205000 (DISTRICT-CODE-INDEX) 20500000 205100 TO HOLD-DISTRICT-NAME. 20510000 205200* 20520000 205300* 20530000 205400 1190-INVALID-PARAMETER-ABEND. 20540000 205500 PERFORM 8500-REPORT-HEADINGS. 20550000 205600 MOVE ERROR-MESSAGE 20560000 205700 (ERROR-MESSAGE-INDEX) 20570000 205800 TO PRINT-RECORD. 20580000 205900 WRITE PRINT-RECORD 20590000 206000 AFTER ADVANCING 2 LINES. 20600000 206100 MOVE RUNTIME-PARAMETER-AREA 20610000 206200 TO PRINT-RECORD 20620000 206300 WRITE PRINT-RECORD 20630000 206400 AFTER ADVANCING 2 LINES. 20640000 206500 STOP RUN. 20650000 206600* 20660000 206700* 20670000 206800 1200-OPEN-FILES-FOR-PROCESS. 20680000 206900 OPEN INPUT EMPLOYEE-DATA-FILE. 20690000 207000 OPEN OUTPUT EDITED-EMPLOYEE-DATA-FILE. 20700000 207100 OPEN OUTPUT INTEGRITY-ERROR-SUMMARY. 20710000 207200 OPEN OUTPUT REPORT-TOTALS-FILE. 20720000 207300* 20730000 207400* 20740000 207500 1300-INITIALIZE-WORKAREA. 20750000 207600 MOVE TERM-NAME 20760000 207700 IN TERM-IDENTIFIER-ENTRY 20770000 207800 OF TERM-IDENTIFIER-TABLE 20780000 207900 (TERM-IDENTIFIER-INDEX) 20790000 208000 TO TERM-NAME 20800000 208100 IN REPORT-TITLE-LINE-2. 20810000 208200 MOVE CALENDAR-YEAR 20820000 208300 IN RUNTIME-PARAMETER-AREA 20830000 208400 TO CALENDAR-YEAR1 20840000 208500 IN REPORT-TITLE-LINE-2, 20850000 208600 CALENDAR-YEAR2 20860000 208700 IN REPORT-TITLE-LINE-2, 20870000 208800 HOLD-CALENDAR-YEAR. 20880000 208900 MOVE TERM-CODE 20890000 209000 IN RUNTIME-PARAMETER-AREA 20900000 209100 TO TERM-CODE 20910000 209200 IN REPORT-TITLE-LINE-2, 20920000 209300 TERM-TYPE-FLAG. 20930000 209400 IF PRINT-FLAG NUMERIC 20940000 209500 MOVE PRINT-FLAG 20950000 209600 TO PRINT-LIMIT. 20960000 209700 ACCEPT KEY-DATE FROM DAY. 20970000 209800 ACCEPT DATE-HOLD FROM DATE. 20980000 209900 ACCEPT KEY-TIME FROM TIME. 20990000 210000 ACCEPT TIME-HOLD FROM TIME. 21000000 210100 MOVE YEAR-2 21010000 210200 TO KEY-ELEMENT-1. 21020000 210300 MOVE DAY-2 21030000 210400 TO KEY-ELEMENT-2. 21040000 210500 MOVE DAY-3 21050000 210600 TO KEY-ELEMENT-3. 21060000 210700 MOVE KEY-TIME-ZONE 21070000 210800 TO KEY-ELEMENT-4. 21080000 210900 SET EDIT-COLUMN-INDEX TO 1. 21090000 211000 MOVE 2 TO PAGE-FULL-FLAG. 21100000 211100* 21110000 211200* 21120000 211300 2000-PROCESS-EMPLOYEE-DATA. 21130000 211400 ADD 1 TO DISTRICT-RECORDS-READ. 21140000 211500 MOVE ZERO TO REJECT-RECORD-FLAG. 21150000 211600 MOVE SPACES TO CHECK-DATA-AREA. 21160000 211700 MOVE SPACE TO REASONABLE-FLAG. 21170000 211800 MOVE ZEROS TO DATA-COMP-AREA, 21180000 211900 VALID-DATA-FLAGS. 21190000 212300 PERFORM 2400-INTEGRITY-EDITS. 21230000 212000 PERFORM 2100-VALIDATE-KEY-FIELDS. 21200000 212100 PERFORM 2200-VALIDATE-DEMOGRAPHIC-DATA. 21210000 212200 PERFORM 2300-VALIDATE-EMPLOYMENT-DATA. 21220000 212400 IF RECORD-REJECTED 21240000 212500 ADD 1 TO DISTRICT-RECORDS-REJECTED 21250000 212600 MOVE REJECTED-LITERAL 21260000 212700 TO DATA-ELEMENT 21270000 212800 (18, EDIT-COLUMN-INDEX) 21280000 212900 PERFORM 2010-SETUP-FOR-PRINTING 21290000 213000 PERFORM 2020-BUMP-ERROR-COLUMN-INDEX 21300000 213100 ELSE 21310000 213200 IF REASONABLE-EXCEPTION 21320000 213300 PERFORM 2010-SETUP-FOR-PRINTING 21330000 213400 PERFORM 2020-BUMP-ERROR-COLUMN-INDEX 21340000 213500 PERFORM 3000-OUTPUT-EDITED-DATA 21350000 213600 ELSE 21360000 213700 PERFORM 3000-OUTPUT-EDITED-DATA. 21370000 213800 PERFORM 2600-READ-EMPLOYEE-RECORD. 21380000 213900* 21390000 214000* 21400000 214100 2010-SETUP-FOR-PRINTING. 21410000 214200 MOVE EMPLOYEE-IDENTIFIER 21420000 214300 IN EMPLOYEE-DATA-RECORD 21430000 214400 TO DATA-ELEMENT 21440000 214500 (1, EDIT-COLUMN-INDEX). 21450000 214600 MOVE RECORD-CODE 21460000 214700 IN EMPLOYEE-DATA-RECORD 21470000 214800 TO DATA-ELEMENT 21480000 214900 (2, EDIT-COLUMN-INDEX). 21490000 215000 MOVE DISTRICT-ID 21500000 215100 IN EMPLOYEE-DATA-RECORD 21510000 215200 TO DATA-ELEMENT 21520000 215300 (3, EDIT-COLUMN-INDEX). 21530000 215400 MOVE TERM-IDENTIFIER 21540000 215500 IN EMPLOYEE-DATA-RECORD 21550000 215600 TO DATA-ELEMENT 21560000 215700 (4, EDIT-COLUMN-INDEX). 21570000 215800 MOVE EMPLOYEE-IDENTIFIER-STATUS 21580000 215900 IN EMPLOYEE-DATA-RECORD 21590000 216000 TO DATA-ELEMENT 21600000 216100 (5, EDIT-COLUMN-INDEX). 21610000 216200 MOVE EMPLOYEE-BIRTHDATE 21620000 216300 IN EMPLOYEE-DATA-RECORD 21630000 216400 TO DATA-ELEMENT 21640000 216500 (6, EDIT-COLUMN-INDEX). 21650000 216600 MOVE EMPLOYEE-GENDER 21660000 216700 IN EMPLOYEE-DATA-RECORD 21670000 216800 TO DATA-ELEMENT 21680000 216900 (7, EDIT-COLUMN-INDEX). 21690000 217000 MOVE EMPLOYEE-RACIAL-ETHNIC-CODE 21700000 217100 IN EMPLOYEE-DATA-RECORD 21710000 217200 TO DATA-ELEMENT 21720000 217300 (8, EDIT-COLUMN-INDEX). 21730000 217400 MOVE EMPLOYEE-CITIZENSHIP 21740000 217500 IN EMPLOYEE-DATA-RECORD 21750000 217600 TO DATA-ELEMENT 21760000 217700 (9, EDIT-COLUMN-INDEX). 21770000 217800 MOVE EMPLOYEE-DISABILITY-STATUS 21780000 217900 IN EMPLOYEE-DATA-RECORD 21790000 218000 TO DATA-ELEMENT 21800000 218100 (10, EDIT-COLUMN-INDEX). 21810000 218200 MOVE EMPLOYEE-EEO6-ACTIVITY 21820000 218300 IN EMPLOYEE-DATA-RECORD 21830000 218400 TO DATA-ELEMENT 21840000 218500 (11, EDIT-COLUMN-INDEX). 21850000 218600 MOVE EMPLOYEE-CLASSIFICATION 21860000 218700 IN EMPLOYEE-DATA-RECORD 21870000 218800 TO DATA-ELEMENT 21880000 218900 (12, EDIT-COLUMN-INDEX). 21890000 219000 MOVE EMPLOYEE-STATUS 21900000 219100 IN EMPLOYEE-DATA-RECORD 21910000 219200 TO DATA-ELEMENT 21920000 219300 (13, EDIT-COLUMN-INDEX). 21930000 219400 MOVE EMPLOYEE-DATE-EMPLOYED 21940000 219500 IN EMPLOYEE-DATA-RECORD 21950000 219600 TO DATA-ELEMENT 21960000 219700 (14, EDIT-COLUMN-INDEX). 21970000 219800 MOVE EMPLOYEE-CONTRACT 21980000 219900 IN EMPLOYEE-DATA-RECORD 21990000 220000 TO DATA-ELEMENT 22000000 220100 (15, EDIT-COLUMN-INDEX). 22010000 220200 MOVE EMPLOYEE-SALARY 22020000 220300 IN EMPLOYEE-DATA-RECORD 22030000 220400 TO DATA-ELEMENT 22040000 220500 (16, EDIT-COLUMN-INDEX). 22050000 220600 MOVE EMPLOYEE-STIPEND 22060000 220700 IN EMPLOYEE-DATA-RECORD 22070000 220800 TO DATA-ELEMENT 22080000 220900 (17, EDIT-COLUMN-INDEX). 22090000 221000* 22100000 221100* 22110000 221200 2020-BUMP-ERROR-COLUMN-INDEX. 22120000 221300 SET ORIGINAL-INDEX-VALUE 22130000 221400 TO EDIT-COLUMN-INDEX. 22140000 221500 SEARCH EDIT-ERROR-COLUMNS 22150000 221600 IN EDIT-ERROR-TABLE 22160000 221700 AT END 22170000 221800 PERFORM 5000-PRINT-ERROR-REPORT 22180000 221900 SET EDIT-COLUMN-INDEX TO 1 22190000 222000 WHEN ORIGINAL-INDEX-VALUE 22200000 222100 IS NOT EQUAL TO EDIT-COLUMN-INDEX 22210000 222200 NEXT SENTENCE. 22220000 222300* 22230000 222400* 22240000 222500 2100-VALIDATE-KEY-FIELDS. 22250000 222600 PERFORM 2110-VALIDATE-RECORD-IDENTITY. 22260000 222700 PERFORM 2120-VALIDATE-DISTRICT-ID. 22270000 222800 PERFORM 2130-VALIDATE-TERM-IDENTIFIER. 22280000 222900 PERFORM 2140-VALIDATE-EMPLOYEE-ID. 22290000 223000 PERFORM 2150-VALIDATE-ID-STATUS. 22300000 223100* PERFORM 2150-CONTINUE-IDENTITY-CHECK. 22310000 223200* PERFORM 2160-VALIDATE-ID-FORMAT. 22320000 223300* PERFORM 2170-ERROR-IN-ID-SETUP. 22330000 223400* 22340000 223500* 22350000 223600 2110-VALIDATE-RECORD-IDENTITY. 22360000 223700 IF EMPLOYEE-DATA 22370000 223800 NEXT SENTENCE 22380000 223900 ELSE 22390000 224000 MOVE VALIDITY-LITERAL 22400000 224100 TO DATA-ELEMENT-FLAG 22410000 224200 (2, EDIT-COLUMN-INDEX) 22420000 224300 ADD 1 TO DISTRICT-COUNT (2, 1) 22430000 224400 MOVE 1 TO REJECT-RECORD-FLAG. 22440000 224500* 22450000 224600* 22460000 224700 2120-VALIDATE-DISTRICT-ID. 22470000 224800 IF DISTRICT-ID 22480000 224900 IN EMPLOYEE-DATA-RECORD 22490000 225000 IS EQUAL TO HOLD-DISTRICT-ID 22500000 225100 NEXT SENTENCE 22510000 225200 ELSE 22520000 225300 MOVE VALIDITY-LITERAL 22530000 225400 TO DATA-ELEMENT-FLAG 22540000 225500 (3, EDIT-COLUMN-INDEX) 22550000 225600 ADD 1 TO DISTRICT-COUNT (3, 1) 22560000 225700 MOVE 1 TO REJECT-RECORD-FLAG. 22570000 225800* 22580000 225900* 22590000 226000 2130-VALIDATE-TERM-IDENTIFIER. 22600000 226100 IF CALENDAR-YEAR 22610000 226200 IN EMPLOYEE-DATA-RECORD 22620000 226300 IS EQUAL TO CALENDAR-YEAR 22630000 226400 IN RUNTIME-PARAMETER-AREA 22640000 226500 AND TERM-CODE 22650000 226600 IN EMPLOYEE-DATA-RECORD 22660000 226700 IS EQUAL TO TERM-CODE 22670000 226800 IN RUNTIME-PARAMETER-AREA 22680000 226900 CONTINUE 22690000 227000 ELSE 22700000 227100 MOVE VALIDITY-LITERAL 22710000 227200 TO DATA-ELEMENT-FLAG 22720000 227300 (4, EDIT-COLUMN-INDEX) 22730000 227400 ADD 1 TO DISTRICT-COUNT (4, 1) 22740000 227500 MOVE 1 TO REJECT-RECORD-FLAG. 22750000 227600* 22760000 227700* 22770000 227800 2140-VALIDATE-EMPLOYEE-ID. 22780000 227900 IF EMPLOYEE-IDENTIFIER 22790000 228000 IN EMPLOYEE-DATA-RECORD 22800000 228100 IS EQUAL TO SPACES 22810000 228200 OR ID-FIRST IS EQUAL TO SPACE 22820000 228300 PERFORM 2170-ERROR-IN-ID-SETUP 22830000 228400 ELSE 22840000 228500 MOVE 1 TO EB00-FLAG. 22850000 228600* 22860000 228700* 22870000 228800 2150-VALIDATE-ID-STATUS. 22880000 228900 MOVE EMPLOYEE-IDENTIFIER-STATUS 22890000 229000 IN EMPLOYEE-DATA-RECORD 22900000 229100 TO CHECK-ID-STATUS. 22910000 229200 IF ID-STATUS-VALID 22920000 229300 MOVE 1 TO EB01-FLAG 22930000 229400 ELSE 22940000 229500 MOVE VALIDITY-LITERAL 22950000 229600 TO DATA-ELEMENT-FLAG 22960000 229700 (5, EDIT-COLUMN-INDEX) 22970000 229800 ADD 1 TO DISTRICT-COUNT (5, 1) 22980000 229900 MOVE 1 TO REJECT-RECORD-FLAG. 22990000 230000 23000000 230100*2150-CONTINUE-IDENTITY-CHECK. 23010000 230200* MOVE EMPLOYEE-IDENTIFIER-STATUS 23020000 230300* IN EMPLOYEE-DATA-RECORD 23030000 230400* TO CHECK-ID-STATUS. 23040000 230500* IF ID-STATUS-VALID 23050000 230600* PERFORM 2160-VALIDATE-ID-FORMAT 23060000 230700* ELSE 23070000 230800* MOVE VALIDITY-LITERAL 23080000 230900* TO DATA-ELEMENT-FLAG 23090000 231000* (5, EDIT-COLUMN-INDEX) 23100000 231100* ADD 1 TO DISTRICT-COUNT (5, 1) 23110000 231200* MOVE 1 TO REJECT-RECORD-FLAG. 23120000 231300* 23130000 231400* 23140000 231500*2160-VALIDATE-ID-FORMAT. 23150000 231600* IF EMPLOYEE-ID-IS-SSN 23160000 231700* AND EMPLOYEE-IDENTIFIER 23170000 231800* IN EMPLOYEE-DATA-RECORD 23180000 231900* IS NOT NUMERIC 23190000 232000* PERFORM 2170-ERROR-IN-ID-SETUP. 23200000 232100* 23210000 232200* 23220000 232300 2170-ERROR-IN-ID-SETUP. 23230000 232400 MOVE VALIDITY-LITERAL 23240000 232500 TO DATA-ELEMENT-FLAG 23250000 232600 (1, EDIT-COLUMN-INDEX). 23260000 232700 ADD 1 TO DISTRICT-COUNT (1, 1). 23270000 232800 MOVE 1 TO REJECT-RECORD-FLAG. 23280000 232900* 23290000 233000* 23300000 233100 2200-VALIDATE-DEMOGRAPHIC-DATA. 23310000 233200 IF EMPLOYEE-BIRTHDATE 23320000 233300 IN EMPLOYEE-DATA-RECORD 23330000 233400 IS NUMERIC 23340000 233500 PERFORM 2210-VALIDATE-BIRTHDATE 23350000 233600 ELSE 23360000 233700 MOVE VALIDITY-LITERAL 23370000 233800 TO DATA-ELEMENT-FLAG 23380000 233900 (6, EDIT-COLUMN-INDEX) 23390000 234000 ADD 1 TO DISTRICT-COUNT (6, 1) 23400000 234100 MOVE 1 TO REJECT-RECORD-FLAG. 23410000 234200 PERFORM 2220-VALIDATE-GENDER. 23420000 234300 PERFORM 2230-VALIDATE-ETHNICITY. 23430000 234400 PERFORM 2240-VALIDATE-CITIZENSHIP. 23440000 234500 PERFORM 2250-VALIDATE-DISABILITY. 23450000 234600* 23460000 234700* 23470000 234800 2210-VALIDATE-BIRTHDATE. 23480000 234900 MOVE EMPLOYEE-BIRTHDATE 23490000 235000 IN EMPLOYEE-DATA-RECORD 23500000 235100 TO CHECK-BIRTH-DATE 23510000 235200 IF BIRTH-DATE-UNKNOWN 23520000 235300 NEXT SENTENCE 23530000 235400 ELSE 23540000 235500 IF BIRTH-DAY-UNKNOWN 23550000 235600 MOVE EMPLOYEE-BIRTHDATE 23560000 235700 IN EMPLOYEE-DATA-RECORD 23570000 235800 TO HOLD-BIRTHDATE 23580000 235900 MOVE UNKNOWN-DAY 23590000 236000 TO BIRTH-DAY 23600000 236100 IN HOLD-BIRTHDATE 23610000 236200 PERFORM 2211-CONTINUE-BIRTHDATE 23620000 236300 ELSE 23630000 236400 IF BIRTH-DATE-NOT-APP 23640000 236500 NEXT SENTENCE 23650000 236600 ELSE 23660000 236700 MOVE EMPLOYEE-BIRTHDATE 23670000 236800 IN EMPLOYEE-DATA-RECORD 23680000 236900 TO HOLD-BIRTHDATE 23690000 237000 PERFORM 2211-CONTINUE-BIRTHDATE. 23700000 237100* 23710000 237200* 23720000 237300 2211-CONTINUE-BIRTHDATE. 23730000 237400 MOVE HOLD-BIRTHDATE 23740000 237500 TO YYMMDD-DATE-WORKAREA 23750000 237600 IN DATE-VALIDATION-WORKAREA. 23760000 237700 MOVE YYMMDD-FORMAT-VALUE 23770000 237800 OF DATE-ROUTINE-VALUES 23780000 237900 IN DATE-VALIDATION-WORKAREA 23790000 238000 TO DATE-FORMAT-FLAG 23800000 238100 IN DATE-VALIDATION-WORKAREA. 23810000 238200 PERFORM 2500-DATE-VALIDATION-ROUTINE. 23820000 238300 IF DATE-IS-VALID 23830000 238400 MOVE 1 TO EB02-FLAG 23840000 238500 PERFORM 2212-COMPUTE-EMPLOYEE-AGE 23850000 238600 ELSE 23860000 238700 MOVE VALIDITY-LITERAL 23870000 238800 TO DATA-ELEMENT-FLAG 23880000 238900 (6, EDIT-COLUMN-INDEX) 23890000 239000 ADD 1 TO DISTRICT-COUNT (6, 1) 23900000 239100 MOVE 1 TO REJECT-RECORD-FLAG. 23910000 239200* 23920000 239300* 23930000 239400 2212-COMPUTE-EMPLOYEE-AGE. 23940000 239500 COMPUTE COMPUTED-AGE 23950000 239600 = CALENDAR-YEAR 23960000 239700 IN EMPLOYEE-DATA-RECORD 23970000 239800 - BIRTH-YEAR 23980000 239900 IN HOLD-BIRTHDATE. 23990000 240000 IF BIRTH-MONTH 24000000 240100 IN HOLD-BIRTHDATE 24010000 240200 IS GREATER THAN 24020000 240300 AGE-COMPUTATION-MONTH 24030000 240400 IN TERM-IDENTIFIER-ENTRY 24040000 240500 (TERM-IDENTIFIER-INDEX) 24050000 240600 SUBTRACT 1 FROM COMPUTED-AGE 24060000 240700 ELSE 24070000 240800 IF BIRTH-MONTH 24080000 240900 IN HOLD-BIRTHDATE 24090000 241000 IS EQUAL TO 24100000 241100 AGE-COMPUTATION-MONTH 24110000 241200 IN TERM-IDENTIFIER-ENTRY 24120000 241300 (TERM-IDENTIFIER-INDEX) 24130000 241400 AND 24140000 241500 BIRTH-DAY 24150000 241600 IN HOLD-BIRTHDATE 24160000 241700 IS GREATER THAN 24170000 241800 AGE-COMPUTATION-DAY 24180000 241900 IN TERM-IDENTIFIER-ENTRY 24190000 242000 (TERM-IDENTIFIER-INDEX) 24200000 242100 SUBTRACT 1 FROM COMPUTED-AGE. 24210000 242200* 24220000 242300* 24230000 242400 2220-VALIDATE-GENDER. 24240000 242500 MOVE EMPLOYEE-GENDER 24250000 242600 IN EMPLOYEE-DATA-RECORD 24260000 242700 TO CHECK-GENDER. 24270000 242800* IF GENDER-UNKNOWN 24280000 242900* ADD 1 TO DISTRICT-COUNT (7, 2). 24290000 243000 IF GENDER-VALID 24300000 243100 MOVE 1 TO EB03-FLAG 24310000 243200 ELSE 24320000 243300 MOVE VALIDITY-LITERAL 24330000 243400 TO DATA-ELEMENT-FLAG 24340000 243500 (7, EDIT-COLUMN-INDEX) 24350000 243600 ADD 1 TO DISTRICT-COUNT (7, 1) 24360000 243700 MOVE 1 TO REJECT-RECORD-FLAG. 24370000 243800* 24380000 243900* 24390000 244000 2230-VALIDATE-ETHNICITY. 24400000 244100 INSPECT EMPLOYEE-RACIAL-ETHNIC-CODE 24410000 244200 IN EMPLOYEE-DATA-RECORD 24420000 244300 REPLACING ALL ' ' BY '.'. 24430000 244400 MOVE EMPLOYEE-RACIAL-ETHNIC-CODE 24440000 244500 IN EMPLOYEE-DATA-RECORD 24450000 244600 TO CHECK-RACE-ETHNICITY. 24460000 244700 IF RACE-ETHNICITY-UNKNOWN 24470000 244800 ADD 1 TO DISTRICT-COUNT (8, 2). 24480000 244900 IF RACE-ETHNICITY-VALID 24490000 245000 MOVE 1 TO EB04-FLAG 24500000 245100 ELSE 24510000 245200 MOVE VALIDITY-LITERAL 24520000 245300 TO DATA-ELEMENT-FLAG 24530000 245400 (8, EDIT-COLUMN-INDEX) 24540000 245500 ADD 1 TO DISTRICT-COUNT (8, 1) 24550000 245600 MOVE 1 TO REJECT-RECORD-FLAG. 24560000 245700* 24570000 245800* 24580000 245900 2240-VALIDATE-CITIZENSHIP. 24590000 246000 MOVE EMPLOYEE-CITIZENSHIP 24600000 246100 IN EMPLOYEE-DATA-RECORD 24610000 246200 TO CHECK-CITIZENSHIP. 24620000 246300* IF CITIZENSHIP-UNKNOWN 24630000 246400* ADD 1 TO DISTRICT-COUNT (9, 2). 24640000 246500 IF CITIZENSHIP-VALID 24650000 246600 MOVE 1 TO EB05-FLAG 24660000 246700 ELSE 24670000 246800 MOVE VALIDITY-LITERAL 24680000 246900 TO DATA-ELEMENT-FLAG 24690000 247000 (9, EDIT-COLUMN-INDEX) 24700000 247100 ADD 1 TO DISTRICT-COUNT (9, 1) 24710000 247200 MOVE 1 TO REJECT-RECORD-FLAG. 24720000 247300* 24730000 247400* 24740000 247500 2250-VALIDATE-DISABILITY. 24750000 247600 MOVE EMPLOYEE-DISABILITY-STATUS 24760000 247700 IN EMPLOYEE-DATA-RECORD 24770000 247800 TO CHECK-DISABILITY. 24780000 247900* IF DISABILITY-UNKNOWN 24790000 248000* ADD 1 TO DISTRICT-COUNT (10, 2). 24800000 248100 IF DISABILITY-VALID 24810000 248200 MOVE 1 TO EB06-FLAG 24820000 248300 ELSE 24830000 248400 MOVE VALIDITY-LITERAL 24840000 248500 TO DATA-ELEMENT-FLAG 24850000 248600 (10, EDIT-COLUMN-INDEX) 24860000 248700 ADD 1 TO DISTRICT-COUNT (10, 1) 24870000 248800 MOVE 1 TO REJECT-RECORD-FLAG. 24880000 248900* 24890000 249000* 24900000 249100 2300-VALIDATE-EMPLOYMENT-DATA. 24910000 249300 PERFORM 2320-VALIDATE-CLASSIFICATION. 24930000 249400 PERFORM 2330-VALIDATE-EMPLOYEE-STATUS. 24940000 249500 PERFORM 2340-VALIDATE-HIRE-DATE. 24950000 249600 PERFORM 2350-VALIDATE-CONTRACT. 24960000 249700 PERFORM 2360-VALIDATE-SALARY. 24970000 249800 PERFORM 2370-VALIDATE-STIPEND. 24980000 249900* 24990000 250000* 25000000 251700 2320-VALIDATE-CLASSIFICATION. 25170000 251800 MOVE EMPLOYEE-CLASSIFICATION 25180000 251900 IN EMPLOYEE-DATA-RECORD 25190000 252000 TO CHECK-CLASSIFICATION. 25200000 252100 IF CLASSIFICATION-VALID 25210000 252200 MOVE 1 TO EB08-FLAG 25220000 252300 ELSE 25230000 252400 MOVE VALIDITY-LITERAL 25240000 252500 TO DATA-ELEMENT-FLAG 25250000 252600 (12, EDIT-COLUMN-INDEX) 25260000 252700 ADD 1 TO DISTRICT-COUNT (12, 1) 25270000 252800 MOVE 1 TO REJECT-RECORD-FLAG. 25280000 252900* 25290000 253000* 25300000 253100 2330-VALIDATE-EMPLOYEE-STATUS. 25310000 253200 MOVE EMPLOYEE-STATUS 25320000 253300 IN EMPLOYEE-DATA-RECORD 25330000 253400 TO CHECK-STATUS. 25340000 253500 IF STATUS-VALID 25350000 253600 MOVE 1 TO EB09-FLAG 25360000 253700 ELSE 25370000 253800 MOVE VALIDITY-LITERAL 25380000 253900 TO DATA-ELEMENT-FLAG 25390000 254000 (13, EDIT-COLUMN-INDEX) 25400000 254100 ADD 1 TO DISTRICT-COUNT (13, 1) 25410000 254200 MOVE 1 TO REJECT-RECORD-FLAG. 25420000 254300* 25430000 254400* 25440000 254500 2340-VALIDATE-HIRE-DATE. 25450000 254600 MOVE EMPLOYEE-DATE-EMPLOYED 25460000 254700 IN EMPLOYEE-DATA-RECORD 25470000 254800 TO CHECK-HIRE-DATE. 25480000 254900 IF HIRE-DATE-NOT-APP 25490000 255000 NEXT SENTENCE 25500000 255100 ELSE 25510000 255200 IF HIRE-DATE-UNKNOWN 25520000 255300 NEXT SENTENCE 25530000 255400 ELSE 25540000 255500 IF HIRE-DAY-UNKNOWN 25550000 255600 MOVE EMPLOYEE-DATE-EMPLOYED 25560000 255700 IN EMPLOYEE-DATA-RECORD 25570000 255800 TO HOLD-HIREDATE 25580000 255900 MOVE UNKNOWN-DAY 25590000 256000 TO HIRE-DAY 25600000 256100 IN HOLD-HIREDATE 25610000 256200 PERFORM 2341-CONTINUE-HIRE-DATE 25620000 256300 ELSE 25630000 256400 MOVE EMPLOYEE-DATE-EMPLOYED 25640000 256500 IN EMPLOYEE-DATA-RECORD 25650000 256600 TO HOLD-HIREDATE 25660000 256700 PERFORM 2341-CONTINUE-HIRE-DATE. 25670000 256800* 25680000 256900* 25690000 257000 2341-CONTINUE-HIRE-DATE. 25700000 257100 MOVE HOLD-HIREDATE 25710000 257200 TO YYMMDD-DATE-WORKAREA 25720000 257300 IN DATE-VALIDATION-WORKAREA. 25730000 257400 MOVE YYMMDD-FORMAT-VALUE 25740000 257500 OF DATE-ROUTINE-VALUES 25750000 257600 IN DATE-VALIDATION-WORKAREA 25760000 257700 TO DATE-FORMAT-FLAG 25770000 257800 IN DATE-VALIDATION-WORKAREA. 25780000 257900 PERFORM 2500-DATE-VALIDATION-ROUTINE. 25790000 258000 IF DATE-IS-VALID 25800000 258100 MOVE 1 TO EB10-FLAG 25810000 258200 ELSE 25820000 258300 MOVE VALIDITY-LITERAL 25830000 258400 TO DATA-ELEMENT-FLAG 25840000 258500 (14, EDIT-COLUMN-INDEX) 25850000 258600 ADD 1 TO DISTRICT-COUNT (14, 1) 25860000 258700 MOVE 1 TO REJECT-RECORD-FLAG. 25870000 258800* 25880000 258900* 25890000 259000 2350-VALIDATE-CONTRACT. 25900000 259100 MOVE EMPLOYEE-CONTRACT 25910000 259200 IN EMPLOYEE-DATA-RECORD 25920000 259300 TO CHECK-CONTRACT. 25930000 259400 IF CONTRACT-VALID 25940000 259500 MOVE 1 TO EB11-FLAG 25950000 259600 ELSE 25960000 259700 MOVE VALIDITY-LITERAL 25970000 259800 TO DATA-ELEMENT-FLAG 25980000 259900 (15, EDIT-COLUMN-INDEX) 25990000 260000 ADD 1 TO DISTRICT-COUNT (15, 1) 26000000 260100 MOVE 1 TO REJECT-RECORD-FLAG. 26010000 260200* 26020000 260300* 26030000 260400 2360-VALIDATE-SALARY. 26040000 260500 IF EMPLOYEE-SALARY 26050000 260600 IN EMPLOYEE-DATA-RECORD 26060000 260700 IS EQUAL TO SPACES 26070000 260800 MOVE VALIDITY-LITERAL 26080000 260900 TO DATA-ELEMENT-FLAG 26090000 261000 (16, EDIT-COLUMN-INDEX) 26100000 261100 ADD 1 TO DISTRICT-COUNT (16, 1) 26110000 261200 MOVE 1 TO REJECT-RECORD-FLAG 26120000 261300 ELSE 26130000 261400 PERFORM 2361-CONTINUE-SALARY. 26140000 261500* 26150000 261600* 26160000 261700 2361-CONTINUE-SALARY. 26170000 261800 INSPECT EMPLOYEE-SALARY 26180000 261900 IN EMPLOYEE-DATA-RECORD 26190000 262000 REPLACING LEADING SPACES BY ZEROS. 26200000 262100 MOVE EMPLOYEE-SALARY 26210000 262200 IN EMPLOYEE-DATA-RECORD 26220000 262300 TO CHECK-SALARY. 26230000 262400 IF CHECK-SALARY NOT NUMERIC 26240000 262500 MOVE VALIDITY-LITERAL 26250000 262600 TO DATA-ELEMENT-FLAG 26260000 262700 (16, EDIT-COLUMN-INDEX) 26270000 262800 ADD 1 TO DISTRICT-COUNT (16, 1) 26280000 262900 MOVE 1 TO REJECT-RECORD-FLAG 26290000 263000 ELSE 26300000 263100 MOVE 1 TO EB12-FLAG. 26310000 263200* 26320000 263300* 26330000 263400 2370-VALIDATE-STIPEND. 26340000 263500 IF EMPLOYEE-STIPEND 26350000 263600 IN EMPLOYEE-DATA-RECORD 26360000 263700 IS EQUAL TO SPACES 26370000 263800 MOVE VALIDITY-LITERAL 26380000 263900 TO DATA-ELEMENT-FLAG 26390000 264000 (17, EDIT-COLUMN-INDEX) 26400000 264100 ADD 1 TO DISTRICT-COUNT (17, 1) 26410000 264200 MOVE 1 TO REJECT-RECORD-FLAG 26420000 264300 ELSE 26430000 264400 PERFORM 2371-CONTINUE-STIPEND. 26440000 264500* 26450000 264600* 26460000 264700 2371-CONTINUE-STIPEND. 26470000 264800 INSPECT EMPLOYEE-STIPEND 26480000 264900 IN EMPLOYEE-DATA-RECORD 26490000 265000 REPLACING LEADING SPACES BY ZEROS. 26500000 265100 MOVE EMPLOYEE-STIPEND 26510000 265200 IN EMPLOYEE-DATA-RECORD 26520000 265300 TO CHECK-STIPEND. 26530000 265400 IF CHECK-STIPEND NOT NUMERIC 26540000 265500 OR CHECK-STIPEND NOT GREATER THAN 0 26550000 265600 MOVE VALIDITY-LITERAL 26560000 265700 TO DATA-ELEMENT-FLAG 26570000 265800 (17, EDIT-COLUMN-INDEX) 26580000 265900 ADD 1 TO DISTRICT-COUNT (17, 1) 26590000 266000 MOVE 1 TO REJECT-RECORD-FLAG 26600000 266100 ELSE 26610000 266200 MOVE 1 TO EB13-FLAG. 26620000 266300* 26630000 266400* 26640000 266500 2400-INTEGRITY-EDITS. 26650000 266600 IF (EB00-VALID AND EB01-VALID) 26660000 266700 AND NOT EMPLOYEE-ID-IS-LOCAL 26670000 266800 PERFORM 2410-CHECK-IDS. 26680000 266900 IF EB02-VALID AND NOT OTHER-EMPLOYEE 26690000 267000 PERFORM 2415-AGE-REASONABLE-CHECK. 26700000 267100 IF EB07-VALID AND EB11-VALID 26710000 267200 PERFORM 2420-CHECK-CONTRACT. 26720000 267300* IF EB09-VALID AND EB10-VALID 26730000 267400* PERFORM 2430-CHECK-HIRE-DATE. 26740000 267500 IF EB12-VALID AND EB13-VALID 26750000 267600 PERFORM 2440-CHECK-PAY. 26760000 267700 IF EB08-VALID 26770000 267800 PERFORM 2450-CHECK-CLASSIFICATION. 26780000 267900* 26790000 268000* 26800000 268100 2410-CHECK-IDS. 26810000 268200 IF EMPLOYEE-ID-IS-SSN 26820000 268300 AND 26830000 268400 EMPLOYEE-IDENTIFIER IN EMPLOYEE-DATA-RECORD 26840000 268500 IS NOT NUMERIC 26850000 268600 MOVE INTEGRITY-LITERAL 26860000 268700 TO DATA-ELEMENT-FLAG 26870000 268800 (1, EDIT-COLUMN-INDEX) 26880000 268900 MOVE INTEGRITY-LITERAL 26890000 269000 TO DATA-ELEMENT-FLAG 26900000 269100 (5, EDIT-COLUMN-INDEX) 26910000 269200 ADD 1 TO DISTRICT-INT-CNT (1) 26920000 269300 MOVE 1 TO REJECT-RECORD-FLAG 26930000 269400 ELSE 26940000 269500 NEXT SENTENCE. 26950000 269600* 26960000 269700* 26970000 269800 2415-AGE-REASONABLE-CHECK. 26980000 269900 IF NOT TOO-YOUNG AND NOT TOO-OLD 26990000 270000 NEXT SENTENCE 27000000 270100 ELSE 27010000 270200 MOVE REASONABLE-LITERAL 27020000 270300 TO DATA-ELEMENT-FLAG 27030000 270400 (6, EDIT-COLUMN-INDEX) 27040000 270500 MOVE REASONABLE-LITERAL 27050000 270600 TO REASONABLE-FLAG 27060000 270700 ADD 1 TO DISTRICT-COUNT (6, 3). 27070000 270800* 27080000 270900* 27090000 271000 2420-CHECK-CONTRACT. 27100000 271100 IF EEO6-FACULTY AND NOT KNOWN-CONTRACT-LENGTH 27110000 271200 MOVE INTEGRITY-LITERAL 27120000 271300 TO DATA-ELEMENT-FLAG 27130000 271400 (11, EDIT-COLUMN-INDEX) 27140000 271500 MOVE INTEGRITY-LITERAL 27150000 271600 TO DATA-ELEMENT-FLAG 27160000 271700 (15, EDIT-COLUMN-INDEX) 27170000 271800 ADD 1 TO DISTRICT-INT-CNT (5) 27180000 271900 MOVE 1 TO REJECT-RECORD-FLAG 27190000 272000 ELSE 27200000 272100 NEXT SENTENCE. 27210000 272200* 27220000 272300* 27230000 272400*2430-CHECK-HIRE-DATE. 27240000 272500* IF NEW-HIRE 27250000 272600* IF TERM-CODE 27260000 272700* IN RUNTIME-PARAMETER-AREA 27270000 272800* IS EQUAL TO '9' 27280000 272900* PERFORM 2431-CONT-CHECK-HIRE-DATE-FC 27290000 273000* ELSE 27300000 273100* PERFORM 2432-CONT-CHECK-HIRE-DATE-ANL. 27310000 273200* 27320000 273300* 27330000 273400 2431-CONT-CHECK-HIRE-DATE-FC. 27340000 273500 IF (HOLD-HIREDATE 27350000 273600 > EMPLOY-BEGIN-DATE-FIRSTCEN 27360000 273700 OR HOLD-HIREDATE 27370000 273800 = EMPLOY-BEGIN-DATE-FIRSTCEN) 27380000 273900 AND 27390000 274000 (HOLD-HIREDATE 27400000 274100 < EMPLOY-END-DATE-FIRSTCEN 27410000 274200 OR HOLD-HIREDATE 27420000 274300 = EMPLOY-END-DATE-FIRSTCEN) 27430000 274400 NEXT SENTENCE 27440000 274500 ELSE 27450000 274600 MOVE INTEGRITY-LITERAL 27460000 274700 TO DATA-ELEMENT-FLAG 27470000 274800 (13, EDIT-COLUMN-INDEX) 27480000 274900 MOVE INTEGRITY-LITERAL 27490000 275000 TO DATA-ELEMENT-FLAG 27500000 275100 (14, EDIT-COLUMN-INDEX) 27510000 275200 ADD 1 TO DISTRICT-INT-CNT (9) 27520000 275300 MOVE 1 TO REJECT-RECORD-FLAG. 27530000 275400* 27540000 275500* 27550000 275600 2432-CONT-CHECK-HIRE-DATE-ANL. 27560000 275700 IF (HOLD-HIREDATE 27570000 275800 > EMPLOY-BEGIN-DATE-ANNUAL 27580000 275900 OR HOLD-HIREDATE 27590000 276000 = EMPLOY-BEGIN-DATE-ANNUAL) 27600000 276100 AND 27610000 276200 (HOLD-HIREDATE 27620000 276300 < EMPLOY-END-DATE-ANNUAL 27630000 276400 OR HOLD-HIREDATE 27640000 276500 = EMPLOY-END-DATE-ANNUAL) 27650000 276600 NEXT SENTENCE 27660000 276700 ELSE 27670000 276800 MOVE INTEGRITY-LITERAL 27680000 276900 TO DATA-ELEMENT-FLAG 27690000 277000 (13, EDIT-COLUMN-INDEX) 27700000 277100 MOVE INTEGRITY-LITERAL 27710000 277200 TO DATA-ELEMENT-FLAG 27720000 277300 (14, EDIT-COLUMN-INDEX) 27730000 277400 ADD 1 TO DISTRICT-INT-CNT (9) 27740000 277500 MOVE 1 TO REJECT-RECORD-FLAG. 27750000 277600* 27760000 277700* 27770000 277800 2440-CHECK-PAY. 27780000 277900 IF (CHECK-STIPEND IS GREATER THAN 0 27790000 278000 AND NOT STIPEND-NOT-APP) 27800000 278100 IF (NOT SALARY-NOT-APP 27810000 278200 AND 27820000 278300 NOT UNPAID-LEAVE) 27830000 278400 NEXT SENTENCE 27840000 278500 ELSE 27850000 278600 MOVE INTEGRITY-LITERAL 27860000 278700 TO DATA-ELEMENT-FLAG 27870000 278800 (16, EDIT-COLUMN-INDEX) 27880000 278900 MOVE INTEGRITY-LITERAL 27890000 279000 TO DATA-ELEMENT-FLAG 27900000 279100 (17, EDIT-COLUMN-INDEX) 27910000 279200 ADD 1 TO DISTRICT-INT-CNT (12) 27920000 279300 MOVE 1 TO REJECT-RECORD-FLAG. 27930000 279400* 27940000 279500* 27950000 279600 2450-CHECK-CLASSIFICATION. 27960000 279700 IF BIRTH-DATE-NOT-APP 27970000 279800 PERFORM 2451-CHECK-BIRTH-DATE. 27980000 279900 IF CITIZENSHIP-NOT-APP AND EB05-VALID 27990000 280000 PERFORM 2452-CHECK-CITIZENSHIP. 28000000 280100 IF DISABILITY-NOT-APP AND EB06-VALID 28010000 280200 PERFORM 2453-CHECK-DISABILITY. 28020000 280300 IF STATUS-NOT-APP 28030000 280400 PERFORM 2454-CHECK-STATUS. 28040000 280500 IF HIRE-DATE-NOT-APP 28050000 280600 PERFORM 2455-CHECK-HIRE-DATE. 28060000 280700 IF CONTRACT-NOT-APP AND EB11-VALID 28070000 280800 PERFORM 2456-CHECK-CONTRACT. 28080000 280900 IF (OTHER-EMPLOYEE AND EB12-VALID) 28090000 281000 IF TERM-CODE IN EMPLOYEE-DATA-RECORD IS EQUAL TO '9' 28100000 281100 IF EB12-VALID 28110000 281200 PERFORM 2457-CHECK-SALARY. 28120000 281300 IF OTHER-EMPLOYEE 28130000 281400 IF TERM-CODE IN EMPLOYEE-DATA-RECORD IS EQUAL TO '9' 28140000 281500 IF EB13-VALID 28150000 281600 PERFORM 2458-CHECK-STIPEND. 28160000 281700* 28170000 281800* 28180000 281900 2451-CHECK-BIRTH-DATE. 28190000 282000 IF OTHER-EMPLOYEE 28200000 282100 NEXT SENTENCE 28210000 282200 ELSE 28220000 282300 MOVE INTEGRITY-LITERAL 28230000 282400 TO DATA-ELEMENT-FLAG 28240000 282500 (6, EDIT-COLUMN-INDEX) 28250000 282600 MOVE INTEGRITY-LITERAL 28260000 282700 TO DATA-ELEMENT-FLAG 28270000 282800 (12, EDIT-COLUMN-INDEX) 28280000 282900 ADD 1 TO DISTRICT-INT-CNT (2) 28290000 283000 MOVE 1 TO REJECT-RECORD-FLAG. 28300000 283100* 28310000 283200* 28320000 283300 2452-CHECK-CITIZENSHIP. 28330000 283400 IF OTHER-EMPLOYEE 28340000 283500 NEXT SENTENCE 28350000 283600 ELSE 28360000 283700 MOVE INTEGRITY-LITERAL 28370000 283800 TO DATA-ELEMENT-FLAG 28380000 283900 (9, EDIT-COLUMN-INDEX) 28390000 284000 MOVE INTEGRITY-LITERAL 28400000 284100 TO DATA-ELEMENT-FLAG 28410000 284200 (12, EDIT-COLUMN-INDEX) 28420000 284300 ADD 1 TO DISTRICT-INT-CNT (3) 28430000 284400 MOVE 1 TO REJECT-RECORD-FLAG. 28440000 284500* 28450000 284600* 28460000 284700 2453-CHECK-DISABILITY. 28470000 284800 IF OTHER-EMPLOYEE 28480000 284900 NEXT SENTENCE 28490000 285000 ELSE 28500000 285100 MOVE INTEGRITY-LITERAL 28510000 285200 TO DATA-ELEMENT-FLAG 28520000 285300 (10, EDIT-COLUMN-INDEX) 28530000 285400 MOVE INTEGRITY-LITERAL 28540000 285500 TO DATA-ELEMENT-FLAG 28550000 285600 (12, EDIT-COLUMN-INDEX) 28560000 285700 ADD 1 TO DISTRICT-INT-CNT (4) 28570000 285800 MOVE 1 TO REJECT-RECORD-FLAG. 28580000 285900* 28590000 286000* 28600000 286100 2454-CHECK-STATUS. 28610000 286200 IF OTHER-EMPLOYEE 28620000 286300 NEXT SENTENCE 28630000 286400 ELSE 28640000 286500 MOVE INTEGRITY-LITERAL 28650000 286600 TO DATA-ELEMENT-FLAG 28660000 286700 (13, EDIT-COLUMN-INDEX) 28670000 286800 MOVE INTEGRITY-LITERAL 28680000 286900 TO DATA-ELEMENT-FLAG 28690000 287000 (12, EDIT-COLUMN-INDEX) 28700000 287100 ADD 1 TO DISTRICT-INT-CNT (8) 28710000 287200 MOVE 1 TO REJECT-RECORD-FLAG. 28720000 287300* 28730000 287400* 28740000 287500 2455-CHECK-HIRE-DATE. 28750000 287600 IF OTHER-EMPLOYEE 28760000 287700 OR TEMP-EMPLOYEE 28770000 287800 NEXT SENTENCE 28780000 287900 ELSE 28790000 288000 MOVE INTEGRITY-LITERAL 28800000 288100 TO DATA-ELEMENT-FLAG 28810000 288200 (14, EDIT-COLUMN-INDEX) 28820000 288300 MOVE INTEGRITY-LITERAL 28830000 288400 TO DATA-ELEMENT-FLAG 28840000 288500 (12, EDIT-COLUMN-INDEX) 28850000 288600 ADD 1 TO DISTRICT-INT-CNT (10) 28860000 288700 MOVE 1 TO REJECT-RECORD-FLAG. 28870000 288800* 28880000 288900* 28890000 289000 2456-CHECK-CONTRACT. 28900000 289100 IF OTHER-EMPLOYEE 28910000 289200 NEXT SENTENCE 28920000 289300 ELSE 28930000 289400 MOVE INTEGRITY-LITERAL 28940000 289500 TO DATA-ELEMENT-FLAG 28950000 289600 (15, EDIT-COLUMN-INDEX) 28960000 289700 MOVE INTEGRITY-LITERAL 28970000 289800 TO DATA-ELEMENT-FLAG 28980000 289900 (12, EDIT-COLUMN-INDEX) 28990000 290000 ADD 1 TO DISTRICT-INT-CNT (11) 29000000 290100 MOVE 1 TO REJECT-RECORD-FLAG. 29010000 290200* 29020000 290300* 29030000 290400 2457-CHECK-SALARY. 29040000 290500 IF SALARY-NOT-APP 29050000 290600 NEXT SENTENCE 29060000 290700 ELSE 29070000 290800 MOVE INTEGRITY-LITERAL 29080000 290900 TO DATA-ELEMENT-FLAG 29090000 291000 (12, EDIT-COLUMN-INDEX) 29100000 291100 MOVE INTEGRITY-LITERAL 29110000 291200 TO DATA-ELEMENT-FLAG 29120000 291300 (16, EDIT-COLUMN-INDEX) 29130000 291400 ADD 1 TO DISTRICT-INT-CNT (6) 29140000 291500 MOVE 1 TO REJECT-RECORD-FLAG. 29150000 291600* 29160000 291700* 29170000 291800 2458-CHECK-STIPEND. 29180000 291900 IF STIPEND-NOT-APP 29190000 292000 NEXT SENTENCE 29200000 292100 ELSE 29210000 292200 MOVE INTEGRITY-LITERAL 29220000 292300 TO DATA-ELEMENT-FLAG 29230000 292400 (12, EDIT-COLUMN-INDEX) 29240000 292500 MOVE INTEGRITY-LITERAL 29250000 292600 TO DATA-ELEMENT-FLAG 29260000 292700 (17, EDIT-COLUMN-INDEX) 29270000 292800 ADD 1 TO DISTRICT-INT-CNT (7) 29280000 292900 MOVE 1 TO REJECT-RECORD-FLAG. 29290000 293000* 29300000 293100* 29310000 293200 2500-DATE-VALIDATION-ROUTINE. 29320000 293300**************************************************************** 29330000 293400* * 29340000 293500* D A T E V A L I D A T I O N P R O C E D U R E * 29350000 293600* * 29360000 293700* INSTRUCTIONS: * 29370000 293800* 1. MOVE THE DATE TO BE VALIDATED TO THE FOLLOWING * 29380000 293900* FIELDS FOR THE GIVEN FORMATS: * 29390000 294000* A. YYMMDD FORMAT -- MOVE TO: YYMMDD-DATE-WORKAREA * 29400000 294100* B. MMDD FORMAT -- MOVE TO: MMDD-DATE-WORK-FIELDS * 29410000 294200* (NOTE BELOW FOR DETERMINING LEAP YEAR FOR MMDD * 29420000 294300* DATE FORMAT.) * 29430000 294400* C. YYMM FORMAT -- MOVE TO: YYMM-DATE-WORKAREA * 29440000 294500* 2. WHEN PERFORMING THE PROCEDURE THAT USES THIS WORK * 29450000 294600* AREA, FILL IN THE APPROPRIATE DATE-FORMAT-FLAG * 29460000 294700* VALUES: 1, 2 OR 3. SEE 03 LEVEL DATE-FORMAT-FLAG. * 29470000 294800* 3. IF USING THE MMDD-DATE-FORMAT (VALUE 2), THE YEAR * 29480000 294900* YOU WISH TO USE TO DETERMINE IF IT IS A LEAP YEAR * 29490000 295000* MUST BE FILLED IN. MOVE THIS VALUE INTO THE * 29500000 295100* MMDD-YEAR DATA ITEM. DO THIS PRIOR TO PERFORMING * 29510000 295200* THIS PROCEDURE. * 29520000 295300* * 29530000 295400**************************************************************** 29540000 295500 MOVE ZERO TO DATE-FLAGS. 29550000 295600 IF YYMMDD-DATE-FORMAT 29560000 295700 IF YYMMDD-DATE-WORKAREA 29570000 295800 IS NOT NUMERIC 29580000 295900 MOVE DATE-NOT-NUMERIC-FLAG 29590000 296000 TO DATE-VALIDATION-FLAG 29600000 296100 ELSE 29610000 296200 NEXT SENTENCE 29620000 296300 ELSE 29630000 296400 IF MMDD-DATE-FORMAT 29640000 296500 IF MMDD-DATE-WORKAREA 29650000 296600 IS NOT NUMERIC 29660000 296700 MOVE DATE-NOT-NUMERIC-FLAG 29670000 296800 TO DATE-VALIDATION-FLAG 29680000 296900 ELSE 29690000 297000 NEXT SENTENCE 29700000 297100 ELSE 29710000 297200 IF YYMM-DATE-FORMAT 29720000 297300 IF YYMM-DATE-WORKAREA 29730000 297400 IS NOT NUMERIC 29740000 297500 MOVE DATE-NOT-NUMERIC-FLAG 29750000 297600 TO DATE-VALIDATION-FLAG 29760000 297700 ELSE 29770000 297800 NEXT SENTENCE 29780000 297900 ELSE 29790000 298000 MOVE DATE-MISSING-FLAG 29800000 298100 TO DATE-VALIDATION-FLAG. 29810000 298200 IF DATE-NOT-NUMERIC 29820000 298300 OR DATE-MISSING 29830000 298400 NEXT SENTENCE 29840000 298500 ELSE 29850000 298600 PERFORM 1DVP-VALIDATE-DAY-MONTH-RTN. 29860000 298700* 29870000 298800* 29880000 298900 1DVP-VALIDATE-DAY-MONTH-RTN. 29890000 299000 IF YYMMDD-DATE-FORMAT 29900000 299100 MOVE YYMMDD-YEAR 29910000 299200 IN YYMMDD-DATE-WORKAREA 29920000 299300 TO YEAR 29930000 299400 IN CENTURY-WORKAREA 29940000 299500 MOVE YYMMDD-MONTH 29950000 299600 IN YYMMDD-DATE-WORKAREA 29960000 299700 TO MONTH-WORKAREA 29970000 299800 IN MONTH-DAY-WORKAREA 29980000 299900 MOVE YYMMDD-DAY 29990000 300000 IN YYMMDD-DATE-WORKAREA 30000000 300100 TO DAY-WORKAREA 30010000 300200 IN MONTH-DAY-WORKAREA 30020000 300300 ELSE 30030000 300400 IF MMDD-DATE-FORMAT 30040000 300500 MOVE MMDD-YEAR 30050000 300600 IN MMDD-DATE-WORKAREA 30060000 300700 TO YEAR 30070000 300800 IN CENTURY-WORKAREA 30080000 300900 MOVE MMDD-MONTH 30090000 301000 IN MMDD-DATE-WORKAREA 30100000 301100 TO MONTH-WORKAREA 30110000 301200 IN MONTH-DAY-WORKAREA 30120000 301300 MOVE MMDD-DAY 30130000 301400 IN MMDD-DATE-WORKAREA 30140000 301500 TO DAY-WORKAREA 30150000 301600 IN MONTH-DAY-WORKAREA 30160000 301700 ELSE 30170000 301800 IF YYMM-DATE-FORMAT 30180000 301900 MOVE 1 TO DAY-FLAG 30190000 302000 MOVE YYMM-MONTH 30200000 302100 IN YYMM-DATE-WORKAREA 30210000 302200 TO MONTH-WORKAREA 30220000 302300 IN MONTH-DAY-WORKAREA. 30230000 302400 PERFORM 2DVP-VALIDATE-MONTH-ROUTINE. 30240000 302500 IF VALID-MONTH 30250000 302600 AND NOT YYMM-DATE-FORMAT 30260000 302700 PERFORM 3DVP-VALIDATE-DAY-ROUTINE. 30270000 302800 IF VALID-DAY 30280000 302900 AND VALID-MONTH 30290000 303000 MOVE 1 TO DATE-VALIDATION-FLAG. 30300000 303100* 30310000 303200* 30320000 303300 2DVP-VALIDATE-MONTH-ROUTINE. 30330000 303400 IF NOT VALID-MONTH-VALUE 30340000 303500 MOVE ZERO TO MONTH-FLAG 30350000 303600 ELSE 30360000 303700 MOVE 1 TO MONTH-FLAG. 30370000 303800* 30380000 303900* 30390000 304000 3DVP-VALIDATE-DAY-ROUTINE. 30400000 304100 DIVIDE CENTURY-FOR-COMPUTATION 30410000 304200 BY DIVISOR-FOR-LEAP-YEAR 30420000 304300 GIVING LEAP-YEAR-QUOTIENT 30430000 304400 REMAINDER LEAP-YEAR-REMAINDER. 30440000 304500 IF YYMMDD-YEAR = 00 30450000 304600 MOVE 01 TO LEAP-YEAR-REMAINDER 30460000 304700 IN LEAP-YEAR-WORK. 30470000 304800 MOVE MONTH-WORKAREA 30480000 304900 TO MAXIMUM-DAY-FLAG. 30490000 305000 IF THIRTY-DAY-MONTH 30500000 305100 AND DAY-WORKAREA 30510000 305200 IS GREATER THAN MONTH-OF-30-DAYS 30520000 305300 MOVE ZERO TO DAY-FLAG 30530000 305400 ELSE 30540000 305500 IF THIRTY-ONE-DAY-MONTH 30550000 305600 AND DAY-WORKAREA 30560000 305700 IS GREATER THAN MONTH-OF-31-DAYS 30570000 305800 MOVE ZERO TO DAY-FLAG 30580000 305900 ELSE 30590000 306000 IF FEBRUARY 30600000 306100 IN DATE-VALIDATION-WORKAREA 30610000 306200 IF LEAP-YEAR 30620000 306300 AND DAY-WORKAREA 30630000 306400 IS GREATER THAN MONTH-OF-29-DAYS 30640000 306500 MOVE ZERO TO DAY-FLAG 30650000 306600 ELSE 30660000 306700 IF NOT LEAP-YEAR 30670000 306800 AND DAY-WORKAREA 30680000 306900 IS GREATER THAN MONTH-OF-28-DAYS 30690000 307000 MOVE ZERO TO DAY-FLAG 30700000 307100 ELSE 30710000 307200 MOVE 1 TO DAY-FLAG 30720000 307300 ELSE 30730000 307400 MOVE 1 TO DAY-FLAG. 30740000 307500 IF DAY-WORKAREA 30750000 307600 IS LESS THAN 1 30760000 307700 MOVE ZERO TO DAY-FLAG. 30770000 307800* 30780000 307900* 30790000 308000 2600-READ-EMPLOYEE-RECORD. 30800000 308100 READ EMPLOYEE-DATA-FILE 30810000 308200 AT END 30820000 308300 MOVE 1 TO END-OF-DATA-FLAG. 30830000 308400 IF EMPLOYEE-DATA-RECORD 30840000 308500 NOT EQUAL TO SPACES 30850000 308600 MOVE 0 TO BLANK-REC-FLAG. 30860000 308700* 30870000 308800* 30880000 308900 3000-OUTPUT-EDITED-DATA. 30890000 309000 PERFORM 3010-ADJUST-DATES. 30900000 309100 MOVE DISTRICT-ID 30910000 309200 IN EMPLOYEE-DATA-RECORD 30920000 309300 TO DISTRICT-ID 30930000 309400 IN EDITED-EMPLOYEE-DATA-RECORD. 30940000 309900 MOVE EMPLOYEE-IDENTIFIER 30990000 310000 IN EMPLOYEE-DATA-RECORD 31000000 310100 TO EMPLOYEE-IDENTIFIER 31010000 310200 IN EDITED-EMPLOYEE-DATA-RECORD. 31020000 310300 MOVE EMPLOYEE-IDENTIFIER-STATUS 31030000 310400 IN EMPLOYEE-DATA-RECORD 31040000 310500 TO EMPLOYEE-IDENTIFIER-STATUS 31050000 310600 IN EDITED-EMPLOYEE-DATA-RECORD. 31060000 309500 MOVE TERM-IDENTIFIER 30950000 309600 IN EMPLOYEE-DATA-RECORD 30960000 309700 TO TERM-IDENTIFIER 30970000 309800 IN EDITED-EMPLOYEE-DATA-RECORD. 30980000 310700 MOVE EMPLOYEE-BIRTHDATE 31070000 310800 IN EMPLOYEE-DATA-RECORD 31080000 310900 TO EMPLOYEE-BIRTHDATE 31090000 311000 IN EDITED-EMPLOYEE-DATA-RECORD. 31100000 311100 MOVE COMPUTED-AGE 31110000 311200 TO EMPLOYEE-AGE 31120000 311300 IN EDITED-EMPLOYEE-DATA-RECORD. 31130000 311400 MOVE EMPLOYEE-GENDER 31140000 311500 IN EMPLOYEE-DATA-RECORD 31150000 311600 TO EMPLOYEE-GENDER 31160000 311700 IN EDITED-EMPLOYEE-DATA-RECORD. 31170000 311800 MOVE EMPLOYEE-RACIAL-ETHNIC-CODE 31180000 311900 IN EMPLOYEE-DATA-RECORD 31190000 312000 TO EMPLOYEE-RACIAL-ETHNIC-CODE 31200000 312100 IN EDITED-EMPLOYEE-DATA-RECORD. 31210000 312200 MOVE EMPLOYEE-CITIZENSHIP 31220000 312300 IN EMPLOYEE-DATA-RECORD 31230000 312400 TO EMPLOYEE-CITIZENSHIP 31240000 312500 IN EDITED-EMPLOYEE-DATA-RECORD. 31250000 312600 MOVE EMPLOYEE-DISABILITY-STATUS 31260000 312700 IN EMPLOYEE-DATA-RECORD 31270000 312800 TO EMPLOYEE-DISABILITY-STATUS 31280000 312900 IN EDITED-EMPLOYEE-DATA-RECORD. 31290000 313000 MOVE EMPLOYEE-EEO6-ACTIVITY 31300000 313100 IN EMPLOYEE-DATA-RECORD 31310000 313200 TO EMPLOYEE-EEO6-ACTIVITY 31320000 313300 IN EDITED-EMPLOYEE-DATA-RECORD. 31330000 313400 MOVE EMPLOYEE-CLASSIFICATION 31340000 313500 IN EMPLOYEE-DATA-RECORD 31350000 313600 TO EMPLOYEE-CLASSIFICATION 31360000 313700 IN EDITED-EMPLOYEE-DATA-RECORD. 31370000 313800 MOVE EMPLOYEE-STATUS 31380000 313900 IN EMPLOYEE-DATA-RECORD 31390000 314000 TO EMPLOYEE-STATUS 31400000 314100 IN EDITED-EMPLOYEE-DATA-RECORD. 31410000 314200 MOVE EMPLOYEE-DATE-EMPLOYED 31420000 314300 IN EMPLOYEE-DATA-RECORD 31430000 314400 TO EMPLOYEE-DATE-EMPLOYED 31440000 314500 IN EDITED-EMPLOYEE-DATA-RECORD. 31450000 314600 MOVE EMPLOYEE-CONTRACT 31460000 314700 IN EMPLOYEE-DATA-RECORD 31470000 314800 TO EMPLOYEE-CONTRACT 31480000 314900 IN EDITED-EMPLOYEE-DATA-RECORD. 31490000 315000 MOVE EMPLOYEE-SALARY 31500000 315100 IN EMPLOYEE-DATA-RECORD 31510000 315200 TO EMPLOYEE-SALARY 31520000 315300 IN EDITED-EMPLOYEE-DATA-RECORD. 31530000 315400 MOVE EMPLOYEE-STIPEND 31540000 315500 IN EMPLOYEE-DATA-RECORD 31550000 315600 TO EMPLOYEE-STIPEND 31560000 315700 IN EDITED-EMPLOYEE-DATA-RECORD. 31570000 315800 WRITE EDITED-EMPLOYEE-DATA-RECORD. 31580000 315900 ADD 1 TO DISTRICT-EDITED-RECS-WRITTEN. 31590000 316000* 31600000 316100* 31610000 316200 3010-ADJUST-DATES. 31620000 316300 IF BIRTH-DATE-UNKNOWN 31630000 316400 MOVE 99 TO COMPUTED-AGE 31640000 316500 MOVE UNKNOWN-DATE 31650000 316600 TO EMPLOYEE-BIRTHDATE 31660000 316700 IN EMPLOYEE-DATA-RECORD 31670000 316800 ELSE 31680000 316900 IF BIRTH-DAY-UNKNOWN 31690000 317000 MOVE 01 31700000 317100 TO EMPLOYEE-BIRTH-DAY 31710000 317200 IN EMPLOYEE-DATA-RECORD 31720000 317300 ELSE 31730000 317400 IF BIRTH-DATE-NOT-APP 31740000 317500 MOVE 99 TO COMPUTED-AGE 31750000 317600 MOVE NOT-APPL-DATE 31760000 317700 TO EMPLOYEE-BIRTHDATE 31770000 317800 IN EMPLOYEE-DATA-RECORD. 31780000 317900 IF HIRE-DATE-UNKNOWN 31790000 318000 ADD 1 TO DISTRICT-COUNT (14, 2) 31800000 318100 MOVE UNKNOWN-DATE 31810000 318200 TO EMPLOYEE-DATE-EMPLOYED 31820000 318300 IN EMPLOYEE-DATA-RECORD 31830000 318400 ELSE 31840000 318500 IF HIRE-DAY-UNKNOWN 31850000 318600 MOVE 01 31860000 318700 TO EMPLOYEE-HIRE-DAY 31870000 318800 IN EMPLOYEE-DATA-RECORD 31880000 318900 ELSE 31890000 319000 IF HIRE-DATE-NOT-APP 31900000 319100 MOVE NOT-APPL-DATE 31910000 319200 TO EMPLOYEE-DATE-EMPLOYED 31920000 319300 IN EMPLOYEE-DATA-RECORD. 31930000 319400* 31940000 319500* 31950000 319600 4100A-PRINT-TOTAL-LINES. 31960000 319700 MOVE TOTAL-DESCRIPTION 31970000 319800 IN TOTAL-DESCRIPTIONS-ENTRY 31980000 319900 (TOTAL-DESCRIPTIONS-INDEX) 31990000 320000 TO TOTAL-DESCRIPTION 32000000 320100 IN TOTAL-DETAIL-LINE. 32010000 320200 MOVE DISTRICT-TOTAL 32020000 320300 IN DISTRICT-TOTAL-ENTRY 32030000 320400 (DISTRICT-TOTAL-INDEX) 32040000 320500 TO TOTAL-FIELD 32050000 320600 IN TOTAL-DETAIL-LINE. 32060000 320700 WRITE PRINT-RECORD-2 32070000 320800 FROM TOTAL-DETAIL-LINE 32080000 320900 AFTER ADVANCING 1 LINE. 32090000 321000 MOVE SPACES TO TOTAL-DETAIL-LINE. 32100000 321100 SET ORIGINAL-INDEX-VALUE 32110000 321200 TO DISTRICT-TOTAL-INDEX. 32120000 321300 SEARCH DISTRICT-TOTAL-ENTRY 32130000 321400 AT END 32140000 321500 MOVE 1 TO TABLE-SEARCH-FLAG 32150000 321600 WHEN ORIGINAL-INDEX-VALUE 32160000 321700 IS NOT EQUAL TO DISTRICT-TOTAL-INDEX 32170000 321800 PERFORM 4150-BUMP-DESCRIPTOR-INDEX. 32180000 321900* 32190000 322000* 32200000 322100 4100B-OUTPUT-TOTALS-RECORD. 32210000 322200 MOVE REPORT-SUM3 TO TOTALS-ID3. 32220000 322300 MOVE DISTRICT-RECORDS-READ 32230000 322400 TO READ-TOTALS. 32240000 322500 MOVE DISTRICT-RECORDS-REJECTED 32250000 322600 TO REJECTED-TOTALS. 32260000 322700 MOVE DATE-HOLD TO DATE-FLAG. 32270000 322800 MOVE HH-MM TO TIME-FLAG. 32280000 322900 WRITE REPORT-TOTALS-RECORD3. 32290000 323000* 32300000 323100* 32310000 323200 4150-BUMP-DESCRIPTOR-INDEX. 32320000 323300 SEARCH TOTAL-DESCRIPTIONS-ENTRY 32330000 323400 AT END 32340000 323500 MOVE 1 TO TABLE-SEARCH-FLAG 32350000 323600 WHEN TOTAL-DESCRIPTIONS-INDEX 32360000 323700 IS EQUAL TO DISTRICT-TOTAL-INDEX 32370000 323800 NEXT SENTENCE. 32380000 323900* 32390000 324000* 32400000 324100 4200-PRINT-ERROR-TOTALS. 32410000 324200 MOVE REPORT-SUM1 TO TOTALS-ID1. 32420000 324300 MOVE ELEMENT-NUMBER 32430000 324400 (EDIT-ERROR-LITERAL-INDEX) 32440000 324500 TO DED-NUMBER. 32450000 324600 PERFORM 4210A-OUTPUT-TOTALS-RECORD. 32460000 324700 MOVE DATA-ELEMENT-LITERAL 32470000 324800 (EDIT-ERROR-LITERAL-INDEX) 32480000 324900 TO ELEMENT-LITERAL-AREA. 32490000 325000 SET ELEMENT-COLUMN-INDEX TO 1. 32500000 325100 SET ERROR-COUNT-COL-INDEX TO 1. 32510000 325200 PERFORM 4210B-FILL-ELEMENT-TOTAL-LINE 32520000 325300 UNTIL ELEMENT-COLUMN-INDEX > 4. 32530000 325400 WRITE PRINT-RECORD-2 32540000 325500 FROM ELEMENT-TOTAL-DETAIL-LINE 32550000 325600 AFTER ADVANCING 1 LINE. 32560000 325700 SET ORIGINAL-INDEX-VALUE 32570000 325800 TO ERROR-COUNT-ROW-INDEX. 32580000 325900 SEARCH EDIT-ERROR-COUNT-ROWS 32590000 326000 AT END 32600000 326100 MOVE 1 TO TABLE-SEARCH-FLAG 32610000 326200 WHEN ORIGINAL-INDEX-VALUE 32620000 326300 IS NOT EQUAL TO ERROR-COUNT-ROW-INDEX 32630000 326400 PERFORM 4250-BUMP-DESCRIPTOR-INDEX. 32640000 326500* 32650000 326600* 32660000 326700 4210A-OUTPUT-TOTALS-RECORD. 32670000 326800 MOVE ERROR-COUNT (ERROR-COUNT-ROW-INDEX, 1) 32680000 326900 TO EXCEPT-COUNT. 32690000 327000 MOVE ERROR-COUNT (ERROR-COUNT-ROW-INDEX, 2) 32700000 327100 TO UNKNOWN-COUNT. 32710000 327200 MOVE ERROR-COUNT (ERROR-COUNT-ROW-INDEX, 3) 32720000 327300 TO REASON-COUNT. 32730000 327400 WRITE REPORT-TOTALS-RECORD1. 32740000 327500* 32750000 327600* 32760000 327700 4210B-FILL-ELEMENT-TOTAL-LINE. 32770000 327800 IF (ERROR-COUNT-ROW-INDEX < 8 AND 32780000 327900 ERROR-COUNT-COL-INDEX = 2) OR 32790000 328000 (ERROR-COUNT-ROW-INDEX < 14 AND 32800000 328100 ERROR-COUNT-ROW-INDEX > 8 AND 32810000 328200 ERROR-COUNT-COL-INDEX = 2) OR 32820000 328300 (ERROR-COUNT-ROW-INDEX > 14 AND 32830000 328400 ERROR-COUNT-COL-INDEX = 2) OR 32840000 328500 (ERROR-COUNT-ROW-INDEX < 6 AND 32850000 328600 ERROR-COUNT-COL-INDEX = 3) OR 32860000 328700 (ERROR-COUNT-ROW-INDEX > 6 AND 32870000 328800 ERROR-COUNT-COL-INDEX = 3) OR 32880000 328900 (ERROR-COUNT-ROW-INDEX < 18 AND 32890000 329000 ERROR-COUNT-COL-INDEX = 4) 32900000 329100 MOVE NOT-APP-LITERAL 32910000 329200 TO ELEMENT-TOTAL-RED 32920000 329300 (ELEMENT-COLUMN-INDEX) 32930000 329400 ELSE 32940000 329500 MOVE ERROR-COUNT 32950000 329600 (ERROR-COUNT-ROW-INDEX, 32960000 329700 ERROR-COUNT-COL-INDEX) 32970000 329800 TO ELEMENT-TOTAL 32980000 329900 (ELEMENT-COLUMN-INDEX). 32990000 330000 SET ELEMENT-COLUMN-INDEX UP BY 1. 33000000 330100 SET ERROR-COUNT-COL-INDEX UP BY 1. 33010000 330200* 33020000 330300* 33030000 330400 4250-BUMP-DESCRIPTOR-INDEX. 33040000 330500 SEARCH EDIT-ERROR-LITERAL-ENTRY 33050000 330600 AT END 33060000 330700 MOVE 1 TO TABLE-SEARCH-FLAG 33070000 330800 WHEN EDIT-ERROR-LITERAL-INDEX 33080000 330900 IS EQUAL TO ERROR-COUNT-ROW-INDEX 33090000 331000 NEXT SENTENCE. 33100000 331100* 33110000 331200* 33120000 331300 4290-WRITE-COUNT-HEADERS. 33130000 331400 WRITE PRINT-RECORD-2 FROM REPORT-TITLE-LINE-5 33140000 331500 AFTER ADVANCING 2 LINES. 33150000 331600 WRITE PRINT-RECORD-2 FROM ELEMENT-COLUMN-LINE-1 33160000 331700 AFTER ADVANCING 2 LINES. 33170000 331800 WRITE PRINT-RECORD-2 FROM ELEMENT-COLUMN-LINE-2 33180000 331900 AFTER ADVANCING 1 LINES. 33190000 332000 WRITE PRINT-RECORD-2 FROM ELEMENT-COLUMN-LINE-3 33200000 332100 AFTER ADVANCING 1 LINES. 33210000 332200 MOVE SPACES TO PRINT-RECORD-2. 33220000 332300 WRITE PRINT-RECORD-2 AFTER ADVANCING 1 LINES. 33230000 332400* 33240000 332500* 33250000 332600 4500-WRITE-INTEGRITY-HEADERS. 33260000 332700 WRITE PRINT-RECORD-2 FROM REPORT-TITLE-LINE-7 33270000 332800 AFTER ADVANCING 2 LINES. 33280000 332900 MOVE SPACES TO PRINT-RECORD-2. 33290000 333000 WRITE PRINT-RECORD-2 AFTER ADVANCING 1 LINES. 33300000 333100* 33310000 333200* 33320000 333300 4600-WRITE-INTEGRITY-COUNTS. 33330000 333400 MOVE REPORT-SUM2 TO TOTALS-ID2. 33340000 333500 MOVE DISTRICT-INT-CNT (1) 33350000 333600 TO INT-CNT-OUT-1, INTEGRITY-ERROR-COUNT. 33360000 333700 MOVE '01' TO INTEGRITY-ERROR-CODE. 33370000 333800 WRITE REPORT-TOTALS-RECORD2. 33380000 333900 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-1 33390000 334000 AFTER ADVANCING 2 LINES. 33400000 334100 MOVE REPORT-SUM2 TO TOTALS-ID2. 33410000 334200 MOVE DISTRICT-INT-CNT (2) 33420000 334300 TO INT-CNT-OUT-2, INTEGRITY-ERROR-COUNT. 33430000 334400 MOVE '02' TO INTEGRITY-ERROR-CODE. 33440000 334500 WRITE REPORT-TOTALS-RECORD2. 33450000 334600 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-2 33460000 334700 AFTER ADVANCING 2 LINES. 33470000 334800 MOVE REPORT-SUM2 TO TOTALS-ID2. 33480000 334900 MOVE DISTRICT-INT-CNT (3) 33490000 335000 TO INT-CNT-OUT-3, INTEGRITY-ERROR-COUNT. 33500000 335100 MOVE '03' TO INTEGRITY-ERROR-CODE. 33510000 335200 WRITE REPORT-TOTALS-RECORD2. 33520000 335300 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-3 33530000 335400 AFTER ADVANCING 2 LINES. 33540000 335500 MOVE REPORT-SUM2 TO TOTALS-ID2. 33550000 335600 MOVE DISTRICT-INT-CNT (4) 33560000 335700 TO INT-CNT-OUT-4, INTEGRITY-ERROR-COUNT. 33570000 335800 MOVE '04' TO INTEGRITY-ERROR-CODE. 33580000 335900 WRITE REPORT-TOTALS-RECORD2. 33590000 336000 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-4 33600000 336100 AFTER ADVANCING 2 LINES. 33610000 336200 MOVE REPORT-SUM2 TO TOTALS-ID2. 33620000 336300 MOVE DISTRICT-INT-CNT (5) 33630000 336400 TO INT-CNT-OUT-5, INTEGRITY-ERROR-COUNT. 33640000 336500 MOVE '05' TO INTEGRITY-ERROR-CODE. 33650000 336600 WRITE REPORT-TOTALS-RECORD2. 33660000 336700 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-5 33670000 336800 AFTER ADVANCING 2 LINES. 33680000 336900 MOVE REPORT-SUM2 TO TOTALS-ID2. 33690000 337000 MOVE DISTRICT-INT-CNT (6) 33700000 337100 TO INT-CNT-OUT-6, INTEGRITY-ERROR-COUNT. 33710000 337200 MOVE '06' TO INTEGRITY-ERROR-CODE. 33720000 337300 WRITE REPORT-TOTALS-RECORD2. 33730000 337400 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-6 33740000 337500 AFTER ADVANCING 2 LINES. 33750000 337600 MOVE REPORT-SUM2 TO TOTALS-ID2. 33760000 337700 MOVE DISTRICT-INT-CNT (7) 33770000 337800 TO INT-CNT-OUT-7, INTEGRITY-ERROR-COUNT. 33780000 337900 MOVE '07' TO INTEGRITY-ERROR-CODE. 33790000 338000 WRITE REPORT-TOTALS-RECORD2. 33800000 338100 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-7 33810000 338200 AFTER ADVANCING 2 LINES. 33820000 338300 MOVE REPORT-SUM2 TO TOTALS-ID2. 33830000 338400 MOVE DISTRICT-INT-CNT (8) 33840000 338500 TO INT-CNT-OUT-8, INTEGRITY-ERROR-COUNT. 33850000 338600 MOVE '08' TO INTEGRITY-ERROR-CODE. 33860000 338700 WRITE REPORT-TOTALS-RECORD2. 33870000 338800 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-8 33880000 338900 AFTER ADVANCING 2 LINES. 33890000 339000 MOVE REPORT-SUM2 TO TOTALS-ID2. 33900000 339100 MOVE DISTRICT-INT-CNT (9) 33910000 339200 TO INT-CNT-OUT-9, INTEGRITY-ERROR-COUNT. 33920000 339300 MOVE '09' TO INTEGRITY-ERROR-CODE. 33930000 339400 WRITE REPORT-TOTALS-RECORD2. 33940000 339500 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-9 33950000 339600 AFTER ADVANCING 2 LINES. 33960000 339700 MOVE REPORT-SUM2 TO TOTALS-ID2. 33970000 339800 MOVE DISTRICT-INT-CNT (10) 33980000 339900 TO INT-CNT-OUT-A, INTEGRITY-ERROR-COUNT. 33990000 340000 MOVE '10' TO INTEGRITY-ERROR-CODE. 34000000 340100 WRITE REPORT-TOTALS-RECORD2. 34010000 340200 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-A 34020000 340300 AFTER ADVANCING 2 LINES. 34030000 340400 MOVE REPORT-SUM2 TO TOTALS-ID2. 34040000 340500 MOVE DISTRICT-INT-CNT (11) 34050000 340600 TO INT-CNT-OUT-B, INTEGRITY-ERROR-COUNT. 34060000 340700 MOVE '11' TO INTEGRITY-ERROR-CODE. 34070000 340800 WRITE REPORT-TOTALS-RECORD2. 34080000 340900 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-B 34090000 341000 AFTER ADVANCING 2 LINES. 34100000 341100 MOVE REPORT-SUM2 TO TOTALS-ID2. 34110000 341200 MOVE DISTRICT-INT-CNT (12) 34120000 341300 TO INT-CNT-OUT-C, INTEGRITY-ERROR-COUNT. 34130000 341400 MOVE '12' TO INTEGRITY-ERROR-CODE. 34140000 341500 WRITE REPORT-TOTALS-RECORD2. 34150000 341600 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-C 34160000 341700 AFTER ADVANCING 2 LINES. 34170000 341800* 34180000 341900* 34190000 342000 4700-ADD-TO-DIST-INTEGRITY. 34200000 342100 ADD DISTRICT-INT-CNT (1) 34210000 342200 TO DISTRICT-INT-CNT (1). 34220000 342300 ADD DISTRICT-INT-CNT (2) 34230000 342400 TO DISTRICT-INT-CNT (2). 34240000 342500 ADD DISTRICT-INT-CNT (3) 34250000 342600 TO DISTRICT-INT-CNT (3). 34260000 342700 ADD DISTRICT-INT-CNT (4) 34270000 342800 TO DISTRICT-INT-CNT (4). 34280000 342900 ADD DISTRICT-INT-CNT (5) 34290000 343000 TO DISTRICT-INT-CNT (5). 34300000 343100 ADD DISTRICT-INT-CNT (6) 34310000 343200 TO DISTRICT-INT-CNT (6). 34320000 343300 ADD DISTRICT-INT-CNT (7) 34330000 343400 TO DISTRICT-INT-CNT (7). 34340000 343500 ADD DISTRICT-INT-CNT (8) 34350000 343600 TO DISTRICT-INT-CNT (8). 34360000 343700 ADD DISTRICT-INT-CNT (9) 34370000 343800 TO DISTRICT-INT-CNT (9). 34380000 343900 ADD DISTRICT-INT-CNT (10) 34390000 344000 TO DISTRICT-INT-CNT (10). 34400000 344100 ADD DISTRICT-INT-CNT (11) 34410000 344200 TO DISTRICT-INT-CNT (11). 34420000 344300 ADD DISTRICT-INT-CNT (12) 34430000 344400 TO DISTRICT-INT-CNT (12). 34440000 344500* 34450000 344600* 34460000 344700 5000-PRINT-ERROR-REPORT. 34470000 344800 IF PRINT-ALL OR PRINT-LINE-COUNT < PRINT-LIMIT 34480000 344900 MOVE ZERO TO TABLE-SEARCH-FLAG 34490000 345000 SET EDIT-ROW-INDEX TO 1 34500000 345100 SET EDIT-ERROR-LITERAL-INDEX TO 1 34510000 345200 PERFORM 5000A-CHECK-FOR-HEADERS 34520000 345300 PERFORM 5100-PRINT-DETAIL-LINES 34530000 345400 UNTIL TABLE-SEARCH-COMPLETE 34540000 345500 MOVE SPACES TO PRINT-RECORD 34550000 345600 WRITE PRINT-RECORD AFTER ADVANCING 1 LINE. 34560000 345700 MOVE SPACES TO EDIT-ERROR-TABLE. 34570000 345800 SET EDIT-COLUMN-INDEX TO 1. 34580000 345900 IF PRINT-LINE-COUNT < PRINT-LIMIT 34590000 346000 ADD 1 TO PRINT-LINE-COUNT. 34600000 346100* 34610000 346200* 34620000 346300 5000A-CHECK-FOR-HEADERS. 34630000 346400 IF PAGE-FULL 34640000 346500 MOVE REPORT-ID TO PROGRAM-NAME 34650000 346600 MOVE HOLD-DISTRICT-NAME 34660000 346700 TO DISTRICT-NAME 34670000 346800 IN REPORT-TITLE-LINE-3 34680000 346900 PERFORM 8500-REPORT-HEADINGS 34690000 347000 WRITE PRINT-RECORD 34700000 347100 FROM REPORT-TITLE-LINE-3A 34710000 347200 AFTER ADVANCING 2 LINES 34720000 347300 WRITE PRINT-RECORD 34730000 347400 FROM REPORT-COLUMN-TITLES 34740000 347500 AFTER ADVANCING 2 LINES 34750000 347600 MOVE ZERO TO PAGE-FULL-FLAG. 34760000 347700 ADD 1 TO PAGE-FULL-FLAG. 34770000 347800* 34780000 347900* 34790000 348000 5100-PRINT-DETAIL-LINES. 34800000 348100 MOVE DATA-ELEMENT-LITERAL 34810000 348200 IN EDIT-ERROR-LITERAL-ENTRY 34820000 348300 (EDIT-ERROR-LITERAL-INDEX) 34830000 348400 TO DETAIL-LITERAL-AREA 34840000 348500 IN EDIT-ERROR-PRINT-LINE. 34850000 348600 SET EDIT-COLUMN-INDEX TO 1. 34860000 348700 SET EDIT-ERROR-DATA-INDEX TO 1. 34870000 348800 MOVE ZERO TO PRINT-LINE-FLAG. 34880000 348900 PERFORM 5200-FILL-PRINT-LINE 34890000 349000 UNTIL PRINT-LINE-FILLED. 34900000 349100 WRITE PRINT-RECORD 34910000 349200 FROM EDIT-ERROR-PRINT-LINE 34920000 349300 AFTER ADVANCING 1 LINE. 34930000 349400 MOVE SPACES TO EDIT-ERROR-PRINT-LINE. 34940000 349500 SET ORIGINAL-INDEX-VALUE 34950000 349600 TO EDIT-ROW-INDEX. 34960000 349700 SEARCH EDIT-ERROR-ROWS 34970000 349800 AT END 34980000 349900 MOVE 1 TO TABLE-SEARCH-FLAG 34990000 350000 WHEN ORIGINAL-INDEX-VALUE 35000000 350100 IS NOT EQUAL TO EDIT-ROW-INDEX 35010000 350200 PERFORM 5150-BUMP-LITERAL-INDEX. 35020000 350300* 35030000 350400* 35040000 350500 5150-BUMP-LITERAL-INDEX. 35050000 350600 SEARCH EDIT-ERROR-LITERAL-ENTRY 35060000 350700 AT END 35070000 350800 MOVE 1 TO TABLE-SEARCH-FLAG 35080000 350900 WHEN EDIT-ERROR-LITERAL-INDEX 35090000 351000 IS EQUAL TO EDIT-ROW-INDEX 35100000 351100 NEXT SENTENCE. 35110000 351200* 35120000 351300* 35130000 351400 5200-FILL-PRINT-LINE. 35140000 351500 MOVE DATA-ELEMENT 35150000 351600 IN EDIT-ERROR-COLUMNS 35160000 351700 (EDIT-ROW-INDEX 35170000 351800 EDIT-COLUMN-INDEX) 35180000 351900 TO DATA-ELEMENT-OUT 35190000 352000 IN EDIT-ERROR-PRINT-LINE 35200000 352100 (EDIT-ERROR-DATA-INDEX). 35210000 352200 MOVE DATA-ELEMENT-FLAG 35220000 352300 IN EDIT-ERROR-COLUMNS 35230000 352400 (EDIT-ROW-INDEX 35240000 352500 EDIT-COLUMN-INDEX) 35250000 352600 TO VALIDATION-FLAG 35260000 352700 IN EDIT-ERROR-PRINT-LINE 35270000 352800 (EDIT-ERROR-DATA-INDEX). 35280000 352900 SET ORIGINAL-INDEX-VALUE 35290000 353000 TO EDIT-COLUMN-INDEX. 35300000 353100 SEARCH EDIT-ERROR-COLUMNS 35310000 353200 AT END 35320000 353300 MOVE 1 TO PRINT-LINE-FLAG 35330000 353400 WHEN ORIGINAL-INDEX-VALUE 35340000 353500 IS NOT EQUAL EDIT-COLUMN-INDEX 35350000 353600 PERFORM 5250-BUMP-DETAIL-LINE-INDEX. 35360000 353700* 35370000 353800* 35380000 353900 5250-BUMP-DETAIL-LINE-INDEX. 35390000 354000 SEARCH EDIT-ERROR-DATA-ENTRY 35400000 354100 AT END 35410000 354200 MOVE 1 TO PRINT-LINE-FLAG 35420000 354300 WHEN EDIT-ERROR-DATA-INDEX 35430000 354400 IS EQUAL TO EDIT-COLUMN-INDEX 35440000 354500 NEXT SENTENCE. 35450000 354600 35460000 354700 35470000 354800 8500-REPORT-HEADINGS. 35480000 354900 MOVE SPACES TO PRINT-RECORD. 35490000 355000 MOVE ZEROS TO REPORT-LINE-COUNTER. 35500000 355100 ADD 1 TO REPORT-PAGE-COUNTER. 35510000 355200 MOVE REPORT-PAGE-COUNTER 35520000 355300 TO HEADER-PAGE-NUMBER. 35530000 355400 IF FIRST-PAGE 35540000 355500 PERFORM 1HDR-FIRST-PAGE-ROUTINE. 35550000 355600 IF NARROW-PAPER-REQUIRED 35560000 355700 PERFORM 2HDR-NARROW-PAPER-ROUTINE 35570000 355800 ELSE 35580000 355900 PERFORM 3HDR-WIDE-PAPER-ROUTINE. 35590000 356000 PERFORM 7HDR-USER-SUPPLIED-HEADINGS. 35600000 356100* 35610000 356200* 35620000 356300 1HDR-FIRST-PAGE-ROUTINE. 35630000 356400 ACCEPT REPORT-DATE 35640000 356500 IN HEADER-HOLDING-AREA 35650000 356600 FROM DATE. 35660000 356700 ACCEPT REPORT-TIME 35670000 356800 IN HEADER-HOLDING-AREA 35680000 356900 FROM TIME. 35690000 357000 MOVE FULL-MONTH-NAME 35700000 357100 IN HEADER-MONTH-TABLE 35710000 357200 (REPORT-MONTH) 35720000 357300 TO HEADER-MONTH. 35730000 357400 MOVE REPORT-DAY 35740000 357500 IN HEADER-HOLDING-AREA 35750000 357600 TO HEADER-DAY 35760000 357700 IN HEADER-STATISTICS. 35770000 357800 MOVE REPORT-YEAR 35780000 357900 IN HEADER-HOLDING-AREA 35790000 358000 TO HEADER-YEAR 35800000 358100 IN HEADER-STATISTICS. 35810000 358200 MOVE ACTUAL-CLOCK-TIME 35820000 358300 IN HEADER-HOLDING-AREA 35830000 358400 TO HEADER-TIME 35840000 358500 IN HEADER-STATISTICS. 35850000 358600 MOVE ZERO TO FIRST-PAGE-SWITCH. 35860000 358700 INSPECT HEADER-TIME-AREA 35870000 358800 REPLACING ALL '/' 35880000 358900 BY ':'. 35890000 359000* 35900000 359100* 35910000 359200 2HDR-NARROW-PAPER-ROUTINE. 35920000 359300 MOVE COMMUNITY-COLLEGE-TITLE 35930000 359400 IN HEADER-HOLDING-AREA 35940000 359500 TO HEADING-TITLE-LINE. 35950000 359600 WRITE PRINT-RECORD 35960000 359700 FROM HEADING-LINE 35970000 359800 AFTER ADVANCING PAGE. 35980000 359900 MOVE SPACES TO HEADING-LINE. 35990000 360000 MOVE MIS-PILOT-TITLE 36000000 360100 IN HEADER-HOLDING-AREA 36010000 360200 TO HEADING-TITLE-LINE. 36020000 360300 WRITE PRINT-RECORD 36030000 360400 FROM HEADING-LINE 36040000 360500 AFTER ADVANCING 1 LINE. 36050000 360600 MOVE SPACES TO HEADING-LINE. 36060000 360700 MOVE HEADER-REPORT-TIME 36070000 360800 TO LEFT-STATISTIC. 36080000 360900 MOVE HEADER-REPORT-PAGE 36090000 361000 TO NARROW-RIGHT-STATISTIC. 36100000 361100 WRITE PRINT-RECORD 36110000 361200 FROM HEADING-LINE 36120000 361300 AFTER ADVANCING 1 LINE. 36130000 361400 MOVE SPACES TO HEADING-LINE. 36140000 361500 MOVE HEADER-REPORT-ID 36150000 361600 TO LEFT-STATISTIC. 36160000 361700 MOVE HEADER-REPORT-DATE 36170000 361800 TO NARROW-RIGHT-STATISTIC. 36180000 361900 WRITE PRINT-RECORD 36190000 362000 FROM HEADING-LINE 36200000 362100 AFTER ADVANCING 1 LINE. 36210000 362200 MOVE SPACES TO HEADING-LINE. 36220000 362300* 36230000 362400* 36240000 362500 3HDR-WIDE-PAPER-ROUTINE. 36250000 362600 MOVE COMMUNITY-COLLEGE-TITLE 36260000 362700 IN HEADER-HOLDING-AREA 36270000 362800 TO WIDE-HEADING-LOCATION 36280000 362900 IN HEADING-TITLE-LINE. 36290000 363000 WRITE PRINT-RECORD 36300000 363100 FROM HEADING-LINE 36310000 363200 AFTER ADVANCING PAGE. 36320000 363300 MOVE SPACES TO HEADING-LINE. 36330000 363400 MOVE MIS-PILOT-TITLE 36340000 363500 IN HEADER-HOLDING-AREA 36350000 363600 TO WIDE-HEADING-LOCATION 36360000 363700 IN HEADING-TITLE-LINE. 36370000 363800 WRITE PRINT-RECORD 36380000 363900 FROM HEADING-LINE 36390000 364000 AFTER ADVANCING 1 LINE. 36400000 364100 MOVE SPACES TO HEADING-LINE. 36410000 364200 MOVE HEADER-REPORT-TIME 36420000 364300 TO LEFT-STATISTIC. 36430000 364400 MOVE HEADER-REPORT-PAGE 36440000 364500 TO WIDE-RIGHT-STATISTIC. 36450000 364600 WRITE PRINT-RECORD 36460000 364700 FROM HEADING-LINE 36470000 364800 AFTER ADVANCING 1 LINE. 36480000 364900 MOVE SPACES TO HEADING-LINE. 36490000 365000 MOVE HEADER-REPORT-ID 36500000 365100 TO LEFT-STATISTIC. 36510000 365200 MOVE HEADER-REPORT-DATE 36520000 365300 TO WIDE-RIGHT-STATISTIC. 36530000 365400 WRITE PRINT-RECORD 36540000 365500 FROM HEADING-LINE 36550000 365600 AFTER ADVANCING 1 LINE. 36560000 365700 MOVE SPACES TO HEADING-LINE. 36570000 365800* 36580000 365900* 36590000 366000 7HDR-USER-SUPPLIED-HEADINGS. 36600000 366100 WRITE PRINT-RECORD 36610000 366200 FROM REPORT-TITLE-LINE-1 36620000 366300 AFTER ADVANCING 1 LINE. 36630000 366400 WRITE PRINT-RECORD 36640000 366500 FROM REPORT-TITLE-LINE-2 36650000 366600 AFTER ADVANCING 1 LINES. 36660000 366700 WRITE PRINT-RECORD 36670000 366800 FROM REPORT-TITLE-LINE-3 36680000 366900 AFTER ADVANCING 1 LINES. 36690000 367000* 36700000 367100* 36710000 367200 8600-REPORT-HEADINGS. 36720000 367300 MOVE SPACES TO PRINT-RECORD-2. 36730000 367400 MOVE ZEROS TO REPORT-LINE-COUNTER. 36740000 367500 ADD 1 TO REPORT-PAGE-COUNTER. 36750000 367600 MOVE REPORT-PAGE-COUNTER 36760000 367700 TO HEADER-PAGE-NUMBER. 36770000 367800 IF FIRST-PAGE 36780000 367900 PERFORM 1HDR-FIRST-PAGE-ROUTINE-2. 36790000 368000 IF NARROW-PAPER-REQUIRED 36800000 368100 PERFORM 2HDR-NARROW-PAPER-ROUTINE-2 36810000 368200 ELSE 36820000 368300 PERFORM 3HDR-WIDE-PAPER-ROUTINE-2. 36830000 368400 PERFORM 7HDR-USER-SUPPLIED-HEADINGS-2. 36840000 368500* 36850000 368600* 36860000 368700 1HDR-FIRST-PAGE-ROUTINE-2. 36870000 368800 ACCEPT REPORT-DATE 36880000 368900 IN HEADER-HOLDING-AREA 36890000 369000 FROM DATE. 36900000 369100 ACCEPT REPORT-TIME 36910000 369200 IN HEADER-HOLDING-AREA 36920000 369300 FROM TIME. 36930000 369400 MOVE FULL-MONTH-NAME 36940000 369500 IN HEADER-MONTH-TABLE 36950000 369600 (REPORT-MONTH) 36960000 369700 TO HEADER-MONTH. 36970000 369800 MOVE REPORT-DAY 36980000 369900 IN HEADER-HOLDING-AREA 36990000 370000 TO HEADER-DAY 37000000 370100 IN HEADER-STATISTICS. 37010000 370200 MOVE REPORT-YEAR 37020000 370300 IN HEADER-HOLDING-AREA 37030000 370400 TO HEADER-YEAR 37040000 370500 IN HEADER-STATISTICS. 37050000 370600 MOVE ACTUAL-CLOCK-TIME 37060000 370700 IN HEADER-HOLDING-AREA 37070000 370800 TO HEADER-TIME 37080000 370900 IN HEADER-STATISTICS. 37090000 371000 MOVE ZERO TO FIRST-PAGE-SWITCH. 37100000 371100 INSPECT HEADER-TIME-AREA 37110000 371200 REPLACING ALL '/' 37120000 371300 BY ':'. 37130000 371400* 37140000 371500* 37150000 371600 2HDR-NARROW-PAPER-ROUTINE-2. 37160000 371700 MOVE COMMUNITY-COLLEGE-TITLE 37170000 371800 IN HEADER-HOLDING-AREA 37180000 371900 TO HEADING-TITLE-LINE. 37190000 372000 WRITE PRINT-RECORD-2 37200000 372100 FROM HEADING-LINE 37210000 372200 AFTER ADVANCING PAGE. 37220000 372300 MOVE SPACES TO HEADING-LINE. 37230000 372400 MOVE MIS-PILOT-TITLE 37240000 372500 IN HEADER-HOLDING-AREA 37250000 372600 TO HEADING-TITLE-LINE. 37260000 372700 WRITE PRINT-RECORD-2 37270000 372800 FROM HEADING-LINE 37280000 372900 AFTER ADVANCING 1 LINE. 37290000 373000 MOVE SPACES TO HEADING-LINE. 37300000 373100 MOVE HEADER-REPORT-TIME 37310000 373200 TO LEFT-STATISTIC. 37320000 373300 MOVE HEADER-REPORT-PAGE 37330000 373400 TO NARROW-RIGHT-STATISTIC. 37340000 373500 WRITE PRINT-RECORD-2 37350000 373600 FROM HEADING-LINE 37360000 373700 AFTER ADVANCING 1 LINE. 37370000 373800 MOVE SPACES TO HEADING-LINE. 37380000 373900 MOVE HEADER-REPORT-ID 37390000 374000 TO LEFT-STATISTIC. 37400000 374100 MOVE HEADER-REPORT-DATE 37410000 374200 TO NARROW-RIGHT-STATISTIC. 37420000 374300 WRITE PRINT-RECORD-2 37430000 374400 FROM HEADING-LINE 37440000 374500 AFTER ADVANCING 1 LINE. 37450000 374600 MOVE SPACES TO HEADING-LINE. 37460000 374700* 37470000 374800* 37480000 374900 3HDR-WIDE-PAPER-ROUTINE-2. 37490000 375000 MOVE COMMUNITY-COLLEGE-TITLE 37500000 375100 IN HEADER-HOLDING-AREA 37510000 375200 TO WIDE-HEADING-LOCATION 37520000 375300 IN HEADING-TITLE-LINE. 37530000 375400 WRITE PRINT-RECORD-2 37540000 375500 FROM HEADING-LINE 37550000 375600 AFTER ADVANCING PAGE. 37560000 375700 MOVE SPACES TO HEADING-LINE. 37570000 375800 MOVE MIS-PILOT-TITLE 37580000 375900 IN HEADER-HOLDING-AREA 37590000 376000 TO WIDE-HEADING-LOCATION 37600000 376100 IN HEADING-TITLE-LINE. 37610000 376200 WRITE PRINT-RECORD-2 37620000 376300 FROM HEADING-LINE 37630000 376400 AFTER ADVANCING 1 LINE. 37640000 376500 MOVE SPACES TO HEADING-LINE. 37650000 376600 MOVE HEADER-REPORT-TIME 37660000 376700 TO LEFT-STATISTIC. 37670000 376800 MOVE HEADER-REPORT-PAGE 37680000 376900 TO WIDE-RIGHT-STATISTIC. 37690000 377000 WRITE PRINT-RECORD-2 37700000 377100 FROM HEADING-LINE 37710000 377200 AFTER ADVANCING 1 LINE. 37720000 377300 MOVE SPACES TO HEADING-LINE. 37730000 377400 MOVE HEADER-REPORT-ID 37740000 377500 TO LEFT-STATISTIC. 37750000 377600 MOVE HEADER-REPORT-DATE 37760000 377700 TO WIDE-RIGHT-STATISTIC. 37770000 377800 WRITE PRINT-RECORD-2 37780000 377900 FROM HEADING-LINE 37790000 378000 AFTER ADVANCING 1 LINE. 37800000 378100 MOVE SPACES TO HEADING-LINE. 37810000 378200* 37820000 378300* 37830000 378400 7HDR-USER-SUPPLIED-HEADINGS-2. 37840000 378500 WRITE PRINT-RECORD-2 37850000 378600 FROM REPORT-TITLE-LINE-1 37860000 378700 AFTER ADVANCING 1 LINE. 37870000 378800 WRITE PRINT-RECORD-2 37880000 378900 FROM REPORT-TITLE-LINE-2 37890000 379000 AFTER ADVANCING 1 LINES. 37900000 379100 WRITE PRINT-RECORD-2 37910000 379200 FROM REPORT-TITLE-LINE-3 37920000 379300 AFTER ADVANCING 1 LINES. 37930000 379400* 37940000 379500* 37950000 379600 9000-PROGRAM-FINALIZATION. 37960000 379700 IF EDIT-ERROR-TABLE 37970000 379800 IS NOT EQUAL TO SPACES 37980000 379900 PERFORM 5000-PRINT-ERROR-REPORT. 37990000 380000 PERFORM 9700-OUTPUT-REPORT-TOTALS. 38000000 380100 PERFORM 9100-PRINT-DISTRICT-TOTAL-PAGE. 38010000 380200 MOVE REPORT-SUM2 TO PROGRAM-NAME. 38020000 380300 PERFORM 8600-REPORT-HEADINGS. 38030000 380400 PERFORM 9500-WRITE-INTEGRITY-HEADERS. 38040000 380500 PERFORM 9600-WRITE-INTEGRITY-COUNTS. 38050000 380600 MOVE REPORT-SUM3 TO PROGRAM-NAME. 38060000 380700 PERFORM 8600-REPORT-HEADINGS. 38070000 380800 WRITE PRINT-RECORD-2 38080000 380900 FROM DISTRICT-TOTAL-HEADING 38090000 381000 AFTER ADVANCING 2 LINES. 38100000 381100 MOVE SPACES TO PRINT-RECORD-2. 38110000 381200 WRITE PRINT-RECORD-2 38120000 381300 AFTER ADVANCING 1 LINES. 38130000 381400 MOVE ZERO TO TABLE-SEARCH-FLAG. 38140000 381500 SET DISTRICT-TOTAL-INDEX TO 1. 38150000 381600 SET TOTAL-DESCRIPTIONS-INDEX TO 1. 38160000 381700 PERFORM 9200-PRINT-TOTAL-LINES 38170000 381800 UNTIL TABLE-SEARCH-COMPLETE. 38180000 381900 CLOSE EMPLOYEE-DATA-FILE. 38190000 382000 CLOSE EDITED-EMPLOYEE-DATA-FILE. 38200000 382100 CLOSE EDIT-ERROR-REPORT. 38210000 382200 CLOSE INTEGRITY-ERROR-SUMMARY. 38220000 382300 CLOSE REPORT-TOTALS-FILE. 38230000 382400* 38240000 382500* 38250000 382600 9100-PRINT-DISTRICT-TOTAL-PAGE. 38260000 382700 MOVE HOLD-DISTRICT-NAME 38270000 382800 TO DISTRICT-NAME 38280000 382900 IN REPORT-TITLE-LINE-3. 38290000 383000 MOVE DISTRICT-ID 38300000 383100 IN RUNTIME-PARAMETER-AREA 38310000 383200 TO REPORT-CODE1, REPORT-CODE2, REPORT-CODE3. 38320000 383300 MOVE REPORT-SUM1 TO PROGRAM-NAME. 38330000 383400 PERFORM 8600-REPORT-HEADINGS. 38340000 383500 MOVE ZERO TO TABLE-SEARCH-FLAG. 38350000 383600 SET EDIT-ERROR-LITERAL-INDEX TO 1. 38360000 383700 SET DISTRICT-COUNT-ROW-INDEX TO 1. 38370000 383800 PERFORM 9390-WRITE-ERROR-HEADERS. 38380000 383900 PERFORM 9300-PRINT-ERROR-TOTALS 38390000 384000 UNTIL TABLE-SEARCH-COMPLETE. 38400000 384100* 38410000 384200* 38420000 384300 9200-PRINT-TOTAL-LINES. 38430000 384400 MOVE TOTAL-DESCRIPTION 38440000 384500 IN TOTAL-DESCRIPTIONS-ENTRY 38450000 384600 (TOTAL-DESCRIPTIONS-INDEX) 38460000 384700 TO TOTAL-DESCRIPTION 38470000 384800 IN TOTAL-DETAIL-LINE. 38480000 384900 MOVE DISTRICT-TOTAL 38490000 385000 IN DISTRICT-TOTAL-ENTRY 38500000 385100 (DISTRICT-TOTAL-INDEX) 38510000 385200 TO TOTAL-FIELD 38520000 385300 IN TOTAL-DETAIL-LINE. 38530000 385400 WRITE PRINT-RECORD-2 38540000 385500 FROM TOTAL-DETAIL-LINE 38550000 385600 AFTER ADVANCING 1 LINE. 38560000 385700 MOVE SPACES TO TOTAL-DETAIL-LINE. 38570000 385800 SET ORIGINAL-INDEX-VALUE 38580000 385900 TO DISTRICT-TOTAL-INDEX. 38590000 386000 SEARCH DISTRICT-TOTAL-ENTRY 38600000 386100 AT END 38610000 386200 MOVE 1 TO TABLE-SEARCH-FLAG 38620000 386300 WHEN ORIGINAL-INDEX-VALUE 38630000 386400 IS NOT EQUAL TO DISTRICT-TOTAL-INDEX 38640000 386500 PERFORM 9250-BUMP-DESCRIPTOR-INDEX. 38650000 386600* 38660000 386700* 38670000 386800 9250-BUMP-DESCRIPTOR-INDEX. 38680000 386900 SEARCH TOTAL-DESCRIPTIONS-ENTRY 38690000 387000 AT END 38700000 387100 MOVE 1 TO TABLE-SEARCH-FLAG 38710000 387200 WHEN TOTAL-DESCRIPTIONS-INDEX 38720000 387300 IS EQUAL TO DISTRICT-TOTAL-INDEX 38730000 387400 NEXT SENTENCE. 38740000 387500* 38750000 387600* 38760000 387700 9300-PRINT-ERROR-TOTALS. 38770000 387800 MOVE DATA-ELEMENT-LITERAL 38780000 387900 (EDIT-ERROR-LITERAL-INDEX) 38790000 388000 TO ELEMENT-LITERAL-AREA. 38800000 388100 SET ELEMENT-COLUMN-INDEX TO 1. 38810000 388200 SET DISTRICT-COUNT-COL-INDEX TO 1. 38820000 388300 PERFORM 9310-FILL-ELEMENT-TOTAL-LINE 38830000 388400 UNTIL ELEMENT-COLUMN-INDEX > 4. 38840000 388500 WRITE PRINT-RECORD-2 38850000 388600 FROM ELEMENT-TOTAL-DETAIL-LINE 38860000 388700 AFTER ADVANCING 1 LINE. 38870000 388800 SET ORIGINAL-INDEX-VALUE 38880000 388900 TO DISTRICT-COUNT-ROW-INDEX. 38890000 389000 SEARCH DISTRICT-ERROR-COUNT-ROWS 38900000 389100 AT END 38910000 389200 MOVE 1 TO TABLE-SEARCH-FLAG 38920000 389300 WHEN ORIGINAL-INDEX-VALUE 38930000 389400 IS NOT EQUAL TO DISTRICT-COUNT-ROW-INDEX 38940000 389500 PERFORM 9350-BUMP-DESCRIPTOR-INDEX. 38950000 389600* 38960000 389700* 38970000 389800 9310-FILL-ELEMENT-TOTAL-LINE. 38980000 389900 IF (DISTRICT-COUNT-ROW-INDEX < 8 AND 38990000 390000 DISTRICT-COUNT-COL-INDEX = 2) OR 39000000 390100 (DISTRICT-COUNT-ROW-INDEX < 14 AND 39010000 390200 DISTRICT-COUNT-ROW-INDEX > 8 AND 39020000 390300 DISTRICT-COUNT-COL-INDEX = 2) OR 39030000 390400 (DISTRICT-COUNT-ROW-INDEX > 14 AND 39040000 390500 DISTRICT-COUNT-COL-INDEX = 2) OR 39050000 390600 (DISTRICT-COUNT-ROW-INDEX < 6 AND 39060000 390700 DISTRICT-COUNT-COL-INDEX = 3) OR 39070000 390800 (DISTRICT-COUNT-ROW-INDEX > 6 AND 39080000 390900 DISTRICT-COUNT-COL-INDEX = 3) OR 39090000 391000 (DISTRICT-COUNT-ROW-INDEX < 18 AND 39100000 391100 DISTRICT-COUNT-COL-INDEX = 4) 39110000 391200 MOVE NOT-APP-LITERAL 39120000 391300 TO ELEMENT-TOTAL-RED 39130000 391400 (ELEMENT-COLUMN-INDEX) 39140000 391500 ELSE 39150000 391600 MOVE DISTRICT-COUNT 39160000 391700 (DISTRICT-COUNT-ROW-INDEX, 39170000 391800 DISTRICT-COUNT-COL-INDEX) 39180000 391900 TO ELEMENT-TOTAL 39190000 392000 (ELEMENT-COLUMN-INDEX). 39200000 392100 SET ELEMENT-COLUMN-INDEX UP BY 1. 39210000 392200 SET DISTRICT-COUNT-COL-INDEX UP BY 1. 39220000 392300* 39230000 392400* 39240000 392500 9350-BUMP-DESCRIPTOR-INDEX. 39250000 392600 SEARCH EDIT-ERROR-LITERAL-ENTRY 39260000 392700 AT END 39270000 392800 MOVE 1 TO TABLE-SEARCH-FLAG 39280000 392900 WHEN EDIT-ERROR-LITERAL-INDEX 39290000 393000 IS EQUAL TO DISTRICT-COUNT-ROW-INDEX 39300000 393100 NEXT SENTENCE. 39310000 393200* 39320000 393300* 39330000 393400 9390-WRITE-ERROR-HEADERS. 39340000 393500 WRITE PRINT-RECORD-2 FROM REPORT-TITLE-LINE-5 39350000 393600 AFTER ADVANCING 2 LINES. 39360000 393700 WRITE PRINT-RECORD-2 FROM ELEMENT-COLUMN-LINE-1 39370000 393800 AFTER ADVANCING 2 LINES. 39380000 393900 WRITE PRINT-RECORD-2 FROM ELEMENT-COLUMN-LINE-2 39390000 394000 AFTER ADVANCING 1 LINES. 39400000 394100 WRITE PRINT-RECORD-2 FROM ELEMENT-COLUMN-LINE-3 39410000 394200 AFTER ADVANCING 1 LINES. 39420000 394300 MOVE SPACES TO PRINT-RECORD-2. 39430000 394400 WRITE PRINT-RECORD-2 AFTER ADVANCING 1 LINES. 39440000 394500* 39450000 394600* 39460000 394700 9500-WRITE-INTEGRITY-HEADERS. 39470000 394800 WRITE PRINT-RECORD-2 FROM REPORT-TITLE-LINE-7 39480000 394900 AFTER ADVANCING 2 LINES. 39490000 395000 MOVE SPACES TO PRINT-RECORD-2. 39500000 395100 WRITE PRINT-RECORD-2 AFTER ADVANCING 1 LINES. 39510000 395200* 39520000 395300* 39530000 395400 9600-WRITE-INTEGRITY-COUNTS. 39540000 395500 MOVE DISTRICT-INT-CNT (1) 39550000 395600 TO INT-CNT-OUT-1. 39560000 395700 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-1 39570000 395800 AFTER ADVANCING 2 LINES. 39580000 395900 MOVE DISTRICT-INT-CNT (2) 39590000 396000 TO INT-CNT-OUT-2. 39600000 396100 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-2 39610000 396200 AFTER ADVANCING 2 LINES. 39620000 396300 MOVE DISTRICT-INT-CNT (3) 39630000 396400 TO INT-CNT-OUT-3. 39640000 396500 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-3 39650000 396600 AFTER ADVANCING 2 LINES. 39660000 396700 MOVE DISTRICT-INT-CNT (4) 39670000 396800 TO INT-CNT-OUT-4. 39680000 396900 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-4 39690000 397000 AFTER ADVANCING 2 LINES. 39700000 397100 MOVE DISTRICT-INT-CNT (5) 39710000 397200 TO INT-CNT-OUT-5. 39720000 397300 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-5 39730000 397400 AFTER ADVANCING 2 LINES. 39740000 397500 MOVE DISTRICT-INT-CNT (6) 39750000 397600 TO INT-CNT-OUT-6. 39760000 397700 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-6 39770000 397800 AFTER ADVANCING 2 LINES. 39780000 397900 MOVE DISTRICT-INT-CNT (7) 39790000 398000 TO INT-CNT-OUT-7. 39800000 398100 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-7 39810000 398200 AFTER ADVANCING 2 LINES. 39820000 398300 MOVE DISTRICT-INT-CNT (8) 39830000 398400 TO INT-CNT-OUT-8. 39840000 398500 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-8 39850000 398600 AFTER ADVANCING 2 LINES. 39860000 398700 MOVE DISTRICT-INT-CNT (9) 39870000 398800 TO INT-CNT-OUT-9. 39880000 398900 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-9 39890000 399000 AFTER ADVANCING 2 LINES. 39900000 399100 MOVE DISTRICT-INT-CNT (10) 39910000 399200 TO INT-CNT-OUT-A. 39920000 399300 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-A 39930000 399400 AFTER ADVANCING 2 LINES. 39940000 399500 MOVE DISTRICT-INT-CNT (11) 39950000 399600 TO INT-CNT-OUT-B. 39960000 399700 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-B 39970000 399800 AFTER ADVANCING 2 LINES. 39980000 399900 MOVE DISTRICT-INT-CNT (12) 39990000 400000 TO INT-CNT-OUT-C. 40000000 400100 WRITE PRINT-RECORD-2 FROM INTEGRITY-ERROR-C 40010000 400200 AFTER ADVANCING 2 LINES. 40020000 400300* 40030000 400400* 40040000 400500 9700-OUTPUT-REPORT-TOTALS. 40050000 400600 MOVE HOLD-DISTRICT-ID 40060000 400700 TO REPORT-CODE1, REPORT-CODE2, REPORT-CODE3. 40070000 400800 SET EDIT-ERROR-LITERAL-INDEX TO 1. 40080000 400900 SET DISTRICT-COUNT-ROW-INDEX TO 1. 40090000 401000 PERFORM 9710-OUTPUT-TOTALS1 40100000 401100 UNTIL EDIT-ERROR-LITERAL-INDEX > 17. 40110000 401200 PERFORM 9720-OUTPUT-TOTALS2. 40120000 401300 PERFORM 9730-OUTPUT-TOTALS3. 40130000 401400* 40140000 401500* 40150000 401600 9710-OUTPUT-TOTALS1. 40160000 401700 MOVE REPORT-SUM1 TO TOTALS-ID1. 40170000 401800 MOVE ELEMENT-NUMBER (EDIT-ERROR-LITERAL-INDEX) 40180000 401900 TO DED-NUMBER. 40190000 402000 MOVE DISTRICT-COUNT (DISTRICT-COUNT-ROW-INDEX, 1) 40200000 402100 TO EXCEPT-COUNT. 40210000 402200 MOVE DISTRICT-COUNT (DISTRICT-COUNT-ROW-INDEX, 2) 40220000 402300 TO UNKNOWN-COUNT. 40230000 402400 MOVE DISTRICT-COUNT (DISTRICT-COUNT-ROW-INDEX, 3) 40240000 402500 TO REASON-COUNT. 40250000 402600 MOVE DISTRICT-COUNT (DISTRICT-COUNT-ROW-INDEX, 4) 40260000 402700 TO GRP3-COUNT. 40270000 402800 WRITE REPORT-TOTALS-RECORD1. 40280000 402900 SET EDIT-ERROR-LITERAL-INDEX UP BY 1. 40290000 403000 SET DISTRICT-COUNT-ROW-INDEX UP BY 1. 40300000 403100* 40310000 403200* 40320000 403300 9720-OUTPUT-TOTALS2. 40330000 403400 MOVE REPORT-SUM2 TO TOTALS-ID2. 40340000 403500 MOVE DISTRICT-INT-CNT (1) 40350000 403600 TO INTEGRITY-ERROR-COUNT. 40360000 403700 MOVE '01' TO INTEGRITY-ERROR-CODE. 40370000 403800 WRITE REPORT-TOTALS-RECORD2. 40380000 403900 MOVE REPORT-SUM2 TO TOTALS-ID2. 40390000 404000 MOVE DISTRICT-INT-CNT (2) 40400000 404100 TO INTEGRITY-ERROR-COUNT. 40410000 404200 MOVE '02' TO INTEGRITY-ERROR-CODE. 40420000 404300 WRITE REPORT-TOTALS-RECORD2. 40430000 404400 MOVE REPORT-SUM2 TO TOTALS-ID2. 40440000 404500 MOVE DISTRICT-INT-CNT (3) 40450000 404600 TO INTEGRITY-ERROR-COUNT. 40460000 404700 MOVE '03' TO INTEGRITY-ERROR-CODE. 40470000 404800 WRITE REPORT-TOTALS-RECORD2. 40480000 404900 MOVE REPORT-SUM2 TO TOTALS-ID2. 40490000 405000 MOVE DISTRICT-INT-CNT (4) 40500000 405100 TO INTEGRITY-ERROR-COUNT. 40510000 405200 MOVE '04' TO INTEGRITY-ERROR-CODE. 40520000 405300 WRITE REPORT-TOTALS-RECORD2. 40530000 405400 MOVE REPORT-SUM2 TO TOTALS-ID2. 40540000 405500 MOVE DISTRICT-INT-CNT (5) 40550000 405600 TO INTEGRITY-ERROR-COUNT. 40560000 405700 MOVE '05' TO INTEGRITY-ERROR-CODE. 40570000 405800 WRITE REPORT-TOTALS-RECORD2. 40580000 405900 MOVE REPORT-SUM2 TO TOTALS-ID2. 40590000 406000 MOVE DISTRICT-INT-CNT (6) 40600000 406100 TO INTEGRITY-ERROR-COUNT. 40610000 406200 MOVE '06' TO INTEGRITY-ERROR-CODE. 40620000 406300 WRITE REPORT-TOTALS-RECORD2. 40630000 406400 MOVE REPORT-SUM2 TO TOTALS-ID2. 40640000 406500 MOVE DISTRICT-INT-CNT (7) 40650000 406600 TO INTEGRITY-ERROR-COUNT. 40660000 406700 MOVE '07' TO INTEGRITY-ERROR-CODE. 40670000 406800 WRITE REPORT-TOTALS-RECORD2. 40680000 406900 MOVE REPORT-SUM2 TO TOTALS-ID2. 40690000 407000 MOVE DISTRICT-INT-CNT (8) 40700000 407100 TO INTEGRITY-ERROR-COUNT. 40710000 407200 MOVE '08' TO INTEGRITY-ERROR-CODE. 40720000 407300 WRITE REPORT-TOTALS-RECORD2. 40730000 407400 MOVE REPORT-SUM2 TO TOTALS-ID2. 40740000 407500 MOVE DISTRICT-INT-CNT (9) 40750000 407600 TO INTEGRITY-ERROR-COUNT. 40760000 407700 MOVE '09' TO INTEGRITY-ERROR-CODE. 40770000 407800 WRITE REPORT-TOTALS-RECORD2. 40780000 407900 MOVE REPORT-SUM2 TO TOTALS-ID2. 40790000 408000 MOVE DISTRICT-INT-CNT (10) 40800000 408100 TO INTEGRITY-ERROR-COUNT. 40810000 408200 MOVE '10' TO INTEGRITY-ERROR-CODE. 40820000 408300 WRITE REPORT-TOTALS-RECORD2. 40830000 408400 MOVE REPORT-SUM2 TO TOTALS-ID2. 40840000 408500 MOVE DISTRICT-INT-CNT (11) 40850000 408600 TO INTEGRITY-ERROR-COUNT. 40860000 408700 MOVE '11' TO INTEGRITY-ERROR-CODE. 40870000 408800 WRITE REPORT-TOTALS-RECORD2. 40880000 408900 MOVE REPORT-SUM2 TO TOTALS-ID2. 40890000 409000 MOVE DISTRICT-INT-CNT (12) 40900000 409100 TO INTEGRITY-ERROR-COUNT. 40910000 409200 MOVE '12' TO INTEGRITY-ERROR-CODE. 40920000 409300 WRITE REPORT-TOTALS-RECORD2. 40930000 409400* 40940000 409500* 40950000 409600 9730-OUTPUT-TOTALS3. 40960000 409700 MOVE REPORT-SUM3 TO TOTALS-ID3. 40970000 409800 MOVE DISTRICT-RECORDS-READ 40980000 409900 TO READ-TOTALS. 40990000 410000 MOVE DISTRICT-RECORDS-REJECTED 41000000 410100 TO REJECTED-TOTALS. 41010000 410200 MOVE DATE-HOLD TO DATE-FLAG. 41020000 410300 MOVE HH-MM TO TIME-FLAG. 41030000 410400 WRITE REPORT-TOTALS-RECORD3. 41040000 410500* 41050000 410600 10000-PRINT-DUMMY. 41060000 410700* MOVE EMPLOY-BEGIN-DATE TO 41070000 410800* S-COMP-BEGIN-YEAR. 41080000 410900* MOVE EMPLOY-BEGIN-END-DATE TO 41090000 411000* S-COMP-END-YEAR. 41100000 411100* MOVE HOLD-HIREDATE TO S-HOLD-HIREDATE. 41110000 411200* MOVE EB09-FLAG TO S-EB09-FLAG. 41120000 411300* MOVE EB10-FLAG TO S-EB10-FLAG. 41130000 411400 MOVE HOLD-DISTRICT-ID TO S-CHECK-DIST-CODE. 41140000 411500 MOVE DUMMY-RECORD TO PRINT-RECORD. 41150000 411600 WRITE PRINT-RECORD AFTER ADVANCING 2 LINES. 41160000 411700 CLOSE EMPLOYEE-DATA-FILE. 41170000 411800 CLOSE EDITED-EMPLOYEE-DATA-FILE. 41180000 411900 CLOSE EDIT-ERROR-REPORT. 41190000 412000 CLOSE INTEGRITY-ERROR-SUMMARY. 41200000 412100 CLOSE REPORT-TOTALS-FILE. 41210000 412200 STOP RUN. 41220000 END PROGRAM EBEDIT.
Sample Output from COBOL Smart Differencer RDz User Interface
Semantic Designs provides a graphical user interface (GUI) for its Smart Differencer analyzer. Here we show examples from a GUI that is a plugin for the Rational Developer for System Z™ (RDz) Environment, Version 7.5.0. The images are trimmed to show the interesting part of the display without loss of resolution.
Example 1
This image shows the RDz window after the analyzer has run. The file on
the right is the original; the modified file is displayed on the left, side-by-side
with the original. Scrolling through either file shows highlighed areas.
Pictured here are a collection of substitution differences in a data declaration.
Since they are substitutions, they are colored violet. The first difference between
the literal values is highlighted in yellow because it has been selected in the
CCCC3.COB
editor, which causes its counterpart in the other editor
to also be highlighted. Notice that the Edit banner in the Smart Differencer
view near the bottom shows the explanation "Substitute". The explanation in
that banner always describes the selected difference, since the yellow highlighting
obscures its original color coding. Notice also that the entire literal value
is considered a difference, even though one might argue that deleting only
the final two characters of the string would produce the counterpart. Differencing
does not descend into literal values; it only notes that the whole values are
different. Finally, notice that the comment that was inserted in CCCC3A.COB
was ignored by the Smart Differencer. Comments, spacing and formatting, sequence
numbers, and deck identifiers are always ignored, as they have no semantic meaning
within the programs.
Example 2
The next image illustrates the beginning of a pair of long regions marked in green.
The green signifies a rename region difference, i.e., coherent code segments that
differ only in that one or more symbol renamings occur within the regions. The
first such renaming, in the fourth line of each region, has been selected and
is highlighted. Its explanation on the Edit line is "Rename—>Rename[consistent]".
This indicates not only that TERM-TITLE
has been renamed to TERM-NAME
,
but also that this renaming has been performed consistently throughout the entire file.
Notice that the next renaming, thirteen lines further down, is highlighted in darker
green, indicating a renaming nested within the rename region. Notice also that the
regions are not horizontally aligned. This is an artifact of the scrolling and
cursor behavior of RDz.
Example 3
The next example shows where a NEXT SENTENCE
clause was changed to
a CONTINUE
statement. The NEXT SENTENCE
was selected
and is highlighted in yellow, and its description is "Delete". The highlight
in the other editor is on the character at the beginning of the ELSE
keyword. Single-character highlighting on insert and delete differences indicates
that the point of insertion or deletion was the position immediately preceding
the marked character. Since formatting is not considered, this means that
the deletion occurred logically just before the ELSE
keyword, not
that it occurred literally at that exact position in the file. In the other
window, the immediately preceding CONTINUE
is marked, the pink
signifying that the difference is an insert or delete (possibly with subsidiary
differences, but not in this case). If we were to select the CONTINUE
difference on the left hand editor, we would see the explanation that it was an
insertion, either just prior to or just after the NEXT SENTENCE
.
This might have been reported as a substitution rather than a delete/insert,
but the heuristics of the Smart Differencer and the nature of the COBOL grammar
led to this explanation instead. When unexpected explanations or markings show up,
remember that the differencer uses a collection of heurstics and its knowledge
of the source language to formulate
its explanations. Its deductions, while they may not always map to your intuitive
editing concepts, are accurate with respect to the language.
Example 4
In the next example, the highlighted difference is a paragraph that has been
deleted from CCCC3.COB
. The deletion point is immediately
prior to the 2320
paragraph. The nested differences, if selected,
would be marked as Delete/Merge with nested renaming, but in this case they
may be disregarded. They are marked because
whenever a deletion occurs, the Smart Differencer tries to locate a place in
the counterpart file to which all or part of the deleted code has been
moved and possibly merged, possibly with renaming. Its clone matching algorithm, in this case,
has led it to suggest that the MOVE
statements have been
merged with another elsewhere, in the first case with a variable renaming. Here, this
turns out to be over-aggressive detective work. In other settings, the same
analysis can be quite useful. Similar analysis is done with insertions, for which
the analyzer searches for the sources of the inserted code. Whether or not this matching
reflects the editing reality, the observations are accurate possibilities,
and the tool chooses to present rather than suppress them.
In all such cases, though, the important thing is that the code deletion
or insertion was noted and highlighted as a primary difference.
Example 5
In this example, a series of similar data declarations have been replaced by
inclusions of a parameterized copylib. The selected region shows to have been
deleted, with the deletion point just prior to the yellow-highlighted beginning
of the COPY
keyword on the left. The sequence of COPY
statements, if selected, would show up as an insertion. The nested differences
on the right result from another heuristic guess that they have been moved and merged,
based on their similarity to declarations found elsewhere.