Reference no: EM132850349
MAFD4202 Mainframe Development - Durham College
Description
Create a new program called "A7-CallCenterOpReport".
This program will read records from a data file named "A7.dat"; interprets the data using an array; performs analysis and writes a formatted report output to a file named "A7-CallCenterOpReport.out".
The objective of this assignment is tofocus on the use of arrays.
This program is to report on the activity of our call centre operators.
There are many different operators, some full-time, some part-time or contract.
Each month we calculate the number of calls that each operator has answered and produce the data file your program will use, which shows data from the past 12 months.
Starter code is available in the file "A7-CallCenterOpReport-starter.cbl".
General Note
• You MUST use OCCURS on the input record and detail line for monthly volume values (July - June)
• The program is to produce the report shown on the last page of this document. You do not have to match the exact spacing, but headings should be aligned over the columns of data.
Requirements
1) Print your name/assignment at the top of the page in the usual manner. No line counting is required, single space each detail line.
2) Use an OCCURS CLAUSE on the input record to access the sales values and on the detail line to print them out.
3) Use PERFORM... VARYING to process the monthly volume values.
a) Sum the 12 values in the array to calculate and print out the operator volume total for the 12 month period.
b) Calculate and print the operator monthly average calls as shown.
i) For any month when the value is zero, that month is not to be included in the average calculation. See Joanne #B12 in the data above where we would divide by 9, not by 12.
ii) Use the REMAINDER option on the DIVIDE statement to calculate the remainder. Print a remainder of zero as 0.
iii) If a record has 0 for all 12 values the average cannot be calculated because it would be division by zero. The program is to print the word ZERO (use the REDEFINED variable for this) for the average.See Amanda #C22 in the data file and output.
4) Count the number of records with no calls (zero for all 12 months), and print out the count with a short title.
In the sample data, this answer would be 1 (Adam, #B10 has all zeroes).
5) Count the total number of months with zero calls for any operator and print out the total with a short title.
In the sample data, this answer would be 18 = 12 for ADAM + 6 for JOANNE
6) Count and print out the total number of calls for all operators and all months.
7) Total and print the total calls, avg, and remainder for all operators
8) Count and print out the number of operators with calls in each month.
9) Calculate the average number of calls in each month.
If a month has no calls then the average would be zero.
10) Determine the operator with the highest and operator with the lowest non-zero monthly call average.
For duplicates, choose the first operator you find in each case.
Print out the operator # and average for each as shown on the sample report.
11) Finally, determine the month with the HIGHEST MONTHLY AVERAGE. For duplicates, choose the first month you find.
a) Write out the actual column index of the MONTH
(example July would be 01, August 02, etc.)
b) Write out the MONTH name
(Jul, Aug, Sep, Oct, Nov, Dec, Jan, Feb, Mar, Apr, May, Jun)
Attachment:- Mainframe Development.rar