home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Sams Cobol 24 Hours
/
Sams_Cobol_24_Hours.iso
/
Cobol32
/
PowerFRM
/
frmRTS.z
/
sale.lst
< prev
next >
Wrap
File List
|
1997-03-31
|
20KB
|
363 lines
COBOL85 V30L10 SALES THU FEB 06 10:44:56 1997 0001
** COPY INFORMATION **
QUALIFIER LINE TEXT-NAME
1 26 SALE
COBOL85 V30L10 SALES THU FEB 06 10:44:56 1997 0002
LINE SEQNO A B
1 000010 IDENTIFICATION DIVISION.
2 000020 PROGRAM-ID. SALES.
3 000030 ENVIRONMENT DIVISION.
4 000040 CONFIGURATION SECTION.
5 000050 SPECIAL-NAMES.
6 000060 SYMBOLIC CONSTANT
7 000070 NORMAL IS " "
8 000080 .
9 000090*
10 000100* Define sequential file for printing
11 000110*
12 000120 INPUT-OUTPUT SECTION.
13 000130 FILE-CONTROL.
14 000140 SELECT PRINT-FILE ASSIGN TO PRTFILE
15 000150 ORGANIZATION IS SEQUENTIAL
16 000160 ACCESS MODE IS SEQUENTIAL
17 000170 FORMAT IS PRT-FORMAT
18 000180 GROUP IS PRT-GROUP
19 000190 .
20 000200 DATA DIVISION.
21 000210 FILE SECTION.
22 000220*
23 000230* Copy print record from format descriptor
24 000240*
25 000250 FD PRINT-FILE.
26 000260 COPY SALE OF XMDLIB.
1-1 C 01 SALE.
1-2 C 02 FILLER PIC X(5).
1-3 C 02 PAGE-COUNT
1-4 C PIC 9(3).
1-5 C 02 FILLER PIC X(5).
1-6 C 02 REGION-NAME
1-7 C PIC X(10).
1-8 C 02 FILLER PIC X(5).
1-9 C 02 GROUP-NAME
1-10 C PIC X(10).
1-11 C 02 FILLER PIC X(5).
1-12 C 02 GOODS-NAME
1-13 C PIC X(12).
1-14 C 02 FILLER PIC X(5).
1-15 C 02 SALES-DATE
1-16 C PIC 9(6).
1-17 C 02 FILLER PIC X(5).
1-18 C 02 CUSTOMER-NAME
1-19 C PIC X(16).
1-20 C 02 FILLER PIC X(5).
1-21 C 02 SALES PIC 9(13).
1-22 C 02 FILLER PIC X(5).
1-23 C 02 SALES-SUM
1-24 C PIC 9(13).
1-25 C 02 FILLER PIC X(5).
1-26 C 02 SALES-TOTAL-SUM
1-27 C PIC 9(13).
1-28 C 02 FILLER PIC X(5).
COBOL85 V30L10 SALES THU FEB 06 10:44:56 1997 0003
LINE SEQNO A B
1-29 C 02 LOGO-AREA
1-30 C PIC X(8).
27 000270* ~~~~~name of the format descriptor
28 000280 WORKING-STORAGE SECTION.
29 000290*
30 000300* Control Area
31 000310*
32 000320 01 PRT-PARAM.
33 000330 03 PRT-FORMAT PIC X(08) VALUE " ".
34 000340 03 PRT-GROUP PIC X(08) VALUE " ".
35 000350*
36 000360* Print Data
37 000370*
38 000380 01 SAMPLE-DATA.
39 000390* --- These data being loaded from DB in the actual program. ---
40 000400 02 DETAIL-LINE.
41 000410 03 REGION-NAME-DATA-TABLE.
42 000420 04 PIC X(10) VALUE "New York".
43 000430 04 PIC X(10) VALUE "Washington".
44 000440 04 PIC X(10) VALUE "Boston".
45 000450 04 PIC X(10) VALUE "San Jose".
46 000460 04 PIC X(10) VALUE "Chicago".
47 000470 04 PIC X(10) VALUE "Los angels".
48 000480 04 PIC X(10) VALUE "Sacramento".
49 000490 04 PIC X(10) VALUE "Honolulu".
50 000500 04 PIC X(10) VALUE "Tokyo".
51 000510 04 PIC X(10) VALUE "HongKong".
52 000520 03 REDEFINES REGION-NAME-DATA-TABLE.
53 000530 04 REGION-NAME-DATA PIC X(10) OCCURS 10.
54 000540 03 GROUP-NAME-TABLE.
55 000550 04 PIC X(10) VALUE "GOLF".
56 000560 04 PIC X(10) VALUE "FOOTBALL".
57 000570 04 PIC X(10) VALUE "SKI".
58 000580 04 PIC X(10) VALUE "TENNIS".
59 000590 03 REDEFINES GROUP-NAME-TABLE.
60 000600 04 G-NAME PIC X(10) OCCURS 4.
61 000610 03 GOODS-NAME-DATA-TABLE.
62 000620 04 PIC X(12) VALUE "Shoes".
63 000630 04 PIC X(12) VALUE "Bag".
64 000640 04 PIC X(12) VALUE "Wear".
65 000650 04 PIC X(12) VALUE "Ball".
66 000660 04 PIC X(12) VALUE "Shoes".
67 000670 04 PIC X(12) VALUE "Wear".
68 000680 04 PIC X(12) VALUE "Club Set".
69 000690 04 PIC X(12) VALUE "Bag".
70 000700 04 PIC X(12) VALUE "Ball".
71 000710 04 PIC X(12) VALUE "Wear".
72 000720 04 PIC X(12) VALUE "Shoes".
73 000730 04 PIC X(12) VALUE "Club Set".
74 000740 04 PIC X(12) VALUE "Shoes".
75 000750 04 PIC X(12) VALUE "Ball".
76 000760 04 PIC X(12) VALUE "Bag".
77 000770 04 PIC X(12) VALUE "Club Set".
78 000780 03 REDEFINES GOODS-NAME-DATA-TABLE.
COBOL85 V30L10 SALES THU FEB 06 10:44:56 1997 0004
LINE SEQNO A B
79 000790 04 GOODS-NAME-DATA PIC X(12) OCCURS 16.
80 000800 03 DATE-DATA-TABLE.
81 000810 04 PIC 9(6) VALUE 200196.
82 000820 04 PIC 9(6) VALUE 200296.
83 000830 04 PIC 9(6) VALUE 200296.
84 000840 04 PIC 9(6) VALUE 200396.
85 000850 04 PIC 9(6) VALUE 200396.
86 000860 04 PIC 9(6) VALUE 200496.
87 000870 04 PIC 9(6) VALUE 200596.
88 000880 04 PIC 9(6) VALUE 200696.
89 000890 04 PIC 9(6) VALUE 200696.
90 000900 04 PIC 9(6) VALUE 200696.
91 000910 04 PIC 9(6) VALUE 200796.
92 000920 04 PIC 9(6) VALUE 200896.
93 000930 04 PIC 9(6) VALUE 200996.
94 000940 04 PIC 9(6) VALUE 201196.
95 000950 04 PIC 9(6) VALUE 201296.
96 000960 04 PIC 9(6) VALUE 201296.
97 000970 03 REDEFINES DATE-DATA-TABLE.
98 000980 04 DATE-DATA PIC 9(6) OCCURS 16.
99 000990 03 CUSTOMER-NAME-DATA-TABLE.
100 001000 04 PIC X(16) VALUE "Green Inc.".
101 001010 04 PIC X(16) VALUE "Blue Co.,Ltd.".
102 001020 04 PIC X(16) VALUE "Cyan Trading".
103 001030 04 PIC X(16) VALUE "White Inc.".
104 001040 04 PIC X(16) VALUE "Yellow Inc.".
105 001050 04 PIC X(16) VALUE "Black Trading".
106 001060 04 PIC X(16) VALUE "Brown Co.,Ltd.".
107 001070 04 PIC X(16) VALUE "Gray Trading".
108 001080 04 PIC X(16) VALUE "Pink Inc.".
109 001090 04 PIC X(16) VALUE "Light Blue Inc.".
110 001100 04 PIC X(16) VALUE "Red Business".
111 001110 04 PIC X(16) VALUE "Magenta Co.,Ltd".
112 001120 04 PIC X(16) VALUE "Purple Inc.".
113 001130 04 PIC X(16) VALUE "Silver Business".
114 001140 04 PIC X(16) VALUE "Orange Trading".
115 001150 04 PIC X(16) VALUE "Golden Inc.".
116 001160 03 REDEFINES CUSTOMER-NAME-DATA-TABLE.
117 001170 04 CUSTOMER-NAME-DATA PIC X(16) OCCURS 16.
118 001180 03 SALES-DATA-TABLE.
119 001190 04 PIC 9(13) VALUE 200000.
120 001200 04 PIC 9(13) VALUE 600000.
121 001210 04 PIC 9(13) VALUE 500000.
122 001220 04 PIC 9(13) VALUE 5000.
123 001230 04 PIC 9(13) VALUE 200000.
124 001240 04 PIC 9(13) VALUE 500000.
125 001250 04 PIC 9(13) VALUE 1800000.
126 001260 04 PIC 9(13) VALUE 600000.
127 001270 04 PIC 9(13) VALUE 5000.
128 001280 04 PIC 9(13) VALUE 500000.
129 001290 04 PIC 9(13) VALUE 200000.
130 001300 04 PIC 9(13) VALUE 1800000.
131 001310 04 PIC 9(13) VALUE 200000.
132 001320 04 PIC 9(13) VALUE 5000.
COBOL85 V30L10 SALES THU FEB 06 10:44:56 1997 0005
LINE SEQNO A B
133 001330 04 PIC 9(13) VALUE 600000.
134 001340 04 PIC 9(13) VALUE 1800000.
135 001350 03 REDEFINES SALES-DATA-TABLE.
136 001360 04 SALES-DATA PIC 9(13) OCCURS 16.
137 001370 02 SUM-LINE.
138 001380 03 SALES-SUM PIC 9(13) VALUE 0.
139 001390 02 TOTAL-SUM-LINE.
140 001400 03 SALES-TOTAL-SUM PIC 9(13) VALUE 0.
141 001410 02 WORK-TABLE.
142 001420 03 GROUP-1-TABLE.
143 001430 04 PIC 9(2) VALUE 16.
144 001440 04 PIC 9(2) VALUE 12.
145 001450 04 PIC 9(2) VALUE 5.
146 001460 04 PIC 9(2) VALUE 9.
147 001470 04 PIC 9(2) VALUE 15.
148 001480 04 PIC 9(2) VALUE 8.
149 001490 04 PIC 9(2) VALUE 7.
150 001500 04 PIC 9(2) VALUE 5.
151 001510 04 PIC 9(2) VALUE 13.
152 001520 04 PIC 9(2) VALUE 10.
153 001530 03 GROUP-2-TABLE.
154 001540 04 PIC 9(2) VALUE 7.
155 001550 04 PIC 9(2) VALUE 8.
156 001560 04 PIC 9(2) VALUE 9.
157 001570 04 PIC 9(2) VALUE 14.
158 001580 04 PIC 9(2) VALUE 5.
159 001590 04 PIC 9(2) VALUE 9.
160 001600 04 PIC 9(2) VALUE 10.
161 001610 04 PIC 9(2) VALUE 7.
162 001620 04 PIC 9(2) VALUE 5.
163 001630 04 PIC 9(2) VALUE 13.
164 001640 03 GROUP-3-TABLE.
165 001650 04 PIC 9(2) VALUE 9.
166 001660 04 PIC 9(2) VALUE 6.
167 001670 04 PIC 9(2) VALUE 9.
168 001680 04 PIC 9(2) VALUE 12.
169 001690 04 PIC 9(2) VALUE 8.
170 001700 04 PIC 9(2) VALUE 13.
171 001710 04 PIC 9(2) VALUE 5.
172 001720 04 PIC 9(2) VALUE 8.
173 001730 04 PIC 9(2) VALUE 11.
174 001740 04 PIC 9(2) VALUE 8.
175 001750 03 GROUP-4-TABLE.
176 001760 04 PIC 9(2) VALUE 10.
177 001770 04 PIC 9(2) VALUE 11.
178 001780 04 PIC 9(2) VALUE 9.
179 001790 04 PIC 9(2) VALUE 13.
180 001800 04 PIC 9(2) VALUE 7.
181 001810 04 PIC 9(2) VALUE 10.
182 001820 04 PIC 9(2) VALUE 12.
183 001830 04 PIC 9(2) VALUE 6.
184 001840 04 PIC 9(2) VALUE 4.
185 001850 04 PIC 9(2) VALUE 7.
186 001860 02 REDEFINES WORK-TABLE.
COBOL85 V30L10 SALES THU FEB 06 10:44:56 1997 0006
LINE SEQNO A B
187 001870 03 OCCURS 4.
188 001880 04 GROUP-N PIC 9(2) OCCURS 10.
189 001890* Counters
190 001900 77 CNTI PIC 9(2) BINARY.
191 001910 77 CNTJ PIC 9(2) BINARY.
192 001920 77 PAGEN PIC 9(3) BINARY.
193 001930*
194 001940******************************************************************
195 001950 PROCEDURE DIVISION.
196 001960*
197 001970* Open Print File
198 001980 OPEN OUTPUT PRINT-FILE
199 001990 INITIALIZE SALE
200 002000 .
201 002010* Header
202 002020* (fixed positional partition : HEAD)
203 002030 PERFORM VARYING PAGEN FROM 1 BY 1 UNTIL PAGEN > 2
204 002040 MOVE "SALE" TO PRT-FORMAT
205 002050 MOVE "HEAD" TO PRT-GROUP
206 002060 MOVE PAGEN TO PAGE-COUNT OF SALE
207 002070 WRITE SALE AFTER ADVANCING PAGE
208 002080* ~~~~~~~~~~~~~~~~~~~~ form feed
209 002090 PERFORM VARYING CNTI FROM 1 BY 1 UNTIL CNTI > 4
210 002100* Detail line printing
211 002110* (floating positional partition : DETAIL)
212 002120* Set sample data
213 002130 MOVE "DETAIL" TO PRT-GROUP
214 002140 PERFORM VARYING CNTJ FROM 1 BY 1 UNTIL CNTJ > GROUP-N(CNTI PAGEN
)
215 002150 MOVE GOODS-NAME-DATA(CNTJ) TO GOODS-NAME OF SALE
216 002160 MOVE DATE-DATA(CNTJ) TO SALES-DATE OF SALE
217 002170 MOVE CUSTOMER-NAME-DATA(CNTJ) TO CUSTOMER-NAME OF SALE
218 002180 MOVE SALES-DATA(CNTJ) TO SALES OF SALE
219 002190 ADD SALES-DATA(CNTJ) TO SALES-SUM OF SUM-LINE
220 002200 IF CNTJ = 1 THEN
221 002210 MOVE REGION-NAME-DATA(PAGEN) TO REGION-NAME OF SALE
222 002220 MOVE G-NAME(CNTI) TO GROUP-NAME OF SALE
223 002230 IF CNTI = 1 THEN
224 002240 WRITE SALE AFTER ADVANCING 1 LINE
225 002250* ~~~~~~~~~~~~~~~~~~~~~ form feed
226 002260 ELSE
227 002270 WRITE SALE AFTER ADVANCING 0 LINE
228 002280* ~~~~~~~~~~~~~~~~~~~~ no form feed
229 002290 END-IF
230 002300 MOVE SPACE TO REGION-NAME OF SALE
231 002310 MOVE SPACE TO GROUP-NAME OF SALE
232 002320 ELSE
233 002330 WRITE SALE AFTER ADVANCING 0 LINE
234 002340* ~~~~~~~~~~~~~~~~~~~~ no form feed
235 002350 END-IF
236 002360 END-PERFORM
237 002370* Sum printing
238 002380* (floating positional partition : SUM)
239 002390 MOVE "SUM" TO PRT-GROUP
COBOL85 V30L10 SALES THU FEB 06 10:44:56 1997 0007
LINE SEQNO A B
240 002400 MOVE CORR SUM-LINE OF SAMPLE-DATA TO SALE
241 002410 WRITE SALE AFTER ADVANCING 0 LINE
242 002420 ADD SALES-SUM OF SUM-LINE TO SALES-TOTAL-SUM OF TOTAL-SUM-LINE
243 002430 MOVE 0 TO SALES-SUM OF SUM-LINE
244 002440 END-PERFORM
245 002450* Total sum printing
246 002460* (floating positional partition : TOTAL)
247 002470 MOVE "TOTAL" TO PRT-GROUP
248 002480 MOVE "LOGO.BMP" TO LOGO-AREA OF SALE
249 002490 MOVE "B" TO EDIT-MODE OF LOGO-AREA OF SALE
250 002500 MOVE CORR TOTAL-SUM-LINE OF SAMPLE-DATA TO SALE
251 002510 WRITE SALE AFTER ADVANCING 0 LINE
252 002520 END-PERFORM
253 002530******************************************************************
254 002540 CLOSE PRINT-FILE
255 002550 STOP RUN
256 002560 .
257 002570 END PROGRAM SALES.
COBOL85 V30L10 SALES THU FEB 06 10:44:56 1997 0008
STATISTICS: HIGHEST SEVERITY CODE=I, PROGRAM UNIT=1