COBOL mode
Select Theme Select Font Size
x
1
---------1---------2---------3---------4---------5---------6---------7---------8
2
12345678911234567892123456789312345678941234567895123456789612345678971234567898
3
000010 IDENTIFICATION DIVISION. MODTGHERE
4
000020 PROGRAM-ID. SAMPLE.
5
000030 AUTHOR. TEST SAM.
6
000040 DATE-WRITTEN. 5 February 2013
7
000041
8
000042* A sample program just to show the form.
9
000043* The program copies its input to the output,
10
000044* and counts the number of records.
11
000045* At the end this number is printed.
12
000046
13
000050 ENVIRONMENT DIVISION.
14
000060 INPUT-OUTPUT SECTION.
15
000070 FILE-CONTROL.
16
000080 SELECT STUDENT-FILE ASSIGN TO SYSIN
17
000090 ORGANIZATION IS LINE SEQUENTIAL.
18
000100 SELECT PRINT-FILE ASSIGN TO SYSOUT
19
000110 ORGANIZATION IS LINE SEQUENTIAL.
20
000120
21
000130 DATA DIVISION.
22
000140 FILE SECTION.
23
000150 FD STUDENT-FILE
24
000160 RECORD CONTAINS 43 CHARACTERS
25
000170 DATA RECORD IS STUDENT-IN.
26
000180 01 STUDENT-IN PIC X(43).
27
000190
28
000200 FD PRINT-FILE
29
000210 RECORD CONTAINS 80 CHARACTERS
30
000220 DATA RECORD IS PRINT-LINE.
31
000230 01 PRINT-LINE PIC X(80).
32
000240
33
000250 WORKING-STORAGE SECTION.
34
000260 01 DATA-REMAINS-SWITCH PIC X(2) VALUE SPACES.
35
000261 01 RECORDS-WRITTEN PIC 99.
36
000270
37
000280 01 DETAIL-LINE.
38
000290 05 FILLER PIC X(7) VALUE SPACES.
39
000300 05 RECORD-IMAGE PIC X(43).
40
000310 05 FILLER PIC X(30) VALUE SPACES.
41
000311
42
000312 01 SUMMARY-LINE.
43
000313 05 FILLER PIC X(7) VALUE SPACES.
44
000314 05 TOTAL-READ PIC 99.
45
000315 05 FILLER PIC X VALUE SPACE.
46
000316 05 FILLER PIC X(17)
47
000317 VALUE 'Records were read'.
48
000318 05 FILLER PIC X(53) VALUE SPACES.
49
000319
50
000320 PROCEDURE DIVISION.
51
000321
52
000330 PREPARE-SENIOR-REPORT.
53
000340 OPEN INPUT STUDENT-FILE
54
000350 OUTPUT PRINT-FILE.
55
000351 MOVE ZERO TO RECORDS-WRITTEN.
56
000360 READ STUDENT-FILE
57
000370 AT END MOVE 'NO' TO DATA-REMAINS-SWITCH
58
000380 END-READ.
59
000390 PERFORM PROCESS-RECORDS
60
000410 UNTIL DATA-REMAINS-SWITCH = 'NO'.
61
000411 PERFORM PRINT-SUMMARY.
62
000420 CLOSE STUDENT-FILE
63
000430 PRINT-FILE.
64
000440 STOP RUN.
65
000450
66
000460 PROCESS-RECORDS.
67
000470 MOVE STUDENT-IN TO RECORD-IMAGE.
68
000480 MOVE DETAIL-LINE TO PRINT-LINE.
69
000490 WRITE PRINT-LINE.
70
000500 ADD 1 TO RECORDS-WRITTEN.
71
000510 READ STUDENT-FILE
72
000520 AT END MOVE 'NO' TO DATA-REMAINS-SWITCH
73
000530 END-READ.
74
000540
75
000550 PRINT-SUMMARY.
76
000560 MOVE RECORDS-WRITTEN TO TOTAL-READ.
77
000570 MOVE SUMMARY-LINE TO PRINT-LINE.
78
000571 WRITE PRINT-LINE.
79
000572
80
000580
81