Any Questions?

Download Report

Transcript Any Questions?

Agenda
• Reporting
• Work on Assignment 4!
Printing on power systems
Printing on power systems
Job
Output Queue
Program/
Command
Spooled File
Data
*FILE
Report
Layout
(Printer
File)
*FILE
Printing Reports with COBOL
A Good Report…
• Heading (a meaningful report name)
– Date and Page Number
• Column Headings (to identify data)
• Order column from left to right to highlight
significant data
• Edit numbers for readability
• Include Totals at end of report and groups of items
• ** To identify the ‘level’ of a total
• Clearly indicate the end of the report.
Customer Accounts
How Many Record Formats?
Customer Accounts
Date: 2004-12-31 Page: 999
Date
Amount
2004-05-12
2004-06-09
2004-09-28
$100.00
$200.00
$300.00
Customer: 1015 Cindy Laurin
* Totals: 1015 Cindy Laurin
$600.00
Customer: 1016 Bruce Nugent
2004-01-31
$100.00
* Totals: 1016 Bruce Nugent
$100.00
** Totals: All Customers
*** End of Report
$700.00
How Many Record Formats?
Heading
Column Heading
Customer Heading
Detail Line
Detail Line
Detail Line
Customer Accounts
Date: 2004-12-31
Page: 999
Date
Amount
2004-05-12
2004-06-09
2004-09-28
$100.00
$200.00
$300.00
Customer: 1015 Cindy Laurin
Customer Total
* Totals: 1015 Cindy Laurin
$600.00
Customer Heading
Detail Line
Customer: 1016 Bruce Nugent
2004-01-31
$100.00
Customer Total
* Totals: 1016 Bruce Nugent
$100.00
Report Total
End of Report
** Totals: All Customers
*** End of Report
$700.00
Record Formats
• Each Record format is defined using it’s
own Group-Item in the Working Storage
Section.
• Record format name is defined using the 01
level
• Fields and literals are defined using
subsequent levels with Picture & Values
Clauses
Picture Clause Review
• Define Variables
• Define how Variables are displayed
Editing Functions
Function
Character
Printing of a / as a separator
Printing of Decimal Point in an integer
Suppress Leading Zeros in an integer
Print a Dollar Sign in front of an integer
/
.
Z
$
Print a Comma in an integer
Printing of + or – signs
Printing of ‘Debit’ or ‘Credit’ symbols
Printing of Spaces as separators
,
+ or DB or CR
B
Printing of Zeros as separators
Print Leading asterix
0
*
Examples
Trans-Amount PIC S9(6)V999 Value 4565.78.
Report-Item
PIC 9(6)V999
PIC $999999V999
PIC $ZZZ,ZZZ.99
PIC $ZZZ,ZZZ.9
Edited Results
Examples
Trans-Amount PIC S9(6)V999 Value 4565.78.
Report-Item
PIC $ZZZ,ZZZ.99PIC $ZZZ,ZZZ.99CR
PIC $ZZZZZZB99
PIC $ZZZZZZ.99+
Edited Results
Examples
Trans-Amount PIC S9(6)V999 Value 4565.78-.
Report-Item
PIC 9(6)V999
PIC $999999V999
PIC $ZZZ,ZZZ.99
PIC $ZZZ,ZZZ.9
Edited Results
Examples
Trans-Amount PIC S9(6)V999 Value 4565.78-.
Report-Item
PIC $ZZZ,ZZZ.99PIC $ZZZ,ZZZ.99CR
PIC $ZZZZZZB99
PIC $ZZZZZZ.99+
Edited Results
Examples
Customer Name PIC X(20) Value ‘Cindy
Laurin-Moogk’
Report Item
PIC X(20)
PIC XXXXXXXXXXBXX
Printing in COBOL
WORKING STORAGE.
FILE SECTION
FD Customer-Report.
01 Print-Record-Out.
01 Heading-1
05
PIC X(8) Value Spaces.
05
PIC X(17) Value ‘Customer
Accounts’
05
PIC X(5) Value Spaces.
05
PIC X(6) Value ‘Date: ‘
05 WS-Date-Out format of date.
05
PIC X(1) Value Spaces.
05
PIC X(6) Value ‘Page: ‘.
05 WS-Page PIC 9(3).
Printing or Writing to a Spooled
File
Detail-Line-1 PIC X(80)
VALUE ‘Cindy’s Test’
Detail-Line-2 PIC X(80)
VALUE ‘COBOL Line of Code’
WRITE Print-Record-Out FROM Detail-Line-1
WRITE Print-Record-Out FROM Detail-Line-2
Printing or Writing to a Spooled File
(using AFTER ADVANCING)
Detail-Line-1 PIC X(80)
VALUE ‘Cindy’s Test’.
Detail-Line-2 PIC X(80)
VALUE ‘COBOL Line of Code’.
WRITE Print-Record-Out FROM Detail-Line-1.
WRITE Print-Record-Out FROM Detail-Line-2
AFTER ADVANCING 1 LINE.
Printing or Writing to a Spooled File
(using BEFORE ADVANCING)
Detail-Line-1 PIC X(80)
VALUE ‘Cindy’s Test’.
Detail-Line-2 PIC X(80)
VALUE ‘COBOL Line of Code’.
WRITE Print-Record-Out FROM Detail-Line-1
BEFORE ADVANCING 1 LINE.
WRITE Print-Record-Out FROM Detail-Line-2.
Printing or Writing to a Spooled File
(using AFTER ADVANCING)
Detail-Line-1 PIC X(80)
VALUE ‘Cindy’s Test’.
Detail-Line-2 PIC X(80)
VALUE ‘COBOL Line of Code’.
WRITE Print-Record-Out FROM Detail-Line-1.
WRITE Print-Record-Out FROM Detail-Line-2
AFTER ADVANCING PAGE.
Printing or Writing to a Spooled File
(using BEFORE ADVANCING)
Detail-Line-1 PIC X(80)
VALUE ‘Cindy’s Test’.
Detail-Line-2 PIC X(80)
VALUE ‘COBOL Line of Code’.
WRITE Print-Record-Out FROM Detail-Line-1
BEFORE ADVANCING PAGE.
WRITE Print-Record-Out FROM Detail-Line-2.
Printing or Writing to a Spooled File
Detail-Line-1 PIC X(80)
VALUE ‘Cindy’s Test’.
Detail-Line-2 PIC X(80)
VALUE ‘COBOL Line of Code’.
WRITE Print-Record-Out FROM Detail-Line-1
AFTER ADVANCING 1 LINE.
WRITE Print-Record-Out FROM Detail-Line-2
BEFORE ADVANCING 1 LINE.
Homework?