mirror of
https://github.com/moshix/mvs.git
synced 2026-01-11 23:43:00 +00:00
Create Reportwriter.cob
This commit is contained in:
parent
6656b7bdba
commit
637011a4f8
128
Reportwriter.cob
Normal file
128
Reportwriter.cob
Normal file
@ -0,0 +1,128 @@
|
||||
//HERC01S JOB (COBOL),
|
||||
// 'PARYOLL REPORT',
|
||||
// CLASS=A,
|
||||
// MSGCLASS=A,
|
||||
// REGION=8M,TIME=1440,
|
||||
// MSGLEVEL=(1,1)
|
||||
//SAL EXEC COBUCG,
|
||||
// PARM.COB='FLAGW,LOAD,SUPMAP,SIZE=2048K,BUF=1024K'
|
||||
//COB.SYSPUNCH DD DUMMY
|
||||
//COB.SYSIN DD *
|
||||
150 *** PAYROLL REPORT PROGRAM
|
||||
160 *** MVT COBOL COMPILER 1972
|
||||
170 *** APRIL 26, 2021
|
||||
175 ***
|
||||
180 IDENTIFICATION DIVISION.
|
||||
200 PROGRAM-ID. SALARIES.
|
||||
210 DATE-WRITTEN. APRIL 26, 2021.
|
||||
220 DATE-COMPILED. APRIL 27, 2021.
|
||||
300 ENVIRONMENT DIVISION.
|
||||
1200 CONFIGURATION SECTION.
|
||||
1210 SOURCE-COMPUTER. IBM-370.
|
||||
1220 OBJECT-COMPUTER. IBM-370.
|
||||
1290
|
||||
1300 INPUT-OUTPUT SECTION.
|
||||
1400 FILE-CONTROL.
|
||||
1420 SELECT SALARIES ASSIGN TO DA-S-INDD.
|
||||
1500 SELECT REPORT-FILE ASSIGN TO UR-S-SYSPRINT.
|
||||
1600
|
||||
2400 DATA DIVISION.
|
||||
2500 FILE SECTION.
|
||||
2600 FD SALARIES
|
||||
2800 BLOCK CONTAINS 0 RECORDS
|
||||
3000 DATA RECORD IS SALARIES-REC.
|
||||
3010
|
||||
3100 01 SALARIES-REC.
|
||||
3100 01 SALARIES-REC.
|
||||
3300 05 EMPLOYEE-ID PIC 9(10).
|
||||
3400 05 NAME PIC A(23).
|
||||
3500 05 SALARY PIC 9(4).
|
||||
3501 05 RESERVED PIC A(43).
|
||||
3510
|
||||
3520 FD REPORT-FILE
|
||||
3530 LABEL RECORDS ARE OMITTED
|
||||
3540 REPORT IS SALARIES-REPORT.
|
||||
3590
|
||||
3600 WORKING-STORAGE SECTION.
|
||||
3601 77 TOTAL PIC 9(9) VALUE ZERO.
|
||||
3605 77 TAX PIC 9(9) VALUE ZERO.
|
||||
3606 77 ONLY-TAX PIC 9(9) VALUE ZERO.
|
||||
3610 77 END-OF-FILE-SWITCH PIC X(1) VALUE 'N'.
|
||||
3620 88 END-OF-FILE VALUE 'Y'.
|
||||
3690
|
||||
3990
|
||||
4000 REPORT SECTION.
|
||||
4100 RD SALARIES-REPORT
|
||||
4110 PAGE LIMIT IS 66 LINES
|
||||
4120 HEADING 1
|
||||
4130 FIRST DETAIL 5
|
||||
4140 LAST DETAIL 58.
|
||||
4150
|
||||
4160 01 PAGE-HEAD-GROUP TYPE PAGE HEADING.
|
||||
4170 02 LINE 1.
|
||||
4180 03 COLUMN 39 PIC X(47) VALUE
|
||||
4190 'P A Y R O L L R E P O R T - B I M C O R P.'.
|
||||
4200 02 LINE PLUS 2.
|
||||
4210 03 COLUMN 01 PIC X(08) VALUE 'EMPL.ID '.
|
||||
4220 03 COLUMN 10 PIC X(25) VALUE 'EMPLOYEE NAME'.
|
||||
4330 03 COLUMN 41 PIC X(15) VALUE 'MONTHLY WAGE '.
|
||||
4335 03 COLUMN 58 PIC X(09) VALUE 'WAGE TAX'.
|
||||
4336 03 COLUMN 76 PIC X(16) VALUE 'CUMULATIVE WAGES'.
|
||||
4337 05 COLUMN 100 PIC X(4) VALUE 'PAGE'.
|
||||
4338 10 COLUMN 106 PIC ZZ9 SOURCE PAGE-COUNTER.
|
||||
4350
|
||||
4360 01 SALARY-DETAIL TYPE DETAIL.
|
||||
4370 03 LINE PLUS 1.
|
||||
4380 03 COLUMN 01 PIC X(05) SOURCE EMPLOYEE-ID.
|
||||
4382 03 COLUMN 10 PIC X(25) SOURCE NAME.
|
||||
4383 03 COLUMN 41 PIC $9,999 SOURCE SALARY.
|
||||
4385 03 COLUMN 57 PIC $$$$$99 SOURCE ONLY-TAX.
|
||||
4386 03 COLUMN 75 PIC $$$$,$$9 SOURCE TOTAL.
|
||||
4399
|
||||
5000 PROCEDURE DIVISION.
|
||||
5010 000-INITIATE.
|
||||
5020
|
||||
5100 OPEN INPUT SALARIES.
|
||||
5200 OPEN OUTPUT REPORT-FILE.
|
||||
5210
|
||||
5220 INITIATE SALARIES-REPORT.
|
||||
5230
|
||||
5300 READ SALARIES
|
||||
5400 AT END MOVE 'Y' TO END-OF-FILE-SWITCH.
|
||||
5405
|
||||
5500 END-READS.
|
||||
5510
|
||||
5600 PERFORM 100-PROCESS-TRANSACTION-DATA THRU 199-EXIT
|
||||
5610 UNTIL END-OF-FILE.
|
||||
5620
|
||||
5630 000-TERMINATE.
|
||||
5640 TERMINATE SALARIES-REPORT.
|
||||
5650
|
||||
5660 CLOSE SALARIES, REPORT-FILE.
|
||||
5670
|
||||
6000 STOP RUN.
|
||||
6010
|
||||
6100 100-PROCESS-TRANSACTION-DATA.
|
||||
6102 MULTIPLY SALARY BY 1.43 GIVING TAX.
|
||||
6102 MULTIPLY SALARY BY 1.43 GIVING TAX.
|
||||
6103 SUBTRACT SALARY FROM TAX GIVING ONLY-TAX.
|
||||
6104 ADD SALARY TO TOTAL.
|
||||
6105 ADD ONLY-TAX TO TOTAL.
|
||||
6200 GENERATE SALARY-DETAIL.
|
||||
6300 READ SALARIES
|
||||
6400 AT END
|
||||
6500 MOVE 'Y' TO END-OF-FILE-SWITCH.
|
||||
6506
|
||||
6600 END-READ.
|
||||
6610
|
||||
6620 199-EXIT.
|
||||
6650 EXIT.
|
||||
6660
|
||||
/*
|
||||
//COB.SYSLIB DD DSNAME=SYS1.COBLIB,DISP=SHR
|
||||
//SYSABEND DD SYSOUT=*
|
||||
//GO.SYSUDUMP DD SYSOUT=*
|
||||
//GO.SYSPRINT DD SYSOUT=*,DCB=(RECFM=FBA,LRECL=161,BLKSIZE=161)
|
||||
//GO.INDD DD DSNAME=HERC01.SALARIES.INPUT,DISP=SHR
|
||||
//
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user