1177185_REPORTER_III_Report_Language_Operations_Reference_Manual_Jan85 1177185 REPORTER III Report Language Operations Reference Manual Jan85

1177185_REPORTER_III_Report_Language_Operations_Reference_Manual_Jan85 manual pdf -FilePursuit

1177185_REPORTER_III_Report_Language_Operations_Reference_Manual_Jan85 1177185_REPORTER_III_Report_Language_Operations_Reference_Manual_Jan85

User Manual: 1177185_REPORTER_III_Report_Language_Operations_Reference_Manual_Jan85

Open the PDF directly: View PDF PDF.
Page Count: 592

Download1177185_REPORTER_III_Report_Language_Operations_Reference_Manual_Jan85 1177185 REPORTER III Report Language Operations Reference Manual Jan85
Open PDF In BrowserView PDF
•
UNISYS

REPORTER III
Report
Language
Operations

Reference Manual

Copyright © 1983, 1985 Unisys Corporation.
All Rights Reserved.
Unisys is a registered trademark of Unisys Corporation.

Relative to Release
Level 2.0
Priced Item

January 1985
Printed in U S America
1177185

Unisys cannot accept any financial or other responsibilities that may be the
result of your use of this information or software material, including direct,
indirect, special or consequential damages. There are no warranties extended
or granted by this document or software material.
You should be very careful to ensure that the use of this software material and!
or information complies with the laws, rules, and regulations of the jurisdic.
tions with respect to wh ich it is used.
The information contained herein is subject to change without notice. Revisions may be issued to advise of such changes and!or additions.
Comments or suggestions regarding this document should be submitted on a
Field Communication Form (FCF) with the Class specified as "2" (System
Software), the Type specified as "1" (F.T.R.), and the Product specified as the
seven-digit form number of the manual (for example, "1177185"). The FCF
should be sent to the following address: Unisys Corporation, Product Assurance and Support, 19 Morgan, Irvine CA 92718-9958 USA.

•

Product Information
Announcement

UNISYS

o New Release

0

Revision

•

Update

0

New Mail Code

Title

REPORTER III Report Language Operations Guide
This Product Information Announcement announces the release of Update 3 to the January 1985 publication of the

REPORTER III Report Language Operations Guide. This update is relative to the A Series Mark 4.0.2 System
Software Release, dated October 1993.
This update documents enhancements to REPORTER III to process and generate COBOl85 programs. These
enhancements are being made to support users migrating from V Series systems to A Series systems.

Remove

Insert

xi through xii
1-1 through 1-2
2-17 through 2-18
4-35 through 4-36
4-47 through 4-48
4-79 through 4-80
4-137 through 4-138
4-161 through 4-162
4-179 through 4-1828
4-241 through 4-242
4-333 through 4-334
6-1 through 6-16
A-I through A-4
C-25 through C-26
C--:39 through C-40

iiA through iiD
xi through xii
1-1 through 1-2
2-17 through 2-18B
4-35 through 4-36
4-47 through 4-48
4-79 through 4-80
4-137 through 4-138
4-161 through 4-162
4-179 through 4-182B
4-241 through 4-242
4-333 through 4-334
6-1 through 6-16
A-I through A-4
C-25 through C-26B
C-39 through C-40

Changes are indicated by vertical bars in the margins of the replacement pages.
Retain this Product Information Announcement as a record of changes made to the base publication.
To order additional copies of this document
•

United States customers, call Unisys Direct at 1-800-448-1424.

•

All other customers, contact your Unisys Sales Office.

•

U nisys personnel, use the Electronic Literature Ordering (ElO) system.

Announcement only:

Announcement and attachments:

AS244

System:
Release:

REPORTER III
Mark 4.0.2 October 1993

Part number: 1177185-003

•
UNISYS

Publication Change Notice (PCN)
Form-PeN number

Date

1o I
Title

1177185-()()2

pc::; IBB

REPORTER III Report Language Operations Guide
(Relative to the Mark 2.4 System Softw~re Release>

Description

This PCN provides revisions to the REPORTER III Report
Language Operations Guide, relative to the 2.4 Software
Release.
Revisions to the text are indicated by black vertical bars
on the affected pages.

Replace These Pages

Add These Pages
4-92A
4-94A
4-98A
4-148A
4-182A
4-242A
4-312A
C-40A

iii thl'''u xi
4-1
4-17 thl'"'u 4-19
4-23 tht"'u 4-25
4-91 thl'"'l_l 4-99
4-145 thl'"'u 4-147
4-153 thl'''u 4-155
4-163 thl'"'u 4-169
4-181
4-187
4-241
4-297
4-311
4-341 thl'"'u 4-347
C-7
C-21
C-27
C-39
IYldex 1 thl'"'u 9

Copyright © 1988 Unisys Corporation
All Rights Reserved

Retain the PCN cover sheet as a record of changes made to
the basic publication.
Distribution Codes SC, SD, SE
1177185-002
Printed in U S America

•
JNISYS

Publication Change Notice (peN)

te

Form-PeN number

)1/20/86

1177185-001

Ie

ErORTER III

Report Language User's Guide (J anu a r'y 1985)

'Scription

lis PCN provides reV1S10ns to the REPORTER III Report Language User's Guide,
~lative to the 2.1 Software Release.
Revisions to the text are indicated by
Lack vertical bars on the affected pages.
Replace These Pages

Add This Page
3-2A

3-1
3-3
4-91
4-151
4-177 thru 4-179
4-225
4-271
6-9
6-23
6-35
A-3
B-1 thru B-3
B-7 thru B-9
C-25
C-37
~tain

this PCN cover sheet as a record of changes made to the basic publication.

COPYRIGHT

© 1986

Unisys Corporation

peN J J77185-00 I
Pnnted In U S America

Page Status
Page

Issue

iiA through iiC
iiD
iii through x
xi
xii
1-1 through 1-2
1-3 through 1-5
1-6
2-1 through 2-17
2-18 through 2-18A
2-18B
2-19 through 2-35
2-36
3-1
3-2 through 3-2A
3-2B
3-3 through 3-4
3-5 through 3-19
3-20
4-1 through 4-2
4-3 through 4-16
4-17 through 4-20
4-21 th rough 4-22
4-23 through 4-26
4-27 through 4-35
4-36
4-37 through 4-46
4-47
4-48 through 4-79
4-80
4-81 th rough 4-90
4-91 th rough 4-92
4-92A through 4-928
4-93 th rough 4-94
4-94A through 4-948
4-95 through 4-98
4-98A through 4-988
4-99 th rough 4-100
4-101 through 4-137
4-138
4-139 through 4-144
4-145 through 4-148A

-003
Blank
-002
-003
Blank
-003
-000
Blank
-000
-003
Blank
-000
Blank
-000
-001
Blank
-001
-000
Blank
-002
-000
-002
-000
-002
-000
-003
-000
-003
-000
-003
-000
-002
-002
-002
-002
-002
-002
-002
-000
-003
-000
-002

continued
1177185-003

iiA

Page Status

continued
Page

4-148B
4-149 through 4-150
4-151
4-152
4-153 through 4-156
4-157 through 4-160
4-161
4-162
4-163 through 4-170
4-171 through 4-176
4-177 through 4-178
4-179
4-180 through 4-181
4-182 through 4-182A
4-182B
4-183 through 4-186
4-187 through 4-188
4-189 through 4-224
4-225
4-226 through 4-240
4-241
4-242
4-242A
4-242B
4-243 through 4-271
4-272
4-273 through 4-296
4-297 through 4-298
4-299 through 4-310
4-311 through 4-312A
4-312B
4-313 through 4-332
4-333
4-334 through 4-340
4-341 through 4-348
4-349
4-350
5-1 through 5-15
5-16
6-1
6-2
6-3 th rough 6-4
6-5 through 6-6
6-7
6-8 through 6-9
6-10
6-11
6-12
6-13 through 6-14
6-15

Issue
Blank

-000
-001
-000
-002
-000
-003
-000
-002
-000
-001
-003
-000
-003
-002
-000
-002
-000
-001
-000
-002
-003
-002
Blank

-000
-001
-000
-002
-000
-002
Blank

-000
-003
-000
-002
-000
Blank

-000
Blank

-000
-003
-000
-003
-000
-003
-001
-003
-000
-003
-000

continued

iiB

1177185-003

Page Status

continued
Page

Issue

6-16
6-17 through 6-23
6-24
6-25 through 6-34
6-35
6-36 through 6-37
6-38
A-I through A-3
A-4
B-1
B-2
B-3
B-4 through B-7
B-8 th rough B-9
B-10 through B-11
B-12
C-1 through C-6
C-7 through C-8
C-9 through C-20
C-21 through C-22
C-23 through C-24
C-25 through C-26A
C-26B
C-27 through C-28
C-29 through C-36
C-37
C-38
C-39 through C-40
C-40A
C-40B
C-41 through C-43
C-44
D-1 through D-4
E-1 through E-7
E-8
1 through 9
10

-003
-000
-001
-000
-001
-000
Blank
-003
Blank
-001
-000
-001
-000
-001
-000
Blank
-000
-002
-000
-002
-000
-003
Blank
-002
-000
-001
-000
-003
-002
Blank
-000
Blank
-000
-000
Blank
-002
Blank

Unisys uses an II-digit document numbering system. The suffix of the document
number (1234 5678-xyz) indicates the document level. The first digit of the suffix
(x) designates a revision level; the second digit (y) designates an update level. For
example, the first release of a document has a suffix of -000. A suffix of -130
designates the third update to revision 1. The third digit (z) is used to indicate an
errata for a particular level and is not reflected in the page status summary.

1177185-003

iiC

TABLE OF CONrENTS

INTR.OOOCI'IOO ••••••••••••••••••••••••••••••••••••••••
SECrION 1.
SY'S'I'm1

SYSTmM DESCRIPTION ••••••••••••••••••••••

E"FA.'l'lJRES..................................

INrERFACE 'ID SYSTEM •••••••••••••••••••••
REPORI' lANGUAGE AND SYSTEM OPERATICN •••••••••••••
~WLE REPORI'-~KruAGE SPECIFI~TION ••••••••••••

~UAGE

ix
1
1
1
1
1

1
1

2

1
1
2
2
2
3
3
3
3
3
4
7
7

2

3
4

SECI'IOO 2.

BASIC INFORMATICN ABOUI'
THE REPORT LANGUAGE •••••••••••••••••••••
CliARA.crm

SEI'................................ ....

SPOCIFICA.TION FORM •••••••••••••••••••••••••••••••
~ INDlCA.'IOR ••••••••••••••••••••••••••••••••
D~nlITION OF IDROO ••••••••••••••••••••••••••••••
RESm'VID IDRJ)S. • • • • • • • • • • • • • • • • • • • • • • • ••••••••

Ke}Words •••••••••••••••••••••••••••••••••••
Optional Words •••••••••••••••••••••••••••••
~

~~OD

........................................ .

OF LANGUAGE DEFINITION ••••••••••••••••••••

S'mI."'.AX DIAGRAl'1S •••••••••••••••••••••••••••••••
RESm'VED \\1ORJ)S. • • • • • • • • • • • • • • • • • • • • • • • • • • • ••••

2
2

2
2
2
2

2
2
2
2

P'UN'crtJATION •••••••••••••••••••••••••••••••••••

2
2

SYNTACTIC VARIABLES •••••••••••••••••••••••••••
Sa1:At.fl'IC R'UIE:S ••••••••••••••••••••••••••••••••

2
2

TEHMINOLOGY FOR DATA

••••••••••••••

2

DATA I'mi OR ITEM......................... ••••

2
2

IDENTIFI~TION

GROUP •••••••••••••••••••••••••••••••••••••••••
RECO.RD ••••••••••••••••••••••••••••••••••••••••
DATA S'l'R.UCIU'RE ••••••••••••••••••••••••••••••••

2

STATISTICAL DATA ITEM •••••••••••••••••••••••••
NONSTATISTICAL ~TA rrEM ••••••••••••••••••••••

2
2
2
2
2
2
2
2
2
2

I'ID1 ••••••••••••••••••••••••••••••••••

2

l.~.

2
2
2
2
2

DATA ~E •••••••••••••••••••••••••••••••••••••
I.£:X3ICA.I.. RECORD ••••••••••••••••••••••••••••••••

CONTROL-BREAK ITEM ••••••••••••••••••••••••••••
RANGE-BREAK I'lD1 ••••••••••••••••••••••••••••••
rnP'UT DATA I'I'H-1.................... •• '. • • • • • • ••
ACCE,Pl'ID DATA IrrEl1 ••••••••••••••••••••••••••••

DERIVED DATA I'I'H-1 •••••••••••••••••••••••••••••

~y

VOCABt.JI..AR.Y

• • • • • • • • • • • • • • • • • • • • • • • • • • • • ••••

DATA-I'l'n1

~.

GOOUP

••••••••••••••••••••••••••••••••••••

~

• • • • • • • • • • • • • • • • • • • • • • • • • • •••••

~CRO ~ ••••••••••••••••••••••••••••••••••••

roIDITlOO NMv1E. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •
RECO.RD ~ •••••••••••••••••••••••••••••••••••
FIlE Nl~ •••••••••• •••••••••••••••••••••••••••
LINK ~ •••••••••••••••••••••••••••••••••••••
D.ATA~Bl\SE ~m

DATA-SEl'
SE'I'

...•..•...•...•.......•.••••..•.

~ •••••••••••••••••••••••••••••••••

NAl'1E..... #. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
iii

2

2
2
2
2
2

8

9
10
10
10
11
11
11
11
13
14
16
16
16
16
16
17
17
17
18
18
18
19
19
19
19
20
20

peN 1177185-002

INPUT-PBOCEDURE NAME ••••••••••••••••••••••••••
EXAMPLES ••••••••••••••••••••••••••••••
SAMPLE Vcx:::ABUl.ARY 1: ..VOCEMP" •••••••••••••••••
II
~lE VClCABtJI..ARY 2: .. VOCAST •••••••••••••••••
SAM.I>I...E VOCABUI.J\R.Y 3: II ~I' • • • • • • • • • • • • • • • • •
~lE VOCABtJI..ARY 4: .. CLIENI'II •••••••••••••••••
SAMPLE VOCABt.JI.AR.Y 5: "CUSTV" ••••••••••••••••••
~lE VOCABu:LARY 6: .. SHIPV" ••••••••••••••••••

V~~

3. DESIGNIt~ REPORTS •••••••••••••••••••••••
REPORT SPECIFlCATI<::N' •••••••••••••••••••••••••••••
SINGlE-REPORT SPECIFICATION •••••••••••••••••••
MULTIPLE-REPORT SPECIFICATION •••••••••••••••••
SPECIFICATION CONSTRAINTS ••••••••••••••••••••••••
ORDER OF LANGUAGE STATEMENTS ••••••••••••••••••
CONI'ROL-BREAK I'lEMS AND ORDERING KEYS •••••••••
ABSTRACT STATEMENT ••••••••••••••••••••••••••••

2

2
2
2

SEC~ION

LANGUAGE

S[~T~mNTS ••••••••••••••••.•••••••••••••

BASIC LANGUAGE CONSTRUCTS ••••••••••••••••••••••••
FllN"CI'ION"S ••••••••••••••••••••••••••••••••••••••••

EXAMPLE REPORT SPECIFICATIONS ••••••••••••••••••••
EXAMPLE SINGLE-REPORT SPECIFICATION •••••••••••
EXAMPLE MULTIPLE-REPORT SPECIFICATION •••••••••
SECTION 4.

3

3
3
3
3
3
3
3
3
3
3
3
3
3

REPORT I.AOOUAGE STATEMENTS ••••••••••••••

4
4
4

ABSTRACI'STATEMENT •••••••••••••••••••••••••••••••

AcrnPI'

STA~.................................

STATEMENl' rn

USE OF ACCEPT
B 2000/B 3000/B 4000 SERIES •••••••••••••.••
ACc:::!E.:SS CIA.USE....................................
AGE EWCI'ION.......... • • • • • • • • . • • • • • • • • • • • • • • • • ••

ASSIGN LISTING STATEMENT •••••••••••••••••••••••••

l3l\.SE-DA'l"E OPI'ION............................... ..

BUILD INTERNAL ~BUTES CIA.USE •••••••••••••••••
BUILD SI'A~...............................
C-B-IfE'AI)I~

...
DEOC.......................... ...... .

C-B-SUBIiE:A.DING DESC..............................
OOOOL PICI'lJRE ••••••••••••••••••••••••••••••••••••
OO~ DESC ••••••••••••••••••••••••••••••••••••••

DEFAULT IDENTIFIERS •••••••••••••••••••••••••••
OO~S ••••••••••••••••••••••••••••••••••••••••••

LINE O~ •••••••••••••••••••••••••••••••••
PAGE O'VERE'LDW •••••••••••••••••••••••••••••••••
~It\IE srA~

••••••••••••••••••••••••••••••••

OOMPOUND-DATA-STRUCTURE CLAUSE •••••••••••••••••••
cnn?OUND-DATA-STRUCI'lJRE-cIAUSE LIST ••••••••••••••
CONDITIONAL PRINT SPECIFICATION ••••••••••••••••••
CONTROL-BREAK HEADINGS •••••••••••••••••••••••••••
DATA-BI\SE crAUSE •••••••••••••••••••••••••••••••••
DATA ~ ••••••••••••••••••••••••••••••••••••••••
DATA-PROCESSING-oPTI~l

STATEMENT •••••••••••••••••

DATA-8m' CI.A.USE..................................
DATA-STRUCTURE CLAUSE ••••••••••••••••••••••••••••

peN

1177185-002

iv

20
21
22
24
26
28
32
34

2
2
2
2

1
1
5
5
7
7
8
8

8
13
14
15
15
17
1
4

7

4 - 8

4
4
4
4

4
4
4
4
4

4
4
4
4
4
4
4
4
4
4
4
4
4
4
4

13
17
21
24

26
30
38
43
47
48

53
55
58
60
63
64

67
70
72
77
79
85
86
91

OMS II ~A-STRUCTURE CLAUSE ••••••••••••••••••••• 4
A SERIES OF gy-~ ••••••••••••••••••••••••••• 4
B 1000 SERIES OF SYSTEMS •••••••••••••••••••••• 4
B 2000/B 3000/B 4000 SERIES OF SYSTEMS •••••••• 4

92
96
99
99
99
105

EDITINCi A'rrR.IBlJI'ES... • • • • • • • • • • • • • • • • • • • • • • • • •••• 4

III

F'lJN'CI'IOO............. • • • • • • • • • • • • • • • • • • • • •• 4
:EXPRFSSIWS. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• 4

112
114
114
117
117
117
118
120
121
124
126
127
127
128
129
131
137
143
145
149
151
154
157
161
163
170
174
178
180
180
181
181
182
182B
183
186
188
189
189
190
191
192
193
193
199
203

4
4

DATE-oaNVERT FUNCTION ••••••••••••••••••••••••••••

DATE

ro~

••••••••••••••••••••••••••••••••••••••

~

ARITHMETIC :EXPRESSION •••••••••••••••••••••••••
srR.IN(; :EXPRFSSlOO'.. • • • • • • • • • • • • • • • • • • • • • • • • • ••
BOOLEAN EXPRESSION ••••••••••••••••••••••••••••
S~le Boolean Expression ••••••••••••••••••
Basic Boolean ~ressian •••••••••••••••••••
0amp1ex Boolean Expression ••••••••••••••.••
Pattertl Matchirlg...........................

4

EXTENSI01~ ••••••••••••••••••••••••••••••••••••••••

4

EXTENSION

4

4
4
4
4

4

STATEMENT •••••••••••••••••••••••••••••• 4

FIlE NAl-1E ••••••••••••••••••••••••••••••• 4
A SERIES OF SYS~ ••••••••••••••••••••••••••• 4
B 1000 SERIES OF SY~ •••••••••••••••••••••• 4
B 2000/B 3000/B 4000 SERIES OF SYSTEMS •••••••• 4

~

EXTRACT-ITEM DESC •••••••••••••••••••••••••••••••• 4
EXTRACT S~TEMENT •••••••••••••••••••••••••••••••• 4
~ OF ~ srA~lI'S ••••••••••••••••• 4
FII.E MOD.. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• 4
E"OOI'IOOS. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •

roIf.1

4

ATrRI.BtJ'I'FS. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• 4

~LENGTH

MONTH OPTION ••••••••••••••••••••••••• 4

GROtJP STATEMENT.................................. 4
INPt.1I' srATEMENT.................................. 4
INSmI'. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• 4
INTERNAl." A'I"I'RIBlJI'FS •••••••••••••••••••••••••••••• 4
D~ ••••••••••••••••••••••••••••••••••••••••

4

ITn-1. SIZE............ • • • • • • • • • • • • • • • • • • • • • • • • • • ••
LI'I'ERAI.S. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • ••
NlJl.1BERS. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • ••
IN'I'EX3ERS. • • • • • • • • • • • • ..... • • • • • • • • • • • • • • • • • • • • • ••

4
4
4
4

srR.IN(;s •••••••••••••••••••••••••••••••••••••••

4

ITH1

~RY"

SIZE...................................... 4

NONSTATISTICAL EXPRESSION •••••••••••••••••••••••• 4
NUIL SPEC.. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• 4

srA'ID1E:NI'..................... •••••••••••••
PASSWORD STATEMENT •••••••••••••••••••••••••••••••
PRESELECT BCX)LFAN :EXPRFSSlOO • • • • • • • • • • • • • • • • • ••••
SIMPLE BOOLEAN EXl?RESSIW •••••••••••••••••••••

ORDI!.~

4

4
4

4
BASIC AND CClvtPLEX BOOLEAN EXPRESSIONS ••••••••• 4

Valid Operators............................ 4
PRESELECT CI..A.USE ••••••••••••••••••••••••••••••••• 4

SINGLE DATA-STRUCTURE ACCESS •••••••••••••••••• 4
ONE-TO-ONE DATA-STRUCTURE ACCESS •••••••••••••• 4
OOE-rro-MANY DATA-STRUCIURE ACCESS.. • • • • • • • • • •• 4
PRI.NI' EXc::E:PI'IOOS ••••••••••••••••••••••••••••••••• 4
v

PCN 1177185-002

PRINI' SPECIFICA.TIONS •••••••••••••••••••••••••••••
STA~ ••••••••••••••••••••••••••••••••••
P~SINCi ~DDE ••••••••••••••••••••••••••••••••••
PROCESS-oPTION ASSIGN STA~ ••••••••••••••••••
PROCESS-oPTION SAVE STATEMENT ••••••••••••••••••••
PROCESS-oPTION SET STATEMENT •••••••••••••••••••••
PROCESS-oPTION STATEMENT •••••••••••••••••••••••••
PROCESS-oPTION SUPPRESS ST~ ••••••••••••••••
RANJX:>t.1-s.Mt1PI...E:

PRIm

DFSC...................... . . .. . . . . .

RANGE-BREAK-lTEM DESC ••••••••••••••••••••••••••••
RANGE STA~ ••••••••••••••••••••••••••••••••••
REIATIONA!J OPERA'IDR ••••••••••••••••••••••••••••••

REPl,ACE STA~ ••••••••••••••••••••••••••••••••
REPORI'- I~ MOD ••••••••••••••••••••••••••••••••••
REPORI'-oPTION SET STATEMENT ••••••••••••••••••••••
REPORI'-oPTION S~TEMENT ••••••••••••••••••••••••••
REPORT-oPTION SUPPRESS STATEMENT •••••••••••••••••
REPORI' STATEMENT................. ••••••••••••••••
R:>\\f IFSC. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •
~LE STA~ •••••••••••••••••••••••••••••••••
SAVE ~STINCi STATEMENT •••••••••••••••••••••••••••
SEI.ECl' STATEMENT.............................. •••
SET SORT BDOCKING STATEMENT ••••••••••••••••••••••
SET SORI' ·SIZE, ST~ ••••••••••••••••••••••••••
STATISTI~ EXPRESSlOO •••••••••••••••••••••••••••
STATISTICAl. FUNcrIOO •••••••••••••••••••••••••••••
STAT P~ ••••••••••••••••••••••••••••••••••
SUMMARIZE STATEMENT ••••••••••••••••••••••••••••••
S~

STATISTICS ••••••••••••••••.•••••••••••••••
SUPPRESS SORT ST~ ••••••••••••••••••••••••••

SYSTEMATIC-SAMPLE DESC •••••••••••••••••••••••••••
SYSTEM-FILE-DATA-STRUCTURE CLAUSE ••••••••••••••••
T.PSLE STATEMENT............................ ••••••
~

............................................ .

TI'rI..E STA'I'EMWT............................. •••••

'IOI'.AIrPOPtJIA.TION •••••••••••••••••••••••••••••••••
VOCABULARY
SECI'ION 5.

STA~ •••••••••••••••••••••••••••••

EXAMPLES OF REPORrS ..................... .

:EX1\t-1PLE 1........................................
EXAMPLE 2 ••••••••••••••••••••••••••••••••••••••••
:EX1\t-1PLE 3....... . .. . . . . . . . . .. . . . . . . .. . . . . . . . . .. .
EXAMPLE 4 ••••••••••••••••••••••••••••••••••••••••
:EX1\t-1PLE 5........................................
EXAMPLE 6 ••••••••••••••••••••••••••••••••••••••••
:EX1\t-1PI..E 7......... . . . . . . . . . . . . . . . . . .. . . . .. . . . . . .
:EX1\t-1PLE 8........................................
~

~

PCN 1177185-002

vi

205
212
231
233
237
241
243
245
249
252
258
259
262
268
272
276
278
279
283
288
293
294
297
298
300
301
308
312A
320
323
324
327
335
339
341
348
349

4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5

1
1
3
4
7
8

11
13
15

SEerION 6.

SYSTEM OPERATIONS ASSOCIATED
WITH REPORT PREPARATION •••••••••••••••••
A SERIES OPERA.TIONS ••••••••••••••••••••••••••••••
FILES REQUIRED FOR EXECUTION ••••••••••••••••••
INPUT REQUIRED FOR EXECUTION ••••••••••••••••••

Rt.JN' Statenen.t ••••••••••••••••••••••••••••••

FII..E Staternet1t (s) ••••••••••••••••••••••••••
DATA State!l'IleIlt •••••••••••••••••••••••••••••
Report-Specification File ••••••••••••••••••
?mD Statanen.t •••••••••••••••••••••••••••••
EXECUTION PBOCEDURE •••••••••••••••••••••••••••
Autanatic Execution Procedure ••••••••••••••
User-Gontrolled Execution Procedure ••••••••
Execution Using Work FION language (WFL} •••
B 1000 OPERATIONS ••••••••••••••••••••••••••••••••
FILES REQUIRED FOR EXECUTION ••••••••••••••••••
INPUT REQUIRED FOR EXECUTION ••••••••••••••••••
?EXECUTE Statanent •••••••••••••••••••••••••
?FII..E Staternen.t (s) •••••••••••••••••••••••••
?DATA. Staternen.t. • • • • • • • • • • • • • • • • • • • • • • • • • • •
Report-Specification File ••••••••••••••••••
?Erld Statanen.t............... ••••••••••••••
EXECUTION PHOCEDURE •••••••••••••••••••••••••••
Automatic Execution Procedure ••••••••••••••
User-OOntrolled Execution Procedure ••••••••
B 2000/B 30Do/B 4000 OPERATIONS ••••••••••••••••••
FII..ES REQUIRED FOR EXECUTION ••••••••••••••••••
INPUT REQUIRED FOR EXECUTION ••••••••••••••••••
?EXECUTE Statement •••••••••••••••••••••••••
?FlLE Statemen.t(s} •••••••••••••••••••••••••
?DATA Staternen.t ••••••••••••••••••••••••••••
Report-Specification File ••••••••••••••••••
?mD Staternen.t •••••••••••••••••••••••••••••

EXECUTION PROCEDURE •••••••••••••••••••••••••••
Automatic Execution Procedure ••••••••••••••
User-OOnt~lled Execution Procedure ••••••••
APPENDIX A.

REPORTER III SYSTEM FDDW •••••••••••••••

APPENDIX B.

~ITS

AND DEEAULTS ••••••••••••••••••••

ITEMS, FUNcrIONS, AND CONSTRUCI'S •••••••••••••••••
I'!'E'1t1S •••••••••••••••••••••••••••••••••••••••••

EUlerIaN'S •••••••••••••••••••••••••••••••••••••
BASIC LANGUAGE CONSTRUCTS •••••••••••••••••••••
OOOOL Picture ••••••••••••••••••••••••••••••
I>a.ta
Expression. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • ••
Extenlal File NaIne •••••••••••••••••••••••••

NaIIle................................ ..

Uteral .•....•••••....•..•....•....•.••..••
~UAGE Sl'A~ •••••••••••••••••••••••
PROCESS-oPTION STATEMENTS ••••••••••••••••••••••••
DATA.-PROCESSING-oPTION STA~ ••••••••••••••••
REPORT-oPTION STATEMENTS •••••••••••••••••••••••••

REroRI'

vii

6
6
6
6
6
6
6

1
1
1
2
3
3

6

5
5
5
5
6
11
16
16
17
17
17
20
20
20
20
21
22
26
26
27
27
28
30
30
30
31
31
32

6
6
6
6
6
6

6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
A

4

1

B
1
B
1
B
1
B
1
B
1
B
1
B
2
B
2
B
2
B
3
B
3
B
7
B
9
B - 10
peN 1177185-002

MULTIPLE-REPORT SPECIFICATION ••••••••••••••••••••
APPENDIX

c.

B - 11

ERROR AND WARNING MESSAGES

AND EXCEPTIONS LJSTINGS ••••••••••••••••

c-

1

ERROR AND 'VlARNING MESSl\GES •••••••••••••••••••••••

C- 1

E>CCEPrlOOS. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •

C - 39

APPENDIX D.

.RESE:R.V'ID WORm. • • • • • • • • • • • • • • • • • •••••••

D - 1

APPENDIX E.

Gr,DSSAR.Y • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •

E - 1

INDEX. •••••••••••••••••••••••••••••••••••••••••••••••

1

peN 1177185-002

viii

INTRODUcrION

This manual defines the report language of the REroRl' writER III
(REPORI'ER III) system arxi its use in the system. The report language is
used in conjunction with the vocabulary language of the system to
prepare reports reflecting information in the user data files or data
bases.
Before a report can be prcx1uced, a vocabulary of tenns that
describe pertinent infonnation in the data files or data ba.ses must be
designed and ~eated.
When this vocabulary exists, a rep:>rt-Ianguage
specification which uses it can be designed and processed to produce the
desired reIOrt.
This manual is directed to all users of the report language.
It
presents basic infornation about the language arrl system to the
first-time or occasional user, while it is arranged to allCM easy
reference by the nore experienced user. It furnishes all users with the
detailed infonnation they need to design and specify their reports. It
is anticipa.ted that as the user gains experience in the report language,
the REPORrER III Reference Card will be increasingly relied on when
canposing report-language specifications.
The contents of the manual are organized as folICMS:
Section 1

Section I of this manual provides a general
description
of REPORTER
III, including
features of the system.

Section 2

Section 2 presents basic information
the report language.

Section 3

Section 3 is a guide
specifying reports.

Section 4

Detailed
e~lanations
of all
language
staterrents, clauses, language constructs,
and functions used to design and prepare
reports
are provided in Section 4, in
alIflabetical order.

Section 5

Examples of reIOrt-language specifications
and the reports produced are presenterl in
Section 5.

ix

for

about

designing

and

peN 1177185-002

Section 6

Section 6 contains information on
operations
associated
with
preparation.

Appendices

The four-phase system process of report
preparation
is depicted
and
discussed
briefly in Appendix A. Limits and defaults
associated
with
report-language
specification are indicated in Appendix B.
Error and warning messages associated with
system
analysis
of
report-language
specifications are listed and explained in
Appendix C. Exceptions also are listed and
explained,
separately,
in Appendix
C.
Appendix D presents a list of all reserved
words of the report language. Appendix E is
a glossary of tenns used wi thin this manual.

system
report

The follONing manuals explain the use of the REPORTER III system and the
optional On-Line REPORl'ER III nodule.
Operations Guide, REPORrER III Vocabulary Language (Relative to 2.4
Software Release), fonn 1177177.
Reference Card, REPORrER
fonn 1177318.

III (Relative

Capabilities Manual, REPORl'ER
Release), fonn 1177300.

III

User I s Guide, On-Line REPORI'ER
Release) ,fonn 1177151.

III

to 2.0 Software

( Relative
(Relative

Release),

to

2.0

Software

to

2.0

SOftware

Note that the "REPORI'ER III Vocabulary Language Operations Guide" was
formerly
titled "REPORl'ER III Vocabulary
Language
User I s Guide. II
SUbsequent references to the guide do not reflect its new title.
The REPORrER III System is designed for use with the following:
1.
2.
3.
4.

A
B
B
B

Series of Systems.
1000 Series of Systems.
2000/B 3000/B 4000 Series of Systems.
5000/B 6000/B 7000 Series of Systems.

peN 1177185-002

x

Note that throughout this guide, instructions for A Series also pertain
to B 5000/B 6000/B 7000 Series of Systems. Also note that when the word
"COBOL" is used, it refers to the appropriate ANSI-74 COBOL for each
system.
If you are using an A Series System, the term "COBOL" also
refers to ANSI-85 COBOL.

xi

1177185-003

SECrICN 1
SYSTEM DESCRIPTION
The REPORTER III System provides an effective means for creating a wide
variety of management reports reflecting information maintained on a
computer system in the Unisys A Series, and BlOOD through B 7000 Series
of Systems.
SYSTEM FEA'IURES
REPORTER III greatly facilitates the retrieval, analysis, and reporting
of data by using the power of the computer system to perform tasks such
as the following:
1.

Select data on the basis of simple to complex criteria.

2.

Match records on the basis of data field values.

3.

Sort data as specified in ascending and/or descending order
according to multiple keys.

4.

Automatically age data, using a variety of date formats.

5.

Determine statistics including count, total, average, maximum,
mlnlmurn, sum squares, mean squares, variance, and standard
deviation.

6.

Handle multilevel control breaks and ranges, and give summary
statistics for each control break or range.

7.

Automatically format information for printed reports.

8.

Automatically schedule phases of report processing,
providing override options.

9.

Create one or more files
processing or reporting.

of extracted data

for

while

subsequent

important aspect of REPORTER III is that its features can be used in
auditing applications.
The system is applicable to both internal and
external auditing activities. REPORTER III provides the auditor with an
effective means to test and evaluate the information maintained on the
computer system. It greatly aids the auditor's analysis by using the
power of the computer system to perform such tasks as the following:

An

1 - 1

1177185-003

1.

Test derived data items (extensions) and footings.

2.

Select and print audit samples.

3.

Examine records for
conditions.

4.

Summarize data.

5.

Compare duplicate or
consistency.

6.

Compare audit data with computerized records.

7.

Extract information for subsequent processing and evaluation.

8.

Print confirmation letters.

completeness,

related data

consistency,

for

and

correctness

valid

and

The REPORTER III System can produce multiple reports in one pass of the
input data.
Also, the system enables you to control the formatting of
reports as well as output information on preprinted forms, if desired.
REPORTER III can report information from data files contained on
magnetic tape, disk, and punched cards. The system also can report
information from DMS II data bases.
LANGUAGE INIERFACE 'ill SYSTEM
The REPORTER III System includes two free-form languages:
1.

Vocabulary Language - a language designed to create a
vocabulary (dictionary) of descriptions and definitions of the
data to be reported. The vocabulary language can accept an
independent description, or it can use existing COBOL record
descriptions and/or data-base directories.

2.

Report Language - a report-description language which enables
the specification of a wide variety of reports. The language
is easily used by non-programmers.

REPORTER III generates a COBOL program tailored to your exact reporting
requirements.
Note that whenever "COBOL" is referred to, it means the
appropriate ANSI-74 COBOL or ANSI-85 COBOL for A Series systems or the
appropriate ANSI-74 COBOL for any system other than A Series.
The generative approach

1177185-003

1 - 2

speeds recurrent reporting, and it also provides the flexibility needed
for cost-effective one-time reporting.
REPORl' ~ AND SYSTfM OPERATIW

'!he
REPORl'ER III report language provides a methcxi for quickly
specifying reports based on information ccntained in the data files or
data
bases.
With appropriate selection, grouping, ordering, and
sunmarizing, the information is fumished in a useful report fOIm by the
system.
Infonnation can be furnished as a printed report, or it can
easily be extracted in machine-readable fonn to a separate file for
further processing.
The report language is free-fonn, "English-like, II and concise. Little
writing is necessary to prepare the report-language specification, ~ich
describes
the contents
of the report.
Yet the report-language
statements are readable and self-documenting.
The language includes
many default features and thus does not require that you specify each
opticn. Each data item of infonnation is specified by name, and you are
not required to kfx)w its size or fonnat characteristics. The format of
the report, whether sinple or catplex, is detennined by REroRl'ER III,
unless you chcx:>se to specify the fonnat requirements.
'!he report-language specification which you have written (also referred
to as the "report specification") is input to the Report Language
Analysis Program (RP3REP) , which analyzes your request and prints a
listing of the specification as given. If the request is invalid, the
errors are indicated by means of appropriate messages, and you nust
oorrect the mistakes and resutmi t the specification. If the request is
valid, a parameter file is prcxiuced whiCh represents your specific
request
canplete with "physical
information
obtained fran the
referenced vocabulary.
'!'he rep)rt-program generator (RP3GEl'i) then is
run automatically to generate a COBOL source program based on the iqput
parameter file. '!be generated COBOL source program is then OClIpiled and
executed automatically, and the desired report is produced.
II

The generated report program can be treated either as a one-t..i.ne-only
report program or as a recurring report program which is run as often as
required without regeneration.
A nore detailed explanation of system operation, together with a diagram
representing the report-preparation process, is contained in Appendix A.

1 - 3

EXAMPLE REPORl'-LANGUAGE SPECIFlCATICN

The follO#ling is an exanple of a rep:>rt-language
together with the job caltrol language stateIrents
report.
The control statemnts are preceded by
This example assumes input of the specification as

specif ication, shewn
needed to produce the
a question mark (?).
a card deck.

?EXEOJ1'E RP3REP
?Dl\TA RP3CRD

VOCABUlARY IS "CLIENr".
INPl1I' AO-"'TS-REeV.
SELECT ~CE-DUE GRFATER '!HAN CREDIT-LIMIT.
TITLE uACCClJNrS 0VERDRAW1.~ ...
HEPORr CUST-I-D, BRANQi, CREDIT-LIMIT, ~CE-IX.JE.
SlH1ARIZE roarm:; BAlANCE-DUE.

?END

'llie six report language statements in tilis specification are explained
belcw.
The specification is designed to provide a report containing
infonnation reflecting all accounts which are overdrawn.
The VOCABUlARY statement identifies the vocabulary of names used in this
report language specification to describe t.he infonnation in the data
base.
The vocabJlary is created by the program RP3VOC.
(Figure 2-7
lists the vocabulary identified here.)
The

INPl1I' statenent specifies that all accounts recei vable informatioo
be input.
(ACCl'S-RFLV is a LMS II data set which can be thought of as a

file. )
The SELEL.~ statement specifies tllat only those accounts in which the
balance due is greater than the custaner credit limit be refOrted.

The

TITL£ statement describes the title to be placed at the top of eaCh

page of the report.
rrhe REFOR"f statement s}Jecifies that the custexoor nunber, branch nUItDer,
credit limit, and balance due be reported for each selected custaner
account.
The SU1~ZE statement specifies that the balance due colunn be footed.
This gives the total balance due of all overdrawn accounts.

I - 4

Figure 1-1 shows tbe report produced fran this specificatioo.
'!he
requested infonnatioo has been fonnatted autanatically into a readable
report.

PAGE 1

CRmIT
LIMIT

001302
002117
051231
081311>

0013
0020
0013

1000
1000

0008

2000
3000
500

100500

0034

101137
102800
120060

0130
0130

500

5000
500

0038

$ 1311.80
$ 1560.00
$ .732.00
$ 2016.80
$ 3810.21
$ 511.37
$ 6387.50
$ 643.70

$16973.38

Figure i-l.
Other

exanp1es of

Sanple Report

reprt-language

specifications are

Sections 2 and 5.

1 - 5

provided

in

SECl'ICE 2
BASIC INroNMATION ABaIr
'!HE REPORI' IAlGJAGE

The REPORl'ER III report language is a high-level language based 00
English and canpos~ of characters, 'NOI'ds, am statements. This section
documents basic elements of the report language and the method used to
define the language, and presents sane basic teI'1U:inology used for data
identification. It also describes the various types of vocabllary names
which can be specified in appropriate contexts in the report. language.
Finally, sanple vocabularies used in exarrples througlOlt this manual to
illustrate various language constructs dIld statements are presented.
For brief explanations of basic language oonstruct.s and functions used
in defining informaticxl in language statements, refer to Sectioo 3.
Detailed explanations of the oonstructs ~ functions are provided in
Sectioo 4.

The report. language dlaracter set consists of the digits 0 through 9,
the letters A through Z, the blank or space, and the following syni:x>ls:
Symtx?l

*

@

[
]

,
$

=
>
<

#
(
)

%

+
II

.,

/

Definitioo
-----.dsterisk or multiplication sign
at sign
bracket, left
bracket, right
colon
carma
dollar sign
equal sign
greater than symbol
less than syni:x>l
minus sign or hyphen
number sign
parenthesis, left
parenthesis, right
percent sign
pericxi or decimal point
plus sign
quotation mark
semioolon
slash or division sign

2 - I

SPECIFICATION FORM
The report language CdIl be written on any OOBOL-canpdtible a:xiing _....,LIll
to facilitate keypunching or data entry of card .images. You write the
free-for.m statenents between oolumns 8 dnd 72, usirlg one or nore spaces
or appropriate punctuation bO delimit elements of the language. Columns
1 through 6 can be used for sequence nurrt>ers. ColunulS 73 through SO are
available for optional use, such as identification, remarks, etc. The
sequence number fields can be used later to indicate the sequence
numbers corresponding to source language statements which dre to 00
updated. O:>lurm 7 is not used.
ClM-D:Nl' INDICATOR
-------

percent sign (%) placed in columns a through 72 indicates that tile
characters Which follow the sign are a part of a user COmlent.
Tnese
comnents are rx:>t part of the report language and, therefore, net..~ oot
follow the rules of the language. They are useful for docl.lIrentation of
the language specifications.

A

Exanples:
% AN EXAMPLE OF '!HE USE OF ~.
REPORr A, S, %  is a user-defined word. The  is defined as part of the
report language by its existence in a referenced vocabulary or its
definition in the report language specification.
In general, s
should not be chosen which are identical to reserved words in the report
language becduse I
in certain contexts, such  s might be mistaken
for the reserved words.
METHOD OF lANGUAGE DEFINITIOO
The report language is def~ned by rules of syntax and semantics.
The
syntactic
rules deter.mine the structure of valid report-language
statements.
The semantic
rules determine
which report-language
statements have valid meanings and what those meanings are.

2 - 3

SYl\1TAX DIAGRAMS

The syntactic rules of the report language are described by syntax
diagrams constructed of words and arrc:ws.
A syntactically correct
statement is produced by trdcing any path along tile direction of ~le
arrows in a given syntax diagram. Words and syrci::x:>ls are written as they
are encountered along the line paths.
The syntax diagrams occasionally must be continued on new line(s). In
this case, the break in an arrow is shown by means of connectors using
the same number at each end of the break.
An example syntax diagram (with connectors) is shown below.

Example:

+<- , <-+
1

1

----->ROW----->THE------->~T------------------>~~-->(l}

1
I
+->YOUR->+

(1)---->
1

I

1
1
+-->GENTLY-->+

- ---------------------------------->STREAM.
I
I
+-->+

1
1

1

I

1
I

1------------->+

I

1

I

I

+-->THE---->OID-----> , --->MILlr-->I
I
1
+------------------->+
Valid productions from this syntax diagram include:
IUd THE OOAT OOWN-STREAM.
IDIl, lOll, lUi YOUR B(lll.T GENTLY DJWN THE STREAM.
R)W, R)W, lUll, lO-l THE OOAT [Uti THE OLD S'I'REAL'1.
fOl YOUR BOAT IXJdN THE MIIL STREAM.
R)W THE OOAT IOIlN THE OID, MILL STREAM.

A bridge over a number indicates that the path can be traced a maximum
nwti::>er of times specified by the nuni:>er under the bridge.

2 -

4

ExaDple:
-)ACRlSS-)THE~----'

1

1<
I
I

, <--

1

I-~--)BIG----)I

I
I

I
1

I
I

I
I

I-~-)WIIE--)I

+-~-)KJDDY-)+

Valid productions fran this syntax diagram includea
ACa;S '!HE MIS&1JRI
ACRa;S THE BIG MISSDRI
~

'DE KIDDY, WIlE MISSClJRI
BIG, WIDE, KJDDY MISSlJRI

ACRa;S THE

but eX> not. include:
ACRa;S THE BIG, BIG MISSlJRI
~

'l1tE WIlE, BIG, WIlE MISSCXJRI

A bridge CNer a runber with an asterisk nuat be traced at least aloe,
but not IIDre than the maxinun nunIJer of times specified by the nUDber.

+<- , <-I 1*
I
I

/--+
I
I

-)ACRlSS-)THE----~-)BIG----- -----)MISSClJRI

I
1

1
I

I
I

I
I

I-~-)WIJE--)I

+-~-)f4JJDY--)+

2 - 5

Valid productions fran this syntax diagram include:
ACX>SS THE BIG, WIDE MISSOURI
ACROSS '!HE WIDE, KJDl)Y MISSOURI

but do not include:

ACROS5 '.tHE BIG Hl~RI
ACROS5 THE BIG, WIlE, HUlDY MIS&lJRI
ACROSS 'IHE BIG, BIG MIS9XJRI

Nunt>er bridges usually are used with loops, dB in tile pre<..~ing
exanples.
Once a loop is exited, all runber bridges within that loop
are .. rE:!set" for the next 4:!lltry into the loop.
Exanple:

+<-----------------------,
I

~<------------------------+

I
I

I

->~--->'I'liE_----------------!T7->MISfl:AJRI------->

1

I

1

I

I

I

I

I

1<---, < - - I 1
1
I
1 I-rrl->~--->I
I
I 1
1
I--f~-->BIG--->I 1
I
I
I 1-!T7->M!SSISSIPPI-> I
1-!T7->WllE--> I
I
I
I
1
+--!T7-->l-IJDl)Y->+

I
I
1-!T7->OHlo-------->I
1
I
I
I
+-/-r-,-->GULF--------->+

Valid productions fran this syntax diagram include:
Inti THE MISSOURI
IXJilN '!HE BIG CliIO
OOWN THE BIG ana, mro THE BIG, WIlE
IL~ THE BIG, WIDE, MUDIX GULF

2 -

6

~lISSISSIPPI,

but do not include:
ID'JN THE BIG OHIO, INI'O THE KJDDY, MUDDY I"iISSISSIPPI
.oowN THE BIG OHIO, INro '!HE MUDDY CIllO

RESERVID WORIX;

Words in uppercase letters are the reserved words in the language: these
words must be written exactly as shown in the syntax diagrams.
Keywords are ~le reserved words required to complete tile meaning of
language stateJtEnts.
Sane keywords can be qbbreviated by anitting
letters fran the end of the word. The mininun required abbreviaticn is
under linerl in the syntax diagram.
If a keyword must be used in its
entirety, the entire word is underlined in the diagram.
Optional words are reserved words having no semantic neaning. Optional
words are included in the language to ~rove the readability of tile
staten~nt
formats.
They are never underlined in the syntax diagrams
and, if used, cannot be abbrevidted.
Example:
-->VOCABULARY---------------------------->-->.

I

I

+-->Nru1E-->+

I

I

+-->15-->+

'nle reserved words are VOCABUIARY, NAME, and IS. VOCABUIARY is a
keyword and can be abbrevidted as VOCAB, Vtional words and ItUst be spelled out if
they are used.
PUNCI'UATION

Special characters such as the parenthesis, oolon, period, and corrma
must be written as they appear in the syntax diagrams.
Keywords,
optional words, names, numeric constants, and Character-string constants
must be separated fran each other by a blank or a special character.
Wherever a blank is r~uired, several blanks optionally can be used.
Blanks
optionally can be placed around special characters
for
readability. A blank immediately before a period is not required except
when a period immediately follows a numeric literal.
2 - 7

~ACl'IC

VARIABLES

Phrases set off by angle brackets ( <» are syntactic variables 'lthich
represent information to be supplied by you. A particular variable can
represent a sinple language element, such as an integer, character,
string, or name; or it can represent a relatively c:x:llplicated language
oonstruct, such dS a Boolean expression.
'lhese variables are defined
either by verbal description or by syntax diagrams of their cwn. In
either case, any valid language element or 1n'iN THE 

-->

:
-->MISSISSIPPI

>

I

I

I

I

1->CDIamIA---> I

+->HI.JDSCN----->+

:
--->ATIANTIC--->

I

I

l-->PACIFIC------1

I

I

+->GULF----+

In the first diagram, "river" and "ocean" are syntactic variables. Both
valid
are
defined by the diagrams
that follOri.
Syntactically
productions include:

mro '!HE GULF
THE ~IA Itm> THE PACIFIC
IXJiN 'DiE CDIJ.IeIA mro 'mE GULF
Inti THE MISSISSIPPI INro 'lHE PACIFIC
Inti 'lHE MISSISSIPPI
~

2 -

8

~IC

RUlES

Semantic rules are linked to the syntax diagrams by means of letters
label. the critical paths. '!he letters reference paragraphs which
explain the meaning associated with the oorrespooding syntax path, and
explain additional rules associated with a choice in paths. 'lhese rules
can make certain syntactically correct statements invalid.

~dl

Exanple:
->~I!l

- -

THE  INTO '!HE -->

__

_ _

-..::c::'!_

:
A

-->MISSISSIPPI---->

I
I

-

I
B
I
1->CDI.ll'-1BIA--->I
I
I
I C
I

+-->HJD&>N---->+
:
A

--->ATLANTIC--->

I

I

I B
1
1->PACIFIC---> I

1

1

I C

1

+->GULF---->+
sellBntic rules are written so thdt they pranpt you to choose the
oorrect. paths am supply the appropriate infonnation. Thus, by tracing
the syntax diagram paths and reading the "path pranpts," you supply the
information
fcc the report
specifications
Which
describe
the
application.
'!he

If the example above were actual syntax (such as the syntax described in
Sectioo 4), the semantic rules for  would be explained in
accanpanying paragraphs labeled A, H, and C. The semantic rules for
2 - 9



would be explained in accompanying paragraphs labeled A, B, and
paragraIils ~ld explain that the choice of river must
oorrectly match the choice of ocean so that the river flO\;lS into the
correct ocean. Semantically valid p~uctions include:

C.

These

~

'!HE MISSISSIPPI INrO THE GULF
In'lN THE li.UDSCN 1tm> THE ATIANl'IC
IXlWN '!HE lllMBIA Ii'lI'O 'l\iE PACIt'IC

but do not include:
00riN '!HE MISSISSIPPI INro THE PACIt'IC
0CNlN THE R

~TA

---- IDl:Nl'1t'1CATION
---

In specifying the semantic rules of the report language, various tenns
are used consistently to identify data or information. These t.enns are
defined in the follcwing paragraphs.
mTA ITEM OR ITEM
A data item or item is an elementary item of information.

In the report
language, data items are referenced by data names, numeric literals,
character strings, or expressions.
Examples of data items are tile
follOAfing: the number of parts on order, the name of the individual, the
total balance of aged accounts, and the percent utilization factor.
items are numeric, string, or Boolean.
numeric values; string items have character
have values of TRUE or FALSE.
Data

Numeric data items have
values, and Boolean items

GROUP

group is a collection of related data items which could be thought of
as a single data item. For exarrple, a date can be a group consisting of
the data items nonth, day, and year.
Or an address can be a group
consisting of the first, seoond, and third lines of the address. Groups
referenced in the report language are considered string-valued data
items.

A

2 - 10

RECDRD

A record is a collection of related data i terns and/or groups. The tenn
"record" is used to mean a record, list element, or meni;)er, dependirig 00
the teon which is appropriate for the type of data structure urxier
consideration.
A record might include all infonnation pertaining to a
client I s account, such as custaner name, account I'UJltt)er, aBi current
balance.
A record might consist of infonnation pertaining to an
employee, .such as name, age, sex, salary, and job grade.
DATA STRUC'ruRE

A data structure is a collection of records. . Access to infonnatioo
contained in' data structures is indicated in a rep'rt specificatioo by
the INPlJI' staterrent. A data structure might contain infonnation 00 all
client accounts, or it might contain records for all June order
transactions.
Valid data structures for the report language include
system files that can be described in COBOL, and OMS II data sets.
DATA BASE

A data base is a collect.ial
relationships between them.

of ooe or nore

data

structures

and tlle

u:x:ilCAL REa:>RD

A logical rt!COrd is a record or a group of associated records which
contains all pertinent information about a single entity.
Records
comprising a logical record can come from a single data structure,
multiple data structures, or a user input routine. Certain infonnatioo
wi thin a logical ret.~rd can contain null values indicating the absence
of related information.
The INPUT statement in a re~ specification
specifies what information eaCh logical record contains and l~ this
information is accessed.
an example, a logical record may ccnsist of infonnatioo alx>ut a
single transaction, including pertinent information about the account to
which the transaction applies. Ac another example, each logical record
may consist of information gathered from various sources about a single
employee. In addition to containing such infonnati~ as na.ne and salary
fran the payroll master file, the logical record ca.tld contain employee
address infonnation obtained fran the address file. Infonnation about
the employee's job grade and department ~ght be obtained from records
in separate but related files.
Of course, job grade and department
As

2 - 11

information within the logical record probably
many employees (see Figure 2-1).

would be identical

for

A logical record as defined by the INPtn' statement is an underlying
concept behind the report language description. Specifications can be
given to extend, select, sample, group, order, sUI'l1l\a.rize, extract, and
report the information contained in the logical records.
Logical records can be viewed also as rows within a large table (see
·Figure 2-1). A colunn in this table would represent a single item. The
tabl~ . is first defined
by the INPlIr statement
in the report
specification.
Subsequent
language
statements
in
the
report
specification can extend, select, sample, group, order, sunmarize,
extract., and report the infonnation contained in the rOVlS of the table.
A logical record can be accessed only once since only one pass is made
through the specified data per report specification when the report
program is run. In tenns of preparing a report specification, this
means that once you have specified access to·a logical record, you
cannot specify access to that logical record again.
Thus, for exanple, the following combination of physical records within
a
particular
logical
record cannot be reflected
in a report
specification because such a combination would involve more than one
pass through the specified data:
P~SICAL RERD
NECDRD
RroJRD

2
2
4
4

for the tenn "logical record" in various

2 - 12

JOB
SAIARY

AGE

532.00

21

101 HIGH sr.

3

EDP

0611

1,100.00

27

332

7

EDP

0611

632.05

27

1222 3RD sr.

7

ACCr

0232

BAKER, SUE

711.00

23

27 RIVER RD.

7

ACCr

0232

JAl-1ES, HELEN

883.00

37

1001 51 ST.

5

EDP

0611

930.00

41

531 PEACH sr.

5

MK'lG

0110

KElLY, MARY

650.30

33

011 3RD AVE.

5

EDP

0611

KEN

1,232.00

52

1311 CYPRESS

7

MK'lG

0110

766.45

24

303 WEST 8TH

7

MK'lG

0110

811.50

32

200

7

srAFF

0777

950.61

30

17

5

STAFF

0777

NAME
OOE,

Jan~

~lITH,

JOE

~,

BILL

OOB

JOOFS,

~,

SMITH, SUE

HIlL,

~

J~, KAREl~

Figur~

2-1.

ADDRESS

MADISJN

FAST 3RD

VAln~:Y

DR.

GRADE DEPARlMENT DEPr.NO.

Logical Records for Personnel

A control-break item is a data item used to group the infonnation to be
reported.
All logical records which contain the same value of the
c:x>ntml-break item are grouped together for purposes of reporting the
information and calculating statistics regarding the information.
For
exanple, all transactions can be grouped by account Ill.lI'Ci::>er.
For
purposes of reporting, the information aba.lt a transaction can then be
listed under the appropriate aOLuunt-number heading.
In addition,
sumnaries such as the average transaction anount for each account can be
obtained.
A control-break item can be suoordinate to another control-break item
which, in turn, can be suoordinate to yet another control-break item.
('nle limit en the nunber of levels of control-break items is nine.)
Information is then hierarchically grooped based on values of the
control-break i terns. For example, transactions can be grouped based 00
account number, am accounts can be grouped based on account type. Thus
for each account type there are many account nunbers and, for each
2 - 13

account number, there are lnany different transactions.
In Figure 2-2,
the persormel data shoNn in Figure 2-1 is grouped by department and job
grade.

-~-'.

DEPARI'MENI'

DEPr.NO. GRADE

NAME

SAlARY

AGE

......

ADDRESS

ACCr

0232

7

BAKER, BILL

632.05

27

1222 3RD ST.

Acc:r

0232

7

ilAKER, SUE

711.00

23

27 RIVER RD.

EDP

0611

3

ooE, JOHN

532.00

EDP

0611

5

JAl'rlES,

EDP

0611·

5

KEILY, MARY

~

101 HIGH S'f.

EDP

0611

7

SMITH, JOE

1"lK'ro

0110

5

JONES, OOB

MK'ro

0110

7

NE.'Nt-1AN, KEN

MlcrU

0110

7

grAFF

0777

srAFF

0777

HELEN

883.00

37

1001 51 ST.

33

011 3RD AVE •

1,100.00

27

3.32 l"1ADISON

930.00

41

531

1,232.00

52

1311

SMITH, SUE

766.45

24

303 WEST 8TH

5

J(NS, KAREN

950.61

30

17

7

HIlL,

811.50

32

200

650.30

-_ .....
...... .

...

lX)N

P~

ST.

~RESS

V~-y

~T

DR.

3RD
..

Figure 2-2.

Logical Records for Personnel
Grouped by Control Breaks

RANGE-BREAK ITl!M

A range-break item is a s~ial oontrol-break item which is based on
specified value ranges of a particular data i tern. This data item is
referred to as a ranged item. All logical records .which oontain values
of the ranged item within specified limits are grouped together for
puqposes of reporting the information and calculating statistics on the
infonnation.
To accanplish this, the infonnation is ordered in
ascending
sequence based on the ranged item.
For example, all
transactions can be grouped based on transaction anount such that all
transactions within the foll()INing ranges are grouped together: 0 to 1000
dollars, 1000 to 5000 dollars, 5000 to 10,000 dollars, and over 10,000

2 - 14

dollars.
A count of all transactions for each defined ancunt range can
be obtained.
range-break item itself is a string item whose values iOOicate a
10rler- arxl upper-limit of the ranged item. A range-break item value can
be assigned to each logical record to indicate the range to which it
belongs.
In Figure 2-3, the personnel data shown in Figure 2-1 is
grouped based on age, such that all enployees within the following age
groups are grcuped together: 20 to 29, 30 to 39, 40 to 49, and 50 to 59.
The

JOB
DEPAIt'rMDJ'l' DEPr.RO. GRADE

BAME

SALARY

AGE

ADDRESS

RAHGB

EDP

0611

3

DOE, JOHN

532.00

21

101 HIGH ft.

20-29

ACCT

0232

7

BAlCER, SUE

711.00

23

27 RIVER RD.

20-29

MKTG

0110

7

SMITH, SUE

766.45

23

303 WES,. 8TH

20-29

EDP

0611

7

SMITH, JOE

1,100.00

27

322 MADISOH

20-29

ACCT

0232

7

BAKER, BILL

632.05

27

1222 3RD S,..

20-29

STAPP

0777

5

JOBES, KAREN

950.61

30

17 VALLEY DR.

30-39

STAPP

0777

7

HILL, DOH

811.50

32

200 EAST 3RD

30-39

EOP

0611

5

KELLY, MARY

650.30

33

011 3RD AVE.

30-39

EOP

0611

5

JAMES, HELER

883.00

37

1001 51 ST.

30-39

MKTG

0110

5

JONES, BOB

930.00

41

531 PEACH ST.

40-49

MKTG

0110

7

NEWMAN, KEN

1,232.00

52

1311 CYPRESS

50-59

Figure 2-3.

Logical Records for Personnel
Grouped by Range Break

2 -

15

INPUT DATA ITEM

input data item is an item which is part of the infonnation to be
input for the report. For a single-report specification or the  of a multiple-repoct specification, ~ut data items are those
described in the specified vocarulary; these data i terns are defined by
reference to the appropriate data structures in the INPUT statement and
by
extensions.
For the 
of a nultiple-report
specification, input data items are defined in the  by
the INPUI' statement and in the  by extensions.
An

ACCEPTED mTA ITEM
-------.--

accepted data item is a data item which is defined in the ACCEPT
statement.
'!his data item ~erves as a run-tirre parameter for repn~
specificc.tion.
The actual value of the data item is read in by the
generated report program before any processing begins.

An

mTA ITEM
-DERIVED ----

derived data item is a data item which is described in tenus of other
data items via an . The value of this data item is "deri.ved"
fran input items, accepted items, constants, or other derived data
items.
aombinations of arithmetic operations, logical operations, and
REPORI'ER III intrinsic functialS can be used to canp.1te the derived data
i tern.
A derived data item represents an extension of the logical
rea::>rd.

A

----

STATISTICAL DM'A 1'1'&1

A statistical data item is a derived data item which is defined in tenns
of ooe or roore statistical functions or other statistical data items.
For example, the  in Section 4.)

2 - 17

GRaJP NAME

A  refers to a group of data items described in the
vocabulary. A  can be qualified and subscripted. (Refer to
the explanation of  in Section 4.)
When referenced in the report language, a group is treated as a
string-type item.
When using a vocabulary created prior to the 2.50
software release, all group items are assigned a default character
length that can be changed by the Process-option statement SET
STRING-SIZE. (Refer to the explanation of the Process-option statement
in Section 4.)
For a vocabulary created using the 2.50 or later software release, the
size of the group item reflects the size of data items subordinate to
that particular group item. Both the size of the group item and the
release level used to create the vocabulary can be found in the
vocabulary report.
MACRO NAME

A  refers to a permanent macro included in the vocabulary.
A permanent  can be referenced any number of times in the

report specification once the VOCABULARY statement is given. If formal
parameters were defined for the macro, the values of the actual
parameters must be specified whenever the macro is referenced.
The
appropriate macro text replaces each reference to the permanent .

1177185-003

2 - 18

CCNDITIOO

NAME

A  refers to a COBOL 88-level , which
represents one or more specific values of a data item. A  can be qualified. In the report language (except when using the
PRESELECT clause), a  may be referred to only in the
following context:


= 

or
 NOT

= 

For example, the  THIS-MONTH identifies the 12 months of a
year with subordinate s defined as JANUARY through
DECEMBER having assigned values of 01 to 12. The following statements
use the s present in the vocabulary.
SELECT THIS-MNrH = FEBRUARY OR THIS-MONTH
REPORT THIS-MONTH, AM:UNI'.

2 - 18A

= MAY.

1177185-003

preceding statements result in the nonth being made available for
reporting and the proper intemal oode being cxmpared for selection. An
example of the output resulting fran the statements follows.

The

Exanple:
THIS KlNl'H

10.50

2.75
89.96

12.24
18.95

A record name refers to a CXB)L 01 level record ~ch  refers to a (DOOL- represents the internal name rather than the
external name of the file.

A

LINK NAME
A  refers to an A Series I»tS II-defined link item.
name> can be qualified.
DATA-BASE NAME

A  is the name of a I»1S II data base.

2 - 19

The  refers to a DASDlrdefined (Data And Structure
Definition Language-defined) OMS II data set. A  can be
qualified.
SET NAME

A  refers to a DASDL-defined J:Io5 II set or subset which spans
a data set. A  can be qualified.

 designates a user-supplied CDooL input
procedure. An input procedure is defined to RP3VOC by the user in order
to access data structures not handled by standard REPORl'ER III-supplied
input routines.
One call 00 the input procedure returns one record.
That record oontains data fran cne or rrore records accessed fran one or
nore data structures by the procedure.
An

2 - 20

Figures 2-4 through 2-9 shew listings of six sanple vocabllaries used in
exanples
throughout
this manual to illustrate
various language
constlUcts and statements. It is assumed that RP3VOC was used to create
these vocabllaries.
All exanples in the manual that use one of these
six vocab.llaries identify the name of the vocaWlary.
Secticn 5
describes RD'ORl'ER III applicatioos that use the information described
by the vocabllaries.
While JIDSt of the vocab.llary listing is self-explanatory, various
entries rEqUire sane additiooal explanation.
Explanations of these
entries follow.
lAVE[, describes the hierarchical level of an element.
That is, it
describes which elements are actually part of other elements.
For
exanple, items in many instances are described as part of a group.

The level of an element in relatioo to other elements is indicated by a
mmi:ler (level Ill.IIdJer).
Elements assigned the same nunber are at the
same hierarchical level. Elements assigned larger I'l1lIl'i:lers are at lcwer
levels ani are actually part of the inmedi.ate preceding element assigned
a smaller nunber. For exanple, in Figure 2-6 PARl'-NC>-SltD and lAST-SALE
are at the same level; KNrH-SlID is part of IAST-SALE, am ~SALE is
part of PARl'-SALES-R!X:.

iDiicates the l'lllI'Iiler of subscripts required for an element.
If an  or  requires no subscripts, the entry in
this oolunn is blank.
SUBSCRIPl'S

describes
print the item.
UHi'lH

the I'lUIli:ler of characters

2 - 21

rEquired on the listing to

Figure 2-4 lists the vocabulary for an enployee file which is maintained
the Personnel Department.
There is one reoord in the file for each
enployee. The entries in each record used are as follon:

by

Name

~oo

EMPm-NAME

JOB-GRADE
DEPl'-OO

CBrCXDE
EMPIDYMafi'-YR·
EMPm-AGE
SEX
~

FIDERAL-TAX
STATE-TAX

&lC-SEX:-TAX
EMPm-NET-PAY

Descriptial
&tployee nuniJer
&tployee name
Code for enployee' s job level
Department nuniJer
Clarge oode
Year of euployment
Age of enployee
Sex of enployee
Salary of enployee
Federal inoane tax withheld
State incane tax withheld
Social Security tax withheld
&tployee' s net pay

2 - 22

RP3 N.lti

VOCABULARY

ID t-M1 YY
1
PAGE

''VOc»fp''

&YS'l'F.H FILES.
FILE &U?m-FlLE,
OIGANIZATION IS smuENrIAL,
rorAL-POPUI.ATI~ IS IEFAILTID 'ro 9999.

LEVEL

NAME WI'l'ti
(lJALIFIERS

1

&U?m-REXDRD

2
2
2
2
2
2
2
2
2

~-N)

2
2
2
2
2

SJEaUPI'S

GRXJP
ITEM NUMERIC

EMPYE-NAME

ITEM STRING
ITEM NUMERIC
ITJ:l.1 NlH:RIC
ITEM NUMERIC
I'lD1 L~C
ITEM NUMERIC
I'lD1 NlH:RIC
ITEM NUMERIC
mIDITION
CDNDITICti
ITr1-1 NlI£RIC
ITEM NUMERIC
I'lD1 NlI-tERIC
ITEM NUMERIC
ITEM NlH:RIC

EOOCATICE-u.vEL

JOB-GRADE
DEPT-a:>
OI:HDDE
~I.DYMENl'-YR

&U?m-AGE
SEX:

MME
EDWE
SALARY
FEDERAL-TAX
STATE-TAX
SOC-SEC-TAX
~NE:r-PAY

Figure 2-4.

'nPE

Vocabulary

LENmi

6

9(6)

10 X(30)
2 99
2
4

99
9(4)

6
2
2
6

99
99

10
10
10
10
10

Listing for ''VOc»fp''

2 - 23

mITIS:;
PICIURE

9(6)

9
$Z(6).99
$Z(6) .99
$Z(6) .99
$Z(6) .99
~Z(6)

.99

Figure 2-5 lists the vocabulary for a fixed-asset master file Which
WOlld be available at the end of each year cm:l as of the current balance
sheet date. There is ooe record in the file for each fixed asset. The
entries in each record are as follOl1S:

Name
ASSE'l'-R)

ASSET-IESC
ASSET-nPE
DEPT-li)

IDC-aDE
ACQUISITIC»-YR
ASSET-LIFE
~

CDS'l'
Aa:UM-IEPRE-BJCJ<
Im'RE-Yro-BXJ(
Aa:UM-DEPRE-TAX

Description
Asset nL1Ililer
Asset descriptioo
Asset type code
Associated department nunber
IDcatioo code
Year of a~sitiQ1
Asset useful life in years
Tax depreciation methcxl
original asset cost
AccuIrulated depreciaticn, beginning book
Depreciation, year-to-date book
AccUlrulated depreciatioo, begiming tax

2 - 24

RP3 N.NN

VOCABULARY

DO tMo1 yy
PAGE
1

"VOCASl'''
SYSTEM FILFS.

FILE ASSEl'-FILE,'
OIGAN1ZATICE IS S!UJENl'IAL,
TOl'AIrPOPUIATICE IS IU'AULTm 'ro 9999.

NAME WI'lH

I..E.VEL CJJALIFIERS

1
2
2
2
2
2

2
2
2
2
2
2
2
2

ASSEl'-ImDRD
ASSET-W
ASSET-IESC
ASSET-TYPE
OEPl'-OO
IDC-aDE
ACOUISITI~-YR

ASSET-LIFE
'lD1
STRAIGf1'-LINE
IXlJBLE-DEXL-BAL
CDS'!'
AalJt+-IEPRE-BD<
DEPRE-YTD-BXJ<
AallM-1EPRE-TAX
DEPRE-YTD-TAX

Figure 2-5.

SJBSaUPl'S

uxmi

'lYPE

EDITIm
PICIURE

GRJUP
l'lD1~C

l'.l'Dt STRING
ITEM NUMERIC
l'lD1 NlMERIC
ITEM NUMERIC
ITEM NlMERIC
ITEM NUMERIC
ITEM NUMERIC
ID

as

inventory file.
reoords contains
'!be part number
the sales record

follo.lS:

Descriptioo
Part. number
Manufacturing department number
Total quantity sold
Date of last sale
~nth of last sale
Day of last sale
Year of last sale

2 -

26

RP3 N.NN

VOCABULARY
"INVENT"

DD MMM YY
PAGE
1

PERMANENT MACROS (REPLACE STATEMENTS).
MACRO PART-INVENT-SALES-INFO.
TEXT: PARTMF, YTDSMF AT PART-NO •

RP3 N.NN

V 0 C ABU L A R Y
"INVENT"

DD MMM YY
PAGE
2

SYSTEM FILES.
FILE PARTMf,
ORGANIZATION IS INDEXED,
RECORD KEY IS PART-NO,
TOTAL-POPULATION IS 1000000.
LEVEL

NAME WITH QUALIFIERS

1
2
2
2
2
2
2
2
2

PART
PART-NO
DEPARTMENT
PART-DESC
MATERIAL-SOURCE-CODE
QUANTITY
UNIT-COST
INVENT-OOLLAR-VALUE
BIN-NO

SUBSCRIPTS

TYPE

LENGTH

GROUP
ITEM STRING
ITEM NUMERIC
ITEM STRING
ITEM STRING
ITEM NUMERIC
ITEM NUMERIC
ITEM NUMERIC
ITEM NUMERIC

6
4
20
1
5
6
11
3

EDITING
PICTURE
X(6)
9(4)
X(20)
X(1)
9(5)
Z(2)9.99
Z(7)9.99
9(3)

FILE YTDSMF,
ORGANIZATION IS INDEXED,
RECORD KEY IS PART-NO-SOLD,
TOTAL-POPULATION IS 1000000.
LEVEL
1
2
2
2
2
3

3
3

NAME WITH QUALIFIERS
PART-SALES-REC
PART-NO-SOLD
DEPARTMENT-NO
QUANTITY-SOLD
LAST-SALE
MONTH-SOLD
OAt-SOLD
YEAR-SOLD

Figure 2-6.

SUBSCRIPTS

TYPE

LENGTH

GROUP
ITEM STRING
ITEM NUMERIC
ITEM NUMERIC
GROUP
ITE~·NUMF.RIC

ITEM NUMERIC
ITEM NUMERIC

Vocabulary Listing ttINVENI'''

2 - 27

EDITING
PICTURE

6
4
5

X(6)
9(4)
9(5)

2
2

99
99
99

2

Figure 2-7 lists the vocabulary for three IMS II data sets: an accounts
receivable data set, a name and address data set, am an invoice data
set.
(A data set is a 1M3 II data structure Which can be oonsidered a
file. ) Each record in the accounts receivable data set corresponds to a
single custamr account and contains the following entries:
Nane

Descriptioo

BRANCH

Branch number

aJST-ID
CREDIT-LIMIT

Custaner nurrber

SALES-PERSON-cD

DISCXXJNl'-PERCENr
BILLIN3-TERMS-er

QJS'IOIER-NAME
STRml'-ADDRESS
CI'lY-STATE

CUstomer's full name
Street address
City and state
Zip code
Risk rating code

ZIP-a:>DE
RISK-RATnG

00

rec..~rd in the invoice data set deals with a particular
invoice ar¥i contains the follc:wing entries:

Each

2 -

28

custaner

Name

INVOlCE-Rl

Invoice rudJer

INV-aJS'l'-l«)

CUstaner n.mber
Due date
Terms of billing code

DUE-DATE

TElt&-BIILItG-OODE
'l'C71'AI.r-ND.JNl'
AKUll'-PAID
~DISCXlJHl'
~lA9l'-PAntI'

CHID<-l'D
INV-BRANQi-Y)

Each

aoc:amts receivable

Total anamt of invoice
Total anamt paid
cash discount taken
Date of last payment
Oleck runber
Branch n.mber

recom

is associated with one or

DDJ:e

invoices

the IM; II-mai.ntained set INVOICES.
Related al8taDer name ao:i
address infOl1lBticn can be obtained for each acoounta receivable recom
or invoice record via awIq>riate lookup in the IHt lI-maintained set.

via

lUEER-SEl' •

2 - 29

VOCABULARY
"CLIENl' II

RP3 N.NN

II> N+1 YY
2

PAGE

Il-SII DATA BASE QJST-ACCl'-INEO.
-----DATA 'SEl' ACCTS-RECV,

'lUl'AL-POPUIATlOO IS 200.
SET ACCTS-SET,
SPANS DM'A SEr Aa:!TS-RELV,
KE.Y IS QJST-NO.
SEl' .INVOICES,
SPANS I»\TA SEl' INVOICE-INFO,

KE.Y .IS .INVOICE-g).
L!.VEL

2
2
2
2
2
2

2
2
2
2
2
2
2

NAME WI'lH QUALIFIEH)

BRANCll
ClJST-NJ
CREDIT-LIMIT

SALES-PERSCN-CD
DISClXlNT-PERCENl'
BII..LIR3-TERMS-DE
~m-IASr-pAYl4iII'

DATE-IAST-PURCli
B1\LANCE-1XJE
aJRRENrLY-DUE
'lHIRIY-mYS-IlJE
SlX'lY-~S-DUE
NINmY-~S-OOE

Figure 2-7.

&UBSCRIPrS

'lYPE

11»1
l.'l'EM
'ITEM
IT&t
ITa-!
ITEM
1'1»1
I'lDt
ITEM
ITEM
ITEM
ITEM
1'1»1

L!H1.lH
NUMERIC
NUMERIC
NlHmIC
NUMERIC
NlHmIC
NUMERIC
NlI£RIC
NUMERIC
NlI£RIC
NUMERIC
NtHmIC
NUMERIC
NtHmIC

4 9(4)
6 9(6)
5 Z(4)9
5

9(5)

2

99

1

9

6 9(6)
6 9(6)
9 $Z(4)9.99
9 $Z(4)9.99
9 $Z(4)9.99
9 $Z(4)9.99
9 $Z(4)9.99

Vocabulary Listing for "CLI!Nl'"

(Sheet l'of 2)

2 - 30

IDITIH3
PIC'lURE

RP3 N.NN
OMSII DATA

VOCABULARY
·CLIENT·
~

DD MMM YY
PAGE
3

CUST-ACCT-INFO (CONTINUED)

DATA SET CUST-INFO,
TOTAL-POPULATION IS 200.
SET NAME-SET,
SPANS nATA SET CUST-INFO,
KEY IS CUSTOMER-NUMBER.
SET NUMBER-SET,
SPANS DATA SET CUST~INFO,
KEY IS CUSTOMER-NUMBER.
LEVEL
2
2
2
2
2
2
2

NAME WITH QUALIFIERS

SUBSCRIPTS

CUSTOMER-NUMBER
BRANCH-NUMBER
CUSTOMER-NAME
STREET-ADDRESS
CITY-STATE
ZIP-CODE
RISK-RATING

TYPE
ITEM
ITEM
ITEM
ITEM
ITEM
ITEM
ITEM

LENGTH
NUMERIC
NUMERIC
STRING
STRING
STRING
NUMERIC
NUMERIC

6
4
20
20
20
5
1

EDITING
PICTURE
9(6)
9(4)
X(20)
X(20)
X(20)
9(5)
9

DATA SET INVOICE-INFO,
TOTAL-POPULATION IS 5000.
SET INVOICE-NOS,
SPANS DATA SET INVOICE-INFO,
KEY IS INVOICE-NO.
LEVEL
2
2

2
2

2
2
2
2

2
2

NAME WITH QUALIFIERS
INVOICE-NO
INV-CUST-NO
DUE-DATE
TERMS-BILLING-CODE
TOTAL-AMOUNT
AMOUNT-PAID
CASH-DISCOUNT
DATE-LAST-PAYMT
CHECK-NO
INV-BRANCH-NO

Figure 2-7.

SUBSCRIPTS

TYPE

LENGTH

ITEM NUMERIC
ITEM NUMERIC
ITEM NUMERIC
ITEM NUMERIC
ITEM NUMERIC
ITEM NUMERIC
ITEM NUMERIC
ITEM--NUMERIC
ITEM NUMERIC
ITEM NUMERIC

Vocabulary Listing for "CLIENI'"
(Sheet 2 of 2)

2 - 31

6
6
6
1
8
8
8

EDITING
PICTURE
9(6)
9(6)
9(6)
9
$Z(3)9.99
$Z(3)9.99

$Z(3)9.99

6
8

9(6)
9(8)

4

9(4)

SAMPLE VOCABtlr.ARY 5:

"aJ&W"

Figure 2-8 lists the partial vocabulary for a magnetic tape file that
contains custaner remittances received during the ncnths of January and
February.
'!his file is. maintained in sequence by account nunber. Each
record represents a single, remittance and contains -the follOliing
entries:
DescriptiQ'l
REMIT-ACCT-ID

Accnmt rn.miler

aJS1'-NAME

Custaner name

IlM'E-RECD
YR-+I>-REXD
DAY-REO>

Date received
Year and nonth received

NEr-PAYMl'

Net payment

Day received

DISCNl'-'D\KEN

Discount taken

CBK-NJ

Clleck nunber

'!he file of remittances is used to update an open aCCXlWlt.s receivable
file ..u.ch is also maintained in ascending account-nunber order. Each
reoord -of the acoounts receivable file contains the followir¥J entries as
well as other account infonnation:
Name

Descript.ioo

Account rn.miler
AccCAlnt balance
Previous balance at ncnth end

2 - 32

RP3 N.W

VOCABULARY
"QBlV"

tMI yy;
PItGE
1

II)

smIDt FILES.

FILE maT-FILE,
OR3ANIZATICti IS SIUJ!Nl'IAL,
'l'C7mIrPOPUI.ATIaf IS 1000.

LEVEL

NAME WI'IH
QJALIFIms

1
2
2
2

REMIT-Rl:"XX)RD
REMIT--ACX:'l'-OO
C1JST-NAME
Dl\TE-REXD

3
3

YR-K>-REXD

2
2
2

SUECRIPl'S

'lYPE

3 9(3)

I'l'IH S'l'RI1«;

20 X(20)

I'l'fH lUERlC
I'l'Dt NlH:RIC
I'lDI WMERIC
:rl'Dt NlH:RIC

DISQfiVI'AKaI
CH<-l«)

mITDD
PIcruRE

GRClJP
IT!M lUERlC
GlDJP
I'lB4 NlH:RIC

mY-RB::D
NET-PA»I:lI'

LDImI

4 9(4)
2 9(2)
10 $Z(5)9.99
8 $Z(3)9.99
8 9(8)

FILE Aa:T-FIIE,
QR;;ANIZATIW IS S!XllBft'IAL,
TOl'AL-POPUIATICB IS 200.

LEVEL

NAME WI'IH
QJALIFIm8

SUBSaUPl'S

'.riPE

1

NXT-REXDRD

GlUJP

2

ACX:T-R>
BALANCE
OLO-BALANCE

1'1»1 NW£RIC

2
2

Figure 2-8.

ITEM lUERlC
I'lDt WMERIC

LDImI

3 9(3)
$Z(7)9.99
$Z(7)9.99

12
12

Vocabulary Listing for "QBlV"

2 - 33

mIT.IRi
PIcruRE

SAMPLE VOCABlJIARY 6:

"SHIPV"

Figure 2-9 lists the vocabulary for a detail transactiai file of
ac(X)UDts ~ivable and ac(X)UDts payable for a shipping CXDpany. Each
rEKX)rd of the file represents a transaction and contains the following
entries:
Name

NlI4Bm
.DA.TE-

Descripticn
Freight bill DUI'Iber
Date of billing
ftblth of billiDJ
Day of billing
Year of billing
Q:xies for shipnent origination points
Codes for shipnent destination Points
Receipt IlUIlber or disbursement. check
nunber
Acc:Dlnt IU.JIl.'ber

Transacticn
. type
O=payable)
Transactioo code
Dollar anount OIled

2 - 34

(l=receivable;

RP3 N.NN

VOCABULARY
"SHIPV"

JD M+l YY
1

lJ:~..7E

SYSTEM FILES.

FILE

~-T.RANS,

ORiANllATION IS INIEXID,
RECDRD KEY IS NllomER,
TOrAL-roPUlATIOO IS lEFAULTED ro 9999.

SUBI.i.VEL

1
2

NAME WI'IH QUALIFIERS

SCRIPl'S

"NPE

BIIL
tUmER
OF BILL

GRaJP
ITEM S'l'RnI;

2

Ill\TE-ofo'-BIIL:U~

3

MJN1'H~F-BILLIN3

GROOP
ITEM WMERIC

-)

D/1:i-oF-BIILIl-l;

IT&t NlMERIC

J
.)
"
2

2
2
2

YFAR-oF-BILLIM;
rolNTS OF SHIPMEllI'
SUB 1: MAX VALUE
IS 5
roINTS-oF-DESTINATION
RECEIPT-NO

TRANSI\CfION-'IYPE
TRANSACTlOO-1 NlHERIC

2
8

9(8)

ITEM NlHERIC
ITEM NUMERIC
ITEM NlHERIC

8

9(8)

6
4

9(6)

ITEM NLMERIC
InM NUMERIC
ITEM NUMERIC

1

1
10

9
9
-$(5) .99

Vc..1Cabulary Listing for "SHIPV"

2 -

EDITnG
PIC'lURE

99
99

ITEM I.'IDMERIC

1

ACX.Xmlr-W
OF BILL

2
2

LEHmi

35

9(4)

SECI'ION 3
DESIGNING REPORrS

This section is intended to help you determine the REPORI'ER III report
language statements you need, as well as the logical order of the
statements, to design and specify report(s).
Brief explanations of
"basic language constructs" and "functions" often used in constructing
report language statements are included in this section.
Detailed
explanations of all report language statements, clauses, basic language
constructs, and functions are provided in Section 4.
REPORr SPECIFICATION
A REPORrER III report specification describes one or nore reports.
report is defined in general to mean one of the following:
1.
2.
3.

A

An automatically formatted printed report.
A user-formatted printed report.
A machine-readable extract file.

The syntax diagram presented in Figure 3-1 shows the general processes
involved in use of REPORTER III report language statements to design and
specify either a single report or multiple reports.
In designing report(s), you use report language statements to define
what information is to be reported and what types of reports are to be
produced.
First

you indicate the password, if any is needed to reference the
vocabulary. Next you reference the vocabulary (created by the
RP3VOC program) which contains the description of the file(s) to be used
in specifying the desired report(s).
r~ired

3 - 1

---------------------->(1)
I
I statement>
I
I I
+--> +
statement>

I <---------------------1
I
I
I-->->I

I

I

+-->+
statement>

Figure 3-1.

General Syntax Diagram for
REPORTER III Report Specification
(Sheet 1 of 4)

3 - 2

+--> (2)

For Single Report:
+<--------------------------------------------------+

I

I

(l}------;-r-!--->--------------------------->

I

I-r-r-J--->------------------->

I
I--------->-->

I

I--------->--------------->

I
I-;-r-!--->----------------->

I
-r-r-J--->------------------->

I

I

+->->+
-r-r-J--->------------------->
-r-r-J--->------------------->
-r-r-J--->------------------->
-;-r-!--->------------------>
--------->----------------->
--------->----------->
-;-r-!--->------------------>
-~--->
-r-r-J--->------------------->
--------->----------------->
-;-r-T--->------------------>
-~--->----------------->

I
I-r-r-J--->-------------->

I
I--------->------------------>

I

+-r-r-J--->------------------>+
Figure 3-1.

General Syntax Diagram for
REPORI'ER III Report Specification
(Sheet 4 of 4)

3 - 4

After ycu reference the vocabulary and before yoo enter
specification, you have the q;>tion to enter the follcwing:

ycur· report

1.

Process~ption statement (s), which allow you to change system
default values and/or actions for the report(s).

2.

REPlACE statement (s) , which allow you to provide instructions
to
RP3REP to replace specifioo
names by corresponding
designated portions of text in all places where those I'lalreS

occur.
Then you enter the report specification, (using language statements such
:is

INPUl', EXTENSlOO',

SELECI' ,

SAMPLE, GR:XJP, ORDER, SUMMARIZE,

EXTRACT) which allow you to manipulate the information
the desired report(s).

PRIm' ,

and to generate

When yoo have finished specifying the report(s}, you input your report
specificatioo to the Rep::>rt Language Analysis Program (RP3REP).
(The
vocabulary which you have referenced IlUst be on disk or disk pack when
the RP3REP program is run.) If you have not made any syntax errors in
designing your report (s) , a source program tased on the paraneters
produced by RP3REP is generated by the RP3GEN program, the source
program is canpiled, and then the Object code is executed to produce the
desired report (s) • Otherwise, the REroRl'ER III System displays messages
indicating the errors you must correct before processing can continue.

SINGLE-REPORT SPECIFICATION
When yoo specify a single report, cne pass is made through the data, and
one report is produced.
In designing a single report, you use those language statements
necessary to produce the desired report (see portion of Figure 3-1 under
the heading "For Single Report ") . A single-report specification cannot
consist of nore than one sort; that is, logical rea:>rds which are to be
reported are grouped (via control-break items) and/or ordered in only
one sequence.

MULTIPLE-REPORT SPECIFlCATlOO
When you specify multiple reports, one pass is made through the data,
and one or a number of reports are produced.

3 - 5

First yOJ. select the logical record(s) (through the INPur statement)
and/or design other processiB3 (throogh other language statenents) that
will be camon to all the reports to be created; this oonstitutes the
Input Section specificaticn (see Input Section p:>rtion of Figure 3-1).
This infonnation is to be input to each of the Report Sections.
The
Input Section specificaticn cannot consist of nore than one sort; that
is, logical records which are to be input are grouped (via control-break
items) and/or ordered in only one sequence.

yoo design each report indi vidually ,
using those language
statements necessary to produce the desired report (see Report Section
p::>rtion of Figure 3-1). As shONn in the Report Section portion of the
figure, all language statements pertaining to a particular report nust
be specified before the statements pertaining to another report are
specified. Language statements contained in a particular Report Section
have 00 relation to any other Report Sections.
Each Report Section
describes one report to be produced fran the infonnation [logical
record(s)] defined by the INPl1I' statement in the Input Section.
Then

All names and identifiers defined in a Report Section [e. g. , macro
narres, derived data item llalleS (kncwn as "extensions"), and table
identifiers] can only be referenced in the statements within that
section.
These names and identifiers can be identical to those defined
in other Report Sections; 00 conflict arises since the names and
identifiers defined in a Report Section are local to that secticn.
The specification for each Report sectioo cannot consist of ncre than
one sort; that is, logical records which are to be reported in a
particular Report Section are grooped. (via control-break items) ariJ/or
ordered in only one sequence.
For
the P-lrpose of identification, each report designed
referenced by rep:>rt number (integer, word, or string).
Exa.nple:

FUR REPORI' 1:

FUR REPORr 'l\-D:

3 - 6

can

be

IDR REPOR1' 1100 SAIAl« TOl'ALS I I :

is noted that a single-report specification ~ch oontains an
INPl1l' statement is identical to a nultiple-report specificatioo in Which
the Input Section oontains ally an n~l1I' statenent and possibly an
ACCEP1' statement, am the Report Sectial contains all the other
It

statenents of that particular single-report specification.
SPB:IFICATION
n\.l'Rber of constraints wi th
specificatioo are ooted below.

A

<m~

respect

to report

lal'¥3\lage

statement

ORDER OF I...AtGJAGE srA'lDtfNrS

In specifying the language statements needed either in a single-report
specificatial
or in
the
Input
Section
of
a nultiple-report
specificatioo, yell can give the statements in any order ycu desire,
provided you meet the follQiing constraints:
1.

You nust define an input data structure in the INPl1l' statement
before you can reference data items in that structure.

2.

You nust define a nane before you can reference it. This
applies to a <macro name>, a derived data itan name, an
accept.~ data item name, a control-break name, and a <colurm>

name.
3.

You nust define a table before you can reference it.

In specifying the language statements needed in the Report Section of a
rrultiple-report specification, yeo are constrained by items 2 and 3
above (item 1 does not apply).

3 - 7

CDNTROIr-BRFAK ITEMS AND ORDERING KEYS

Control-break items and ordering keys specified in the Iqput Section are
applicable only to the specifications within the Input Section.
If
these same control-break items and ordering keys are required within a
Report Section, they nust be redefined as such within the particular
Report Section, and the SUPPRESS SORI' feature may be used (refer to the
SUPPRESS-SORI' statement in Sectioo 4).
Control-break items specified in a Report Section are applicable only to
th~ report described by that section.
ABSTRACT

STA~

An ABSTRACT statement can be used ooly in the Input Section of a
nu1tip1e-report specificatioo (even if only one report is to be
produced) •

language staternents which appear in the general syntax diagram
(Figure 3-1) are listed alphabetically and e~lained briefly in the
follONing table. All these statements, as well as all clauses which can
be contained wi thin them, are explained indi. vidually and in detail in
Section 4.
The

can use the following table as a guideline in detennining
statements which you need to design your report (s) •
Yoo

language
then can
consult the detailed discussions of the language statements and their
carponents in Section 4 to determine the specific construction of eadl
statement.
You

Language Statement
ABSTRACl' statement

E~lanatioo

Specifies that only sumnary infonration for
a previously defined referenced data item
is to be input, as a single logical record,
to every report.
'!be referenced item is
declared a control-break i tern if oontro1
breaks have not been specified preYiously
in another statement.

3 - 8

N:l:£P't statement

BUILD statement

Specifies
data items which are to be
parameters to the generated report program.
The specified values of the data items will
be entered at run time am will remain
CXXlStant throughout the production of cne
report (or ale set of reports, in the 'case
of a multiple-r~rt s.pecification). The
N:J:%f?r statement can be used to produce
different versicns of a report fran ale run
of a report program.
Provides the means to define new data items
isolating portions of data names or
joining data nanes.
These new data items
subsEquently
can
be referenced where
appropriate in the report specifications.

by

Provides the means to override default
values arxi acticns with nondefault values
and actions related to the grouping and
arrangement of records in the generated
report program.
There are three types of
data-processing-option statements, each of
which is explained in detail in Section 4:
1.

SJPPRESS SORI' statement.

2.

SEn' &>RT BUXl<It«; statement.

3.

SET SORl' SIZE statement.

For a brief explanation of eadl type, refer
to the MTA-PRQCESSnG-OPTlOO statement in

Sectial 4.

Bxtensicm statement.

!X1'MCT

statanent

Defines a new data item to be derived fran
alxeady-existing data i tElllS. Qlce defined,
the new data item can be subs81uent1y
referenced ~ere apprcpriate in the report
specifications.
Extracts infonnatiat to a nei file in
!lBchine-readable fonnat.
'Ibis extracted
infomation can then be printed or reported
through
arxX.her report created by the
REPORl'ER III System, or it can be made
available for other processing as needed.

3 - 9

GRXJP statement

Specifies centrol-break items which are
used
to group
the infonnatioo
being
reported
and
provide
a
basis
for
sumnarization.
Control breaks for the
report, or section, must IX>t have been
specified previously in another statement.

INPUl' statement

Describes what ~ II data base and/or
system files are to be used and the method
of
access.
Defines the content of a
logical reoord.

ORDER statement

Specifies h.<::w infonnation is to be arranged
(ordered) •
The ordering is subordinate to
any
oontrol-break
grouping
specified
else.tlere, an:i it IlIUf?t be consistent with
any ~ering described elsewhere.

PAS&l«>RD statement

Supplies the pasS\NOrd whim enables the
specified
vocabulary to be referenced.
This
statement is rt:quired only if a
password was established for the vocabulary
in the RP3VOC specifications.
If the
statement is required and the password is
not entered correctly, the Report Language
Analysis Program (RP3REP) will tenninate
with an appropriate error message when it
is run.

PRINl' statement

Specifies the layout and content of .a
user-formatted report. This statement is
useful for printing special fODnS, such as
confirmation letters and mailing labels,
and for printing other reports where yoo
need the data printed at an exact. locati<Xl
<Xl the page.
Enables you to change the default operati<Xl
of the REPORl'ER III System, (to change a
default processing q>tion). There are five
types of process-option statenents, each of
whiCh is explained in detail in Section 4:
1.

CDMBINE statement.

2.

Process-option ASSIGN statement.

3 - 10

~-;,

3.

P.rocess-option SAVE

::. t.ement.

4.

Process-option SET statement.

5.

Process-option SUPPRESS
statement.

For a brief explanation of each type, refer
to PRJCESS-OPrION srATEMENr in Section 4.

Defines a range-break item as the one and
ally oontrol-break item. Specifies that
infometioo be grouped according to given
value ranges of a given data item, to
provide
a
basis
for
reporting
and
sumnarization.
Enables a specified name to be replaced by
a portioo of language text, consisting of
dlaracters, words, and/or phrases, in all
places where the nane occurs. Provides a
oonvenient
shortharxi
technique
for
expanding a REI?ORI'ER III report language
statement.
Enables yoo to override a default value or
action with a specified value or action for
the particular report.
There are four
types of report-q;>tion statenents, each of
which is explained in detail in Section 4:
1.
2.
3.
4.

LISTIR; statem:mt.
Report-option SEl' statement.
Report-option SUPPRESS statement.
SAVE LISTnG statement.

ASSI~

For a brief explanation of each type, refer
to REPORl'-QPl'ION STATEMENl' in Section 4.
R£ElORT statement

Specifies the· layout of an automatically
fonnatted report and the data items to be
included in the report.
This statement
provides control-break headings and colurm
listings, if desired.

3 - 11

SAMPlE statement

Causes
only certain
selected
logical
records ( II sanples" ) to be made available
for
reporting.
The statement can be
designed
to make the selection ei ther
systematic or randan, depending upa1 the
needs for the report.
Also, the sanpling
can be stratified by using a strata-defined
Boolean
e~ression
in
the
~le
description.

Sf!" Fer statement

causes input logical records either to be
made available for reporting or to be
suppressed.
If no SELECT statement and 00
SAMPLE statement are used, all logical
records that were input are available for
reporting (00 infonnation is suppressed).

s.HWUZE statement

Specifies what statistical summaries and
colurrn footings are to be included at the
end of control-break groupings arrl/or at
the em of the report.

TABLE statanent

Defines a conversion table which relates
data values to equivalent or corresponding
values. Once the table is defined, you can
use
an ENrRY functioo
to obtain the
corresponding
table-defined
values for
particular values of a data item.

TI'lt£ statement

Specifies page title information for the
report.
Titles can consist of Character
strings, time of report, date of report,
and/or data items.

VOCABUlARY statement

Identifies the vocabulary files to be used
for the desired report. This statement is
always required in a REroRl'ER III report
specification.
'lhe vocabulary files J1llSt
be created by the RP3VOC Program.

3 - 12

BASIC LANCImGE CXNS'1'RJC1'S

In IIIl8t REPOR1'BR ttl report language statements, Y01 use basic language
aonatructa
in defining information within the statements.
'!be
aonatructa axe listed alphabetically am explained briefly in the
following table. All these CDlStructs are explained indivim a 11y am in

detail in Section 4.
E!planatioo
<aBL picture>

~ly

used to describe hew an item is

to be printed.
<data name>

Refexences an itan· or gralp.
It is a
<name> or a <name> qualified by other
<nama>.. It pc8aibly can be albacripted by
<integer>s ard/or other <data name>..
It
po8aibly
can t. associated with a
designated exmtrol-break item.
one of the followiDl in terms of
and operators:

Describes
~

1.

An arithmetic

expressioo,
specifies a ruoeric value.

which

2.

A string
expression,
specifies a string value.

which

3.

A Boolean
expressioo,
Wlich
.pecifies a Boolean value (TIllE
or FALSE) or a runeric value (1
for TIIJE and 0 for FALSE).

Can be statistical or noostatistical.

<external file name>

Identifies
a file to the rep (Master
Q:ntJ:Ol Program) • Contains <identifier>s,
each being a <string> enclosed in quotatioo

marks.
<literal>

a data item ..nich .has a value
to the value being described.
There are two classes of literals:
Represents

identical

3 - 13

<relational operatoc>

1.

Numeric literals, or <number>s.

2.

Nonnumeric literals, or
<string>s.

Specifies the criteria for catparison (far
exanple, IS NOr F.XJUAL T OR GRFATER '!HAN).

ruNCrIWS
In many REPORl'ER III report language statements, you use a function (s)
to define the value of a data item which is based on the value(s) of
other
data item(s).
'lbe functions
(ani the. oc:IlpOl'lent
clauses
<date format> am <stat parameters> ) are listed alphabetically and
explained briefly in the follcwing table. All these functions (and the
cxxupcnent clauses) are explained ir¥iividually and in detail in Sectial
4.

Explanatioo

Funct.icn
<AGE function>

A nonstatistical function used to calculate

the time interval (the n\.lIl'ber of boundaries
crossed) between two dates, in tenns of
DAYS, WEEKS, K)N.['HS, QUARI'ERS, or YEARS.
<date-convert function>

A noru:.tatistical function used to Calvert a

data item stored within a particular <date
fonnat> to a data item representing the
same date, but in a different fonnat.
<date format>

A clause which specifies how a particular
date is coded so that it can be accessed
properly by the REPORl'ER III System.

<~

functicn>

nenstatistical
values of a data
values according
defined by a TABIE

A

3 - 14

fU?~~tion us~ to convert
itern to alternate item
to a table previously
statement.

<statistical furx::tioo>

Describes
a
statistical
i t.em
which
sumnarizes a group of logical reoords which
were input ard possibly extended, selected
fran inplt, sanpled, and/or selected fran
the semple. A statistic can be specified
as a count, running count, total, running
total, average, maximum, mi.nimJm, sum of
squares, mean square, variance, or standard
deviaticn.

<stat parameters>

Specifies the parameters of the statistical
function.
EXAMPLE REPORl' SPECIFlCATIWS

exanple of a single-report specificaticn and an exanple of a
IIl.1ltiple-report specification are presented below.
Each exanple is
aca:mpanied by an explanation of the specification and an illustratioo
of the report produced.
The vocabulary used in each example is
described in Section 2. Other exarcples of report specifications are
presented in Section 5.

An

EXAMPLE SnGLE-REPORl'. SPECIFlCATIW

A printed report listing all assets acquired during the year 1985 with a
cost in excess of $5,000 is r~red for VQ.lching ard inspectioo.
The
following REPORrER III report specification, using the vocabulary
''V~'', is constructed to reflect this infonnation:
~IS·'V~".

INFUl' ASSET-FIIE.
SELECT ACQUISITION-YR

=

85 AND COST > 5000.00.
REroRl' ASSET-NO, ASSET-DESC, ASSET-'IYPE, DEPT-OO,
ASSET-LIFE, CDST.
In this specification, first
Then the follc::wing is done:
1.

the vocabulary

'!he logical records in the data
ASSEl'-FIIE are specified as inplt
specification.

3 - 15

tlVOCAST

tI

is referenced.

rese corresponding
to
rEGuired for the report

2.

Then all logical records corresponding to both ACQUISITION-YR
85 (acquisitioo year is 1985) and CDST > 5000.00 (cost is
greater than $5,000) fran the input physical record ASSET-FILE
are specified to be made available for re,lX>rting (selected).

3.

Finally, the data i terns ASSET-NO (asset nunt>er), ASSET-DESC
(asset description), ASSET-'IYPE (asset type code), DEPT-ID
(associated departIrent rnmi:>er), ASSEI'-LIFE (asset useful life
in years) , and <DST (original asset cost) fran the logical
records which meet the select criteria are specified to be
reported (printoo) in an autanatica1ly fonratted refOrt.

=

pn:)cessing the above specificatioo prcxluces the required report, which
is shown in Figure 3-2. Note that the colurm headings are the data

names.

PAGE 1

ASSET

~DESC

007130
009200
009801

DEPT
ID

ASSET

TYPE

03
01
03

1122
1501
120J

05
10
20

ASSET

NO

V2000 TERMINAL
1982 R>RD VNfl
'IfMPORARY S'roRAGE BUILDIID

Figure 3-2.

Exanp1e Single Report

J - 16

<DST

LIFE

$
$

$

5205.00
5102.80
6179.25

EKAMPLE .l«lLTIPlE-REPORl' SPECIFICATICli

printed reports are required, each g1V1D1J the total of the
remittances received each day during January 1985 and the grand. total
for the nDDth. Qle of the reports lists detailed infamatial atxut. each
remittance received, while the other report liata cnly the re;ui.:red
8l.1IIIIBI'Y information. The following REfORl'BR III report apecificatial,
usiD;j
the vocabllary
"C1B1V" ,
is constNcted
to reflect. thia

Two

1nfar:matioo:
~

IS "C1B1VIt •

FOR INPl1l' TO ALL REPORl'S:
INPl1l' REMIT-FILE.
SELECl' YR-K>-RECD = 8501
GRaJP BY mY-REXD. 'THIS S'l'ATDtDll' S&V!S MJ
, ADDITI<BAL SlRT
.
iOR REPORl' ,1:
TITLE "JANUARY R!MlTl'ANCES I I .
REPORl' BY' IV\.Y-R!ID LISTItG REJaT-Hrl'-R>, aJS'l'-HME,

NET-PADHl', DISQfi'-TAlQN, QI(-R).
SHiU«ZE RX7l'IlG NEl'-PADHl'.

SJPPRESS SlRl'.

'INPl11'

nm> ALRFADY DJ

, CDRRECl' S!WDICE

FeB REPORl' 2:
TI'It,E "StJHotARi 0F " / "JANUARY RDaTl'ARCBS".
REPORl' FOR EAaf MY-REm: ~RIHlft'MtCSS 1III<lI

IS 'ro1'AL(NEr-PADHl').
s:HWUZE !OOl'~ 'l'Ol'AIt-RDaTl'ARCBS.
SJPPRfSS SORl'.
DiEl) ALRFADY DJ
, CDRR!X:'l' SlUIBZ

'INPl1l'

In this speclficatioo, first the vocabulary "C1B1V. is nferencad.
infomBtial is specified as irplt to each report as fol.l.owa.

1.

'lbe litysical records correspc:nli.ng

Next

to RDa1'-PIl£ is specified

as irput.
2.

Next all logical records oorrespc:nli.ng to YR-tD-lBD - 8501
(year and IlDIlth received is· 1985 January) fran the irput
Ptysical records R&1IT-FILE are made available for reporting

(selected) •
3.

Then

the CXXltrOl-brealt

heading

1lAY-1BD

(day received)

specified to group the data items to be reported.
'!'hen the first report (REPORl' 1) is desi~ as follows:

3 - 17

is

1.

It is titled "JANUARY' REMI'l'l'ANCES".

2.

All

data items corresponding to the control-break heading
OA.Y-Rro:> and the following colurms are specified for ioclusion
in the report: R!X[T-ACCT-NO (account llUIIiler) , aJST-NAME
(custaner
naJ\Y!) , lEl'-PAYMNl'
(net paynent) ,
(discount taken), and CH<-NO (check rutlber).

DISCNl'-TAIm.'l

3.

Total net payment for each day reported and for all days'
reported, respectively, are included in the report throogh the
~ZE statenent.

4.

The SUPPRESS SORl' stateoont is used because the infonnaticn is
already in the correct stquence.

Finally, the second report (REPORl' 2) is designed

~

follOllS:

1.

The rep:>rt is titled tlSl.HoP.RY' OF JANUARY REMI'rl'ANCES. II

2.

total anount for each data item oorrespooding to the
control-break heading NET-~ within each oontrol-break
heading IY\Y-REC> is specified for inclusicn in the report..
These total ancunts correspond to the control-break heading
The

'lOl'AL-REMI'l'l'ANCES •

3.

The

sum

the
total
anounts
are included in the
statenent.
of

TOrAL-REMI'rl'ANCES
~ZE

4.

oorresponding

the

report

the

thralgh

The SUPPRESS SlRT statenent is used because the informatioo is
already in the correct stquence.

Processing the above specificaticn
is shewn in Figure 3-3.

produces the required report, '4rtbich

3 - 18

JANUARY REMITTAMCES
DAY f<ECDa

01

REMIT
ACCT
NO
112
123
111

CUST HAME

NET

JOE BROWN
SUSAN KELLY
JOHN D. DOE

SUMMARIES FOR DAY REeD:
TOTAL
DAY RECD:

PAGE 1

PAYl~ENT

$
$
$

211.00
501.00
123.10

$

8113.03

DISCNT
TAKEN

CHK HO

20.50
50.10
0.00

31811510
33355560
11166000

DISCHT
TAKEN

CHK HO

0.00
1.00
56.83

11351000
55661111
10123450

$
$
$

01

02

REMIT
ACCT
NO
203
501
100

CUST NAME

HET PAYMEHT

BILL M. SMITH
FRED ADAMS

MARY P. JONES

SUMMARIES FOR DAY REeD:
TOTAL

$
$
$

50.00
13.13
506.00

$

1776.53

$

$
$

02

SUMMARIES FOR FINAL
TOTAL

$ 66010.80

SUMMARY OF
JANUARY REMITTANCES
DAY

REMITTANCES

RECD
01
02

SUMMARIES FOR FINAL

$

$

8113.03
1776.53·

$ 66010.80

TOTAL

Figure 3-3.

Exanple I-tultiple Report

3 - 19

PAGE 1

SEcrION 4
REPORI' IANGUAGE STATEMENTS

The language statements used to design and prepare reports through the
REPORrER III System are each explained in detail in this section. The
clauses, basic language constructs, and functions which can be contained
as syntactic variables within report language statements are presented
in alphabetical order.
Each statement and clause and nest of the constructs and functions are
depicted by syntax diagrams. If a syntax diagram contains more than one
path, each path in the diagram is identified by an alphabetic character
anl is discussErl in the text labelErl by that alphabetic character •
Exanples are presented for various paths. If an eXClll1?le is COITg?lex, the
part of the example Which illustrates the particular path may be
underlined.
For definitions of various terms used consistently in the semantic rules
of the report language to identify data or infonnation, refer to Section
2, under "Terminology for Data Identification." For brief descriptions
of the various types of vocabulary names Which can be specified in
appropriate contexts in the report language, refer to Section 2 under
"Vocabulary Names. II

4 - 1

peN 1177185-002

ABBREVIATED M:NrH OPI'ICN
MON'IH, allaws changing the
process opticn, SEI' ABBREVIATED
The
The default
3-cha.racter nonth strings to an alternate language.
The table shown belCM shows the 3-character
language is English.
abbreviations for nonths in other languages.

English
(default)

French

1

JAN

JAN

2

FEB

3

Italian

Spanish

JAN

GEN

ENE

FEV

FEB

FEB

FEB

MAR

MAR

MAR

MAR

MAR

4

APR

AVR

APR

APR

ABR

5

MAY

MAl

MAl

MAG

MAY

6

JUN

JUN

JUN

GIU

JUN

7

JUL

JUL

JUL

LOO

JUL

8

Am

AOO

AOO

AGO

AGD

9

SEP

SEP

SEP

SEt'

SEP

10

ocr

ocr

OIcr'

orr

OCT

11

mv

mv

NOV

NOV

roy

12

DEC

DEC

DEZ

DIC

DIC

t-bnth

Gennan

'llle
3-character IIDnth string is usErl for the Mt+1 part of the
DIM1MYY-DATE and DIl+1MYYYY-DATE clauses in the TITLE statement and PRINT
insert clause.
The 3-character nonth string is also used in the
OIl+MYY-DATE and DIM1MYYYY-DATE output of the Date Convert function.
avoid entering the ABBREVIATED MON'lE OPI'ICN for every report
specification in Which a different, oondefault language is desired, it
is recx::mnended that this opticn be storErl in the vocabuary with the
REPLACE statement, and then the name given in the REPIAC.."'E statement be
used when the option is desired.

'Ib

peN 1177185-002

4 - 2

'ft1e syntax for the ABBREVIATED M:ImI optiCXl is as follows:

-

ABBREVIATED -

M:ImI

- - 1 t - - - -......-

+- LISl -+
+t---------- ,

I

1

1

+

1

I
I A / 12 /
-+--

al
I C
<string)

)

'l'he paths of this syntax diagram are explained below:

E!planatiCXl
A

This path IlUSt be taken 12· times.
exceed 3 dlaracters in lerwJth.

a

Take this path until all 12 atilreviated Dalth strings have been
entered.

C

Take this path after all 12 ati>reviated IID'lth strings have been
given.

The string

Exanp1e:
SEl' ABBR M:ImI LIST

"GEN" "'FEB" '''MAR''

' 'APRil'

"MAG"'"GIU"'"JJ:1J,I'''I/JD"'
"SET"/"arT" '"fCJVII '''DIC'' •

4 - 3

, TO ITALIAN

given

can not

ABSTRAcr STATEMENT

The ABSTRAcr statement suppresses detailed infonnation anj specifies
that only summary information for a designated data item or a designated
previously definoo control-break item be input to all reports.
The
ABSTRACT statexoont can only be used in the INPt1I' section in a rcultiple
report specification.

The ABSTRACT statement essentially specifies that infor.mation within
nultiple logical records associated with a particular control-break item
value be abstracted into a single logical record. This logical record
caltains surcmary infonnaticn only, but is treated as a detailed record
for report specification p.lIposes within each Report Section. Summary
information for a control-break item consists of items related to the
control-break item ~Ch have a constant value for' each value of the
control-break item. These items usually are derived statistical data
items, rut they also can be nonstatistical data items. If you use the
ABSTRACl' statement, you can reference only surcmary items which are
related to the ~cified control-break item in the subsequent Report
Secticns.
The syntax for the ABSTRACI' statement is as follows:

+->INPDRMATION->+

I
I

B

I

I-->(extension>->I
I
1

I c

I

l-->(item desc>->I
f
i

ID

I
1

+-->(c-b name>-->+
The paths of this syntax diagram are explained belc:w:
Path
A-C

Explandl:.itn
Take one of these path, whichever applies, to define a data item
a control-break item. The item must be nonstatistical, am
control break must not have been specified previously in another
statement.

as

4 - 4

Exanple: ("a..IENl'II)

VOCABUIARY IS ·'CLIENr Il •
FOR INPl1I' '10 ALL REFORrs:
INPl1I' ACCr-INVOICE-INFO.
SUPPRESS &>Rr.
ABSTRACr FOR FACH aJST-NO.
TOl'AL-INV-AMl' IS 1UrAL('roI'AL-NDJNl' EOR
FAa! ruST-a:» NUM( 6,2) •
'lUI'AL-INV-AMl'-PAID IS '1Ol'AL(»nJNT-PAID
FOR FACli CJST-OO) NUM( 6,2) •

FOR REPORl' l:

Inplt information for each report in the exanple cxnsists of
sumary infonnatiCXl related to aJST-NO (that is, infonnatioo
related to a custaner account). Detailed invoice infonnatioo is
suppressed am does not appear in any of the specified reports.
'!he swnnary informaticn for each ClJST-NO consists of the
following
sumary
items: all items within
the accounts
recei vable record (such as BRANCli, ~'"T-NO, CREDIT-LIMIT) i the
derived items (extensioos) 'IOrAL-INV-AMl', TOrAL-INV-AM1'-PAIDi
and INV-<..lJST-NO and INV-BRANCli-OO (if these items have ocnstant
values for each a.JST-NO value).
D

Take this path to reference a previously
item.

defined cxntrol-break

Exanple: ( II INVEN1'" )
V~..RY

IS "INVEN1"'.
FOR INPl1I':
INPl1I' PARI'MF.
GRXJP BY DEPAR'lMFNT.
DEPl'-INVEN1'-VALUE IS rrofAL( INVml'-OOLIARVAllJE FOR FACH DEPARrMENI') NUM( 9 ,2) •
ABSTRACI' INroRMATICN R>R FAQi DEPARrMENI'.

FOR REPORl':
SELECl' DEPr-INVEN1'-VALUE > 50000.00.
REPORl' DEPARMNT't DEPl'-INVEN1'-VAllJE.

4 - 5

'rhe infomatioo described in the <input sectic:m> as input to the
report. consists of a logical record for eadl department.
The
logical
record ccntains the sunmary items DEPAImJENT arxi
IEPl'-INV!Nl'-VAWE. '!be foll~ report. is produced:

PAGE 1
DEPT INVml'
VAWE

1031

1120
1300
•
•

55010.03
73176.20
120177.88

4 -

6

AO::EPl' STATEMENI'
------AO::EPl' statement specifies data items which are paraneters to the
generated report program. These data items are given values once at the
start of the generated report program run, arxi the values reRain
constant througlnJt the run. These data items can be referencai by
<nane> in other report language statements to centrol selection, titles,
sanpling limits, or extension calculaticns.

The

Accepted data values can cane fran the qJerator display tenninal (krx:Jwn
as OM' or SPO), card reader, or tape or disk file. The origin of the
accepted data is detennined by the Processing-cptioo ASSIGN statement.
'!he accepted data values are supplied in free-fonn format, with eadl
value separated by Ole or nore spaces.
If the AO::EPl' statement is
present, the generated report program asks th~ user for values of the
data items specified by the Process-optj..oo ASSIGN statement.
After a
report is prcxluced, based 00 the accepted values, the generated report
program asks for a' new set of accepted data item values arxi produces
another report. This continues until an END is recognized in the input
stream or an EDF (Erxi-of-File) occurs.
processinJ IOOde is set to W-LINE arxl the ASSIGN LISTIR;
has oot been specified or has been set specifically to
TER~
BACKUP, ally one set of accepted data item values is processed
and ally ale report (or ale set of reports, in the case of a
nul tiple-report specification) is produced.

When

the

statenent

Example:
AO::EPl' USER-NAME STRIM; ( 15)

TITLE "REPORt' FOR" USER-NAME.

The

report program reads a IS-character string value for USER-NAME and
p~uces
a report.
This continues until an END is detected.
This
USER-NAME might then be used in a TITLE statement to identify the person
who is to receive the report.
The folla«ing input data items would
except for the values for USER-NAME.

produce

4 - 7

two identical

reports,

Exanple:
II
II

Jati IX>E
FRANK ADAMS

II
II

mID

You can, optiooally, CXJ1t)ine input data items. You are limited to 80
dlaracters per entry, am you cannot split a data item between two
entries. The follOA'ing would also produce two identical reports, except
for the values for USER-NAME.
Exanple:
II

JaiN OOE

II

II

FRANK ADAMS

.1

mil

USE OF ACX:EPl' STAT&Bfi' CN
B

2006/s

3OOO/S 4000

SERIiS

en B 2ooo/B 3000/B 4000 Series of systems, the foll~ are oalditioos
that affect the use of the Aa::£Pr statauent ~ yol specify data
associated with the Aa::£Pr statement fran the our (SI?O).
•

If yol enter a striB1 with enbedded blanks (spaces), yol nust
include an at sign (@) inmediately before and after the
string.
If you are specifying data items for the Aa:EPr statement
canbinations, yol are limited to 60 characters per entry.

foll~ exanple
r~rt specification.

'!be

in

shows how to enter such an AaEPl' statement in a

Exanple:
Suppose that a report specification includes the following statements:
ASSI~ 1¥X!EP1'El>-DATA 10 SR).
AaEPl' NtJeERl., 8I'RItI;l S'JlUm, SUB tut( 2) •

4 - 8

~ing

that the data itaDa to be ~ are 12 for lUI3ER!, RBfORl'ER
III for S'l'RI!G1, and 7 for SUB, the followi.ng are three valid JDetlx)ds of
entering the data:
.

1.

12
"@REPORl'Dl III@-

7
JH)

2.

12 "@REPORrER III@- 7 END

3.

"12 @REPORl'tR III@ 7 DlD"

If dlOice 1 above is used, the values will be transmitted me at a time.
'1be syntax for the N:J:IP't statement is as follows:

+<------------------ , <------------------_.*+

I
IA

B

D

pi
I

->NXEP!'-> < n a m e > - - - - - - - - - - - - - - - - - - - - - , - > (1)

I
£1

1
cl
+-><internal
->+
attributes>

H
(1)------------->.

I

IG

+-->DISPIAYING <string>->+

4 - 9

+-> <editing
->+
attributes>

The paths of this syntax diagram are explained belON:

A

'!be

<name> which you give here defines an accepted data nane.
<name> must be unique: that is, it cannot be a name defined
as a vocabulary name or a derived data llalni!. Once defined, the
<name> can be used as a <data name> where appropriate in the
re~ specifications.

The

A value is assigned to this <name> fran 5C.IOO extenlal device at
the beginning of the generated report program run. '!be value of
the data item remains constant througrout the run. The value is
read off the external device by a free-fom scanner and
oorrectly aligned to the internal size of .the data item. The
value must correspond to the type of the accepted data i tern.
String values having no ent>edded blanks are accepted with or
without surrounding quotes. Numeric item values are specified
as <nunt>er>s ani may contain decimal points.
Boolean item
values are accepted as a 0 or 1 digit.
Example:
ACCEPT WDE-ID.
CDDE-ID references an accepted data item.
In this case, 00
<internal attributes> were given; thus OODE-ID references a
signed-numeric item with size EqUal to the IN"l"mER-SIZE and
FRACl'IOO-SIZE.
B

Take this path to specify default internal attributes.
default internal attributes are the following:

".the

1.

The type is signed nl..l1D3ric.

2.

INTEGER-SIZE and FRACTION-SIZE are used for the size
of the numeric item. ".the default for INTEGER-SIZE is
12 digits. The default for FRACl'ION-SIZE is 5 places
after the decimal :fX)int. Refer to Pr~ss-option SET
statement or Internal Attributes if values other than
the default values are desired.

4 - 10

C

Take

this path to specify

intemal

attributes.

'!be intemal

attributes can specify type as well as size.
Exanple:
ACCEPl' CDDE-10 NUM( 7) •

Internal attributes are used to specify that
unsigned numeric with seven integer digits.

(DOE-IO

is an

D

Take this path to specify default editing.
You nust take this
path if the accepted data item is not to be printed. A default
editing picture is derived fran the internal attribute of the
item.
Specificatioo of default editing is illustrated by the
exanple for path c.

E

Take this path to specify an editing picture, other than the
default, to be used when the data item is to be printed.
Exanple:
ACCEPr <DOE-IO NUM(S)

wrm

PIC "99=999 11 •

CDDE-ID is printed under the <DOOL editing picture "99=999".

F

Take this path as many times as necessary to specify all
accepted data items. The items specified are accepted as a set
at the start of the generated report program I'Wl. The order and
number of data values read in must correspond to the order and
n\ll'1i:)er of items specified in the ACCEPl' statement. A free-foon
scanner is used to scan out the values and place the values
correctly aligned into the data item based at its internal
attributes.
After the specified
report (or reports) is
produced, another set of data values is read in and assigned to
the accepted data items, am another report is produced.
This
continues until· Erxi-of-File or II END" is recognized on the
external device.
An error exists if Erxi-of-File or IIEND II is
recognized in the middle of a group of accepted data values.
Exanple:
ACCEPr IAST-~ STRIOO(20),SOC-SEC-NR NUM(9)
WrIH PIC 11999=99=9999".

4 - 11

values are accepted before each report is produced.
IAST-NAME is a 2D-character-lo1'¥3 string, While ~-Sm:-NR is a
9-digit n\Jllt)er.
A <string> and a <n\.lll'ber> are read off the
external. device for each report until an am or EDF halts the
report process.
'!be follONing is accepted data for this
exanple:

'lWo

1.

For cne set of data:
3420091099

2.

Using quotes:
"LINN-HIPSHER"

3.

953992101

For mu1 tiple data sets across nultip1e
use of the am option:

"LINN-HIPSHER"

342009199

1st set

953992101

2nd set

NE\".MANS-cARDlGAN

records

wi th

3rdset

210007615
END
G

This path allONS up to 55 characters of infonnation to be
displayed 00 the operator display tenninal (oor or SPO). The
string must be entirely oontaineci en ale line.
Exanple:
AOCEPl' CDDE-ID NUM(5) DIS~
"ENl'ER ~ DIGIT OOIE. ~ FINISHED, ENl'ER

am".

If this path is not taken, the default of ttmrm IlM'A" will be
displayed. The DISPIAYIN:; option is igrx>red if
ASSIGN ACCEPl'ED-DM'A is set to anything other than OM or SPO.

H

Take this path after you have specified all accepted data items.

4 - 12

'lbe Acce8s Clause specifies randan acceea to a ayataD file via a key, or
sequential acceas to a ayllteID file beginning at the kay value Wdch

satisfies a given criterian.
The syntax for the Acce88 Clause is as follows:

C

A

----------------->AT

I

I -

1D
I
<record-key ->+ +->S'l'ARl'IlG->+
name>

8
+->~

E

L

F

I I
1 1M

'

I

I

+->ICB!'->+ +->IS->+

-><atring>

(1)

G

=- ->+

>

1
->1 1-> <int.eger>-> I
1 I
1

->!DJAL
->

-> (1)

+->'10->+

I

IN

I

1 +-><data name>->+

I

H

1
>+

->GREATER

1
I +->'lHAN->+

I

-> >

>1

I
1

J

1->R:7.l' I.&SS-> 1

,-- 1
1K

-

I

+->H71' < ->+
The paths of this syntax diagram are explained below:

!!!:!!.

Explanatim

A

'!bis
path nust be taken for ORWa7ATIW
RElATIVE
aid
ORWaZATIc. S!XlJ!Bl'IAL system files. For O1GANIZA'l'I<B INIEX!D
&ystan files, t.aki.ng this path inplicitly declares access via
the prime record key.

4 - 13

Exanple:
INPl1l' IIlXPERSCHmL AT KE.Y "17881120".

is a file that has OlGANIZATICB INDEXED.
The
single personnel record with prime RB:X>RD ~ value equal to
17881120 is returned.
IDXPERSCENEL

Exanple:
INPl1l' ACCl'-FILE AT KE.Y EQUAL TRANS-ACCT-l'D.

'!he record in the sequential file ACCT-FILE with actual key
equal to the value of an accepted TRANS-ACCl'-tI> is accessed.
B

This path is taken ally for OlGANIZATICB I~ system files to
specify access via an ALTERNATE REIX>RD KE,Y, or to declare
explici tly access via the prime RECDRD KP.Y.
Arr:i qualifiers
given to the <record-key name> are igrx>red.
'!he data item
referenced by <record-key name> nust be declared as a primary
REXDRD KP.Y, or as an ALTERNATE REXDRD KE.Y.
Exanple:
INPl1l' IDXPERSONNEL VIA JOB-TITLE AT
KEY'
'IE2'13INEER II •

=

'!he first record in the OlGANIZATIal nmEXED file IIlXPERSONNEL
wi th ALTERNATE RECDRD KP.Y JOB-TITIE equal to !N;INEER is
accessed.

To access all reoords with the
path D am a SELEX!!' statement.

C

same key, use

Take this path to access randanly a specific record.
duplicates are returned when yoo access an OlGANIZATI~
INDEXED file via an ALTERNATE Rm:>RD KE.Y with duplicates. QU.y
the first record satisfying the key value is accessed.

No

Exanple:
INPln' ACX:T-TRANS AT "50000000".

first record with account
accessed.

'!be

m.mber

4 - 14

equal to 50,000,000

is

D

Take this path if records are to be accessed sequentially
starting at a key value ~Ch satisfies a certain condition.
For
OIGANI7ATlOO
SFXlUENl'IAL
system files, unused record
positioos are accessed lmtil an DID OF FILE or INVALID KE,Y
condition occurs.
Exanple:
INR11'

~-FILE STARl'~

AT KE,Y GRFATER

TRAN8-~-NO.

All records including unused ooes in the system file ACCl'-FILE
with keys greater than the value of TRAN8-ACX:T-R> are accessed.
Exanple: ('ISHIPV" )
INPt1l' Hrl'-TRANS S'I'ARI'DG AT IQ.Y
NOl' < 1150000000 11 •
'!he

above

transaction
50,000,000.

statement results in
reoords with a key

the inpJt of all aexx>unt
greater than or equal to

Exanple:
INPUl' IDXPER&JmEL VIA JOB-TITLE STARrING AT
KEY'
IIElGINEERII •
SE:LEX:T JOB-TITLE
IIEN:;INEERII •
REPORl' • • •

=

=

In this exanple, all recx>rds fran the OKiANIZATICti INDEXED file
IDXPERS:Hm:, starting with JOB-TI'l'IE equal to mGINEmt are
input.
Fran the ·records input, the SELECr statement selects
only those records with JOB-TITlE equal to !H;INEER.
This
method allOrlS all the records having ALTERNATE KE.Y JOB-TITLE
WI'lH WPLICATES to be made available for reporting.
E-G

Taking any of these paths specifies an "equal toll cx:niitioo.

H-1

These paths can be taken ooly if STARI'IN; has been specified
previously.
Taking either of these paths specifies that all
records with a key value greater than the specified key value
are to be input sequentially.

4 - 15

J-K

L

These paths
previously.
records with
key value are

can be taken ally if STARTIN:; has been specified
Taking either of these paths specifies that all
a key value greater than or equal to the specified
to be input sequentially.

This path is taken ally for OlGANI1ATlOO INDEXED system files to
specify a string key value.
Exarrple:
INPl1l' PERS-FILE AT KE..Y "SMrlH, JOHN".

M

'Ibis path is taken only for ORJANIZATICN
specify an lUlSigned integer key value.

RELATIVE

files

to

Take this path to reference a data item which is to sug:>ly the
key value.
'!be data item nust be an accepted data item or an
irplt item contained within a previously inplt data structure at
the same inplt level.
For an OlGANIZATlCE INDEXED file, the
data item nust be a string-type item.
For an OIGANIZATICB
REIATIVE
or OlGANIZATIW Sf.XlUENl'IAL file, it J1IlSt be a
numeric-type item.
Exanple:
Aa:EPl' H'lDYEE-NUM NUM( 7) •

This INPl1l' statement specifies that the enployee record with key
equal to accept.ed EMPImEE-NUM is to be input.
Exanple:
INPl1l' PERS-FIIE, ADDR-INFO AT I<!.Y

!DUAL

ro~.

references
an item of PERS-FIIE.
AODR-INPO is an
INDEXED file with the prime R!XDRD K!.Y equal to
ADDR-NAME.
'!be file ADDR-INFO ccntains informatial for OCIIpUly
EIlployees as well as custaners.
The above statanent specifies
the following: for each PEAS-FILE record, the data fourxi in NAME
will be used to access ADDR-INEU, and a recx>m oontain:i.BJ
mailing ad:iress infonnatian for the enployee is input..
NAME

OlGANIZATI~

4 - 16

AGE FUNCI'ICN

The AGE Function is a nonstatistical function used to calculate the time
interval (age) between t\\lO dates. '!he AGE Function enables aging to be
done (enables the time interval to be determined) in tenns of~,
WEEKS I M:l.'1IHS, OOARrERS, and YEARS. '!he time interval is defined as the
nUIId:>er of ooundaries crossed between the t\«) dates. The age is returned
as an 8-digit I signed integer i tern ( 59 (8) ).
Example:
AGE (FROM DATE-u\sT-PAYMT

rro

WE-DATE)

are 'bNO data items in the nondelimitEd
If the year fonnat is not specified, a 2-digit year is
The AGE Function returns the n\.ld>er of days between the bJo

DATE-IAST-PAYMI'
l+IDDYY fonnat.

assumed.
dates.

and DUE-DATE

The syntax for the AGE Function is as follows:
A

->AGE

I

G

------------>FRG1~----

I
I

B

+-> IN-->DAYS--->

I
I

H

----><data

I
I

->(1)

name>

+--><date
->+
fonnat>

C

I-->WEEKS-->

I
In
1->M:l.'1IHS-->

I
IE
1->ooARrERS->

I
IF
+-->YEARS--->+
J

L

N

(l)->'ID---------------------><data name>----> ) - >
-I
I
I I
I I
I
I f.'l
I I0
I I
I +--><date fonnat->+ +--><string>->+ I

I
I

I
I

K

+---------------->DATE------>+

4 - 17

peN 1177185-002

The paths of this syntax diagram are explained below:
Path

Explanation

A

Take this path to specify irrplicitly that aging be done in tenns
of days. The example presented above illustrates default aging
in tenns of days.

B

Take this path to specify explicitly that aging be done in tenns
of days. The results obtained are identical to those obtained
in path A above.
Exanple: ("CLIENT")
AGE (IN DAYS FROM mTE-LAST-PAYMT 'IO OOE-DATE)

obtain the decimal part of the year which the time interval
represents, the AGE function in the above example can be used in
the following Extension statement:

'lb

YR IS AGE (IN DAYS FROM DATE-IAST-PAYMT
'IO DUE-DATE) /365.

C

Take this path to specify that aging be done in tenns of weeks.
'!he difference between dates is calculated in tenus of 7-day
intervals.
Example: ("CLIENT")
AGE(IN WEEKS FRa.1 OM'E-IAST-PAYMT 'IO !XJE-DATE)

D

Take this path to specify that aging be done in tenus of months.
The value returned indicates the difference in month boundaries
between dates (for example, 12/28/82 to 1/02/83 has one IOOnth
boundary crossed).
Exarcple:
AGE(IN ~ FROM DATE-lAST-PAYMr 'ro DUE-DATE)

peN 1177185-002

4 - 18

E

Take this path to specify that aging
quarters.
The value returnErl indicates
boundaries between dates.

be done

in tenus of
the n\lrCber of quarter

Example: ("CLIENI'")
AGE (IN QUARrERS FRG1 mTE-LAST-pAYMr 'ID IlJE-DATE)

F

Take this path to specify that aging be done in tenns of years.
The value returned indicates the difference in year boundaries
between dates. For example, 12/28/82 to 1/02/83 has one year
boundary crossed.
Example ("CLIENT")
AGE IN YEARS FROM mTE-IAS'r-PAYMT TO WE-DATE)

For a sample of lXJW the decimal part of a year which a time
interval represents can be detennined, refer to the infonnation
follCMing the example for path B.
G

Take this path to specify irrplicitly that the FROM date (the
earlier date) is ccx:1Erl in the default nondelirniterl MMDDYY
fonnat. All the ex~les above illustrate this default option.

H

Take this path to specify explicitly the fonnat of the earlier
date.
The fonnat types available are f.f.1DDYY, M-IDDYYYY, YYDDD,
YYYYDDD, YYMIDD, YYYYltwtIDD, DIMo1YY, DIMv1YYYY, and DDDID.
Example:
AGE(FROM YYDDD INVOICE-DATE ID CURRENT-DATE)

In

this case, INVOICE-pATE is stored in the YYDDD fonnat, while
is stored in the l+IDDYY fonnat.
The function
calculates the age in terms of days.

CURRENT-DAm

I

Take this path to specify the earlier of the two dates. If this
date is not the earlier, the result of the AGE Function is
negative. rrbe <data name> must reference an item or group which
represents a date in a valid fonnat.
(Refer to DATE FORMAT in
this section for a full explanation of valid fonnats.) In the
example for path H, INVOICE-DATE is the name of the earlier of
the two dates.

4 - 19

peN

1177185-002

Take this path to specify a <date name> or <string> as the later
date.

J

Example:
AGE(~

OID-mTE

rro

NE,W-nt\.TE)

Both ow-mTE ani ~-mTE are data items coded in nondelirnited
DIM-1YY fonnat. The age is calculated in tenns of days.
K

Take this path to specify that the earlier date be aged to the
current date as naintained by the system.
Exanple:
AGE(~

INVOICE-rATE 'IO nt\.TE)

L

Take this path if the later date is cxx1ai in the default forma.t
of nondelimited DIl+lYY. The exanple for path J illustrates this
option.

M

Take this path to specify a pll"ticular £onnat for the later
date.
The fonnats available are D~, DIl-f.1YYYY, YYDDD,
YYYYDDD, YYMVlDD, YYYmlDD, D~, DDl+1YYYY, and DDDDD.
Example:
AGE(FRCM OLD-mTE 'IO YYYYDDD NEW-rATE)
In this case, OLD-mTE is coded in the D~ fonnat, while
NE,W-mTE is codErl in the YYYYDDD fonnat. Note that NEW-OM'E has
a 4-digit year. The function calculates the age in tenns of
days.

N

Take this path to specify a <data name> which represents the
later date. This <data name> must reference an item or group
which represents a date in valid fonnat. (Refer to DATE FORMAT
in this section for a full explanation of valid date formats.)
In the exanple for path M, NEW-nt\.TE is the name of the later of
the two dates.

o

Take this path to specify the later date as a string oonstant.
The <string> is interpreted as a date acoording to the fonnat
specified by paths L or M.

peN 1177185-002

4 -

20

ASSIGN LIS'l'DG statement. foxcee the autaaatic:ally formatted ar
user-fomatted report. listing prcduced by the generated report program
to a partiallar hardware device.

'!he

Exanple:
ASSIGN REPORl' LlS'l'DG 'ro PRIN1'ER BACl<lJP.
'!'he syntax far the ASSICB LIS'l'DD statement. is as fallcwal

A

->ASSIGNI----·---->LIS'l'IlC------> (1)

I
1->
I

I
I
1->RER>Rl'-> I
I
I
I c
I
I

B

+->i'0m6
D
(1)->lWl<UP

>.

I

I

IE
1->PRIRl'ER

I
I
I
I
IH

F

1
>1

I

IG

+->BAQ(UP->+
I

+->~

I

IJ

I
I
I
I
I

>+

1
I->BAQ(UP-> I

I
I

I
IK

I
-> I
I

+-> - ->+

>+

-

'It)

+-><ELY->+

-

4 - 21

'l\le paths of this syntax diagram are explained below:

E.!!:h

Explanation

A

Take this path to farce the autanatically fonnatted report to a
particular hardware device.

B

'Ibis path is identical in meaning to path A.

C

Take
this path to force the user-formatted report to a
particular hardware device. This path applies cnly to reports
specified with the PRINl' statement.
Exanple:
ASSIGN FORM LIST:[Y;

ro

BAC<UP ~

D

Take this path to force the specified listing to a backup
device.
This device is dependent 00 the processing node of the
generated report. program.
(Refer to the Process-q>tion SEl'
statement in this sectioo.) If the m:xie is BATCH, BACKUP means
PRINl'ER BACKUP and the hardware device is disk or tape (a
function of the system software).
If the ncde is OO-LINE,
BACKUP means 'l'ER-fINAL BAa<IJP, and the listing is created as a
disk file which is ~ssible through On-Line REPORl'ER III.

E

Take this
backup.

F

Take this path to specify that the listing be sent to the
printer.
This is the default assignment
far the BATCH
processing nr:xie. 'ftlis cption ally allows the listing to be sent
to the printer.
Whether the listing actually ~s to the
printer ar printer backup is a functioo of the system software.

path

to assign

the listing

Exanple:
ASSIGN REroRl' LIST:[Y; ro PRINl'ER.

4 - 22

to printer or printer

G

Take this path to specify
backup.

that the listing

be sent to printer

Example:
ASSIGN REroRr LISTING = PRINTER BACKUP.

path

to assign

the

report

listing

to a tenninal

H

Take this
device.

I

Take this path to specify that the listing be sent to the
tenninal. This path should only be taken if the processing I"CX:rle
is ON-LINE.
Example:
ASSIGN LISTING 'IO TERM.

The report listing is sent to the tenninal via On-Line REroRrER
III.
J

Take this path to assign the listing to terminal backup. Ebr
the ON-LINE roode, this is the default destination of listing.
If accepted data is used in the rep:>rt-generation process, cnly
one set of accepted data values is processed and only one report
(or one set of reports, in the case of a multiple-report
specification) is prcx1.uced.
Example:
ASSIGN FORMS LISTIID

K

= TERM

BACKUP.

Take this path when the processing roode is ON-LINE to assign the
listing to tenninal. only. Consequently, it is not p:>ssible to
get a printer listing of the report.
It is suggested that
TERMINAL CNLY be used for small rep:>rts only.
This p:ltb is
illegal if processing roode is BATCH.
Example:
ASSIGN REPORl' LISTING 'ID

~INAL

GlLY.

This report listing is sent to the tenninal via On-Line REPORI'ER
III.

4 - 23

peN 1177185-002

BASE-DATE OPl'ION
The SEl' BASE-DA'lE process option allows you to set the base date to a
Julian date other than the default. The default BASE-DATE is January 1,
1900.
In sane canpanies, most notably financial institutions, dates used for
opening accounts, closing accounts, and other account transactions are
in the fonnat DDDDD. The value DDDDD represents the n\.lIli)er of days fran
a fixed date in the century, called the BASE-DATE.
For

exarrple, suppose a savings account was opened on January 1, 1900,
closed on January 2, 1900.
The DDDDD open date \VOUld be 0, the
DDDDD close date would be 1. 'Ib cx:mpute the interest, the open date is
subtracted from the close date and multiplied times the daily interest.

am

If a savings account was opened September 14, 1983, then the DDDDD would
30571.
This number is 365 times 83 (the number of years fran the
BASE-DATE) plus 20 (the number of days added for leap years) plus 257
(number of the day) minus 1 (the offset for the BASE-DATE being January

be

1) •

If your canpany uses a BASE-DATE other than January 1, 1900 in its
calculaticn of dates, then this optioo allows you to set a BASE-DATE
other than the default.
other popular BASE-DATEs are January 1, 1957
(specified as 195700l), and January 1, 1930 (specified as 1930001).
The BASE-DATE is used in conjunction with the DATE-<DNVERr FUNCTION
using DDDDD-DATE as an output and/or DDDDD as the date fonnat of the
input.
The BASE-DATE is also used in the AGE function when DDDDD is
specified as the FRCM data-name and/or the TO data-name.
To avoid entering the BASE-DATE option for every report specification
which uses the DDDDD fonnat, it is recomnended that this opticn be
stored in the vocabuary with the REPLACE statement and the name given in
the REPIACE statement be used when the option is desired.

peN 1177185-002

4 - 24

The syntax for the BASE-DATE option is as follows:
A
-

BASE-DATE

------+-

I
+- TO

I
+-

-<integer>------->

I

I
-+
I

= --+

The paths of this syntax diagram are explained belaN:
Path
A

Explanation
Take this path to specify that date which is to be used as the
BASE-DATE.
The date fonnat is YYYYDDD or YYDDD, where YYYY
represents a 4-digit year, YY represents a 2-digit year, arx1 DOD
represents a 3-digit day of the year.
REroRI'ER III will

accept either year fonnat (YYYY or YY) and
autanatically detects the fonnat being used. The actual fonnat
used by REPORl'ER III is YYYYDDD.
If the fonnat used for the
BASE-DATE is YYDDD, REPORI'ER III will autanatically add. the
current century to the date.

A valid DDD field must be fran 1 to 365 for non-leap years
to 366 for leap years.

am

1

Exanples:
SET BASE-DATE

rro

52001.

The BASE-DATE has been changed to January 1, 1952.
Sm' BASE-DATE 'ID 1880001

The BASE-DATE has been changed to January 1, 1880.

4 - 25

peN 1177185-002

BUILD INTERNAL ATI'RIBUI'ES CLAUSE

The BUILD Internal Attributes clause declares the type and size of the
data name that is output fran the BUILD statement.

The syntax for the BUILD Internal Attributes clause is as follOlNs:

B

A

-+--

srRING

1

1

1

I
I

1C

+--- «integer» ->+

1
1

1

lD

I

E

+--- NUMERIC
I
1
1

--+--------------------------------------------->1
I
I
IF
G
+-- ( <integer>

H

-+----------------+-

1

I

I

I

I
I

1

+--- , <integer> ->+

I

1J

+---

----------------->I

--+-------------~-

I

-> I
1

I

1

1

BCX)LFAN

-----------------------------------> I

The paths of this syntax diagram are explained belOlN:
~lanatian

Path
A

This path is taken to specify a string-type output for the BUILD

name.
B

Take this path if the default string length is going to be used
for the BUIlD output name being specified.
The default length
is Sl'RING-SlZE.
sr~-SIZE can be set by the Process-option
SEl' statement.
If the Sl'RING-SlZE is not set, the system
default is used. Refer to Appendix B for nore infonnation about
system defaults.

peN 1177185-002

4 -

26

C

This path is taken to specify a ncn-default length for the
string-type outplt for the BUILD name. The integer specifies
the length of the BUIID name in n\lIti:)er of characters.
If

the integer

value is larger

than the value of S'l'RIHl-SlZE,

truncation will result.
Exanple: ("SHIPVIt )
BUIID

BILL-NtHmR-PREFIX S'l'IWG (2),
BIlL-NUMBER-<ELY NOM ( 6) FID1

NUMBER-oF-BILL.

In this example, the BUIID name of BIIL-lI»IiER-PREFIX is a
two-character string whidl represents the first two character
positions of NlHER-oF-BIIL.

D

This

path is taken to specify a BUILD nana of unsigned

n..meric

type.
E

Take this path if the default size for a numeric BUILD name is
used.
The path specifies an unsigned runeric BUILD nane. The
default size is determined by INImER-SlZE and FRAC'1'I~-SIZE,
which can both be set by the Process-cption SET statement.
Refer to ~x B for infonnatioo about the system defaults.

F

This

path

is taken

to specify

the size of the runeric

BUIID

name.
G

'!be integer specified by taking this path indicates· the ruJrlt)er
of digits in the integer part of the m:aneric BUIID name.

Exanple: ( .. SHIPV" )
BUILD

SKIP 2,
BILL-NtImER-<ELY tDt (6)
FR:M
NUMBER-oF-BIIL.

In this exanple, the BUIID name of BILL-NlJtJBER-<ELY is a
six-character integer. After skipping bIO character positions
of WMBER-oF-BIIL, BIUt-WMBER-<ELY refers to the next six
character pasitions.

4 -

27

H

This . path is taken to specify an integer-only
name. Path G provides an example.

nl..lI'reric

BUILD

I

This path specifies a fractionrll part fo . . . the BUILD narre being
defined.
The integer specifies the size of the fracticn in
nurrber of digits. The decimal point is implied and occupies no
Character positions.
Example:
INCHES IS CENTIMETERS

*

0.3937 NUM (6,4).

BUILD
INCEES-Wrrn-LESS-PRECISION
SKIP 2
F'R:M

NtJM (6,2),

INoms.
In this exan;>le, the BUIlD I'laIl'e INQiES-WITH-LESS-PRECISION is a
real number with six pos~t~ons before the decimal and two
positions after. The decimal point is implied and occupies no
position.
J

This path is taken to specify a Bcolean-type BUILD name.
Boolean items are represented internally as numeric 1 or 0 and
printed as TRUE or FALSE, respectively. A Bcolean item occupies
one Character position.
The following list Shows the results that correspond to the
character posi ticn referenced by a BUILD naIre Bcx:>lean i tern.
'IYPE
IDJLEAN

NUMERIC

VALUE

RESULT

0
1

FALSE
TRlJE

0
1

FAlEE
TRUE
FALSE

2 throogh 9

Cauticn should be exercised When using the Boolean-type BUILD
name to reference a string character position, because hardware
and software Changes ODuld cause unpredictable results.

4 -

28

'l'be fallowiDg bexadec::i-1 valuea for string cbaracter pcaiticna
IIbculd cauM a reault of 'l'lIB'
otben IIbculd cause a result
of rALSB.

au

~

VAUB

GMPHIC JQJIVI1Dl1'
(U.S. aaJtICJD SI:l')

01

lIB (1)

11

DCl (1)

21
31

41

51

61

I

81

a

91
Al
Bl

cmt. aiF (caly in . . . cbaracter aeta)

71

Cl
Dl
Bl
Pl

j

A
J

1

(1) ref...
bDl.

character

4 -

29

in IBDIC

BUILD srATEMaa'
The BUIID stateIOOnt is used to create
items in the following ways:
1.
2.
3.

new items or redefine

existing

Concatenating data names.
Isolating portions of data names.
Converting the types of data names.

For a single report, only one BUILD statement is allowed.
reports, cne BUILD statement per section is allO'Ned.

For JIllltiple

The da·ta name used as input to a BUILD statement may be a vocabulary
item, a derived. item, or an accepted item.
In the case of multiple
reports, the inplt data name may be a nane fran a BUIlD statement in the
Input Section.
Refer to the explanation of Path I (in the syntax
diagram that follows) for nore infonnatioo about the allowable input
data names.
Canputational, Bcolean, or A Series binary data names are oonverted
character form when new names are created with the BUIlD statement.

to

CAIJrION

For

A Series

users, the value of the ootput data
is unpredictable if the character position or
posi tions of an input data name are referred to as
nl.Dlleric and oontain the hexadecimal value of A
through F.
name

following exanples sl'oN hc::JvI the BUILD statement and the SKIP clause
are used to create new items. The syntax diagram and path pratpts for
the BUIID statement follow the exanples.

The

The first exanple
ale new i tern.

s~

hotI three existing items can be joined to create

Exanple: (USHIpvU)

BUILD
CAL-DATE-oF-BIILmi NUM (6)
FR::M
4 - 30

KNrH-OF-BIILnG,
D.\.Y-oF-BILLnG ,
YFAR-oF-BILLnG •

In this exanple, the new item CAL-1Wl'B-<»'-BT11 .1liG was created by joining
the
vocabul.aJ:y
itaIB HBl'H-OP-BI1l,Tm,
Da\Y-oF-BU1,YW,
and
YFAR-QF-BIT1JbG.
'!he original data DIUIII8 uaed to b.lild the rat itaa
cannot be used with the Dat.e-O:xlVert. funct.icm CZ' the ItGB functicn Wll8U
a CDlplicated extenaial is created. 1bIIavar, the rar itaa can IDf be
used in these functiCXlS.

next exanple shews haw to U88 the SKIP c1auae to a1dp a apacified
runber of characters in an itaD baing built.

The

ExaDple: ("SHIP.V" )
BUIID

SKIP 2,
BIIL-NUMBER-<BLY tIM (6)

FKM
NUMBER-QF-BIIL.

In this exanple, BIIL-tU&:R-Q1LY uaes auy the laIIt. six pcaiticns of
The first 2 pcei.~ of IIHER-CI'-BIIL hava baea

NtHmR-oF-BILL.

skiR?ed.
The third exanp1e CXI1'bines the first cud II8CXDi exanpl_.

ExaDple: ( "SHIP/" )
BUILD
CAIrDP4'E-aF-BIlLING NlIt (6),

SKIP 2,
BILL-NUMBER-<BLY tUt (6)

F1D1
K:NrH-oF-BIlLING,
DA.Y-QF-BILLnG,
YFAR-oF-BILLnG ,
NUMBER-QF-BILL.

4 - 31

The following diagram represents
cart>ined in the third exanple:

the character

layoot of the items

2 POSITIONS SKIPPED

I
I
I
Cl1l'PUl' -

BII.Z.t-RJMBER-cH,Y

I

+-----------~----+------------+

I

1

t

tit

I

I

+ I I I ...
9 10 11 12 13 141-- ~
I

I 1 2 3 4 5 6 7 8
+ I
I +

t

mm-I

..

I

...

I

lOSITlCE

+---~--~---,~---------------------~+
I
1
I
I
-i
NUMBER-aF-BILL
I
I
1
I
I
n'AR-oF-BILLIH:i
I
I

I
I
I

I

KBl'H-oF-BILLIH:i

'l'he following exanple shows hew truncating is dene to represent a n.uniler
as an integer only.

Exal!ple:
INaES IS QNl'IME'IERS 11 0.3937

NUM (6,4).

BUII.D
INaES--cH,Y WM(6)
~

INQfES.

In this exanple, INaES occupies six positialS before the decimal point
and four positialS after. Decimal points are inplied and occupy IX)
character
poaitialS.
INQfES--cH,Y
cnl.y refers to the first six
poaitials, so RP3REP autatatically fills the unused space with an
inplied skip of 4.

4 -- 32

The following represents the character layalt for the preceding exanple:
SKIP 4 (iJlplied)

I
+
1

I

I

I

I

1

1

l-

I 1 2 3 4 5 6 7 8 9 101-- CHARACr.ER
.......-+-......-+--+---+--t~t-o-+--o+t--++

~TIW

1
+--,------+1-------------+

I
INaIFS
INaIFS has an iDplied decimal point

~

dlaracter poaitialS 6 and 7.

'lhe syntax for the BUIlD statement is as follows:

+<- ,

I
I

->B.JIID

---·--------------(1)
c

A

I 1

<name> -+-1- - - - - - - - - - - - - + - ( 2 )

I
I
I
I
Is
+- SKIP -

I
ID
+-- <BUIID internal attributes> -+

<integer> - ....+-----.--,1......---(3)

I

I

+- PCSITICIIS --+
(1)<-------------++

GI

IH

E
(2) I

I
I

p
+-- <edit.ing attributes>

I 1 I -

+<----- ,

I

I
JI
I I
I K
FR»1 -+--- <data name> -+->.

I I
I I
-+ I
I
1

( 3 ) - - - - - - - - - - - - - - t '..

'!'he paths of this syntax diagram follow.

4 - 33

Path
A

Explanatioo
The

name assigned

a BUIID output data nane.

here defines

The

name must be unique: that is, it carmot be a name defined as a
vocabulary narre or a derived data narce. Once defined, a BUILD
output data name can be used in the report specifications in the
sane manner as any other data item.
B

This path is taken
character positions.

in order

to skip

a specified

nuniber

of

Exanple: ("SHIPV")
BUIlD
SKIP ~ POSITIONS,
BILL-NUMBER...ooLY NUM (6)
FlO1

NUMBER-oF-BILL.
In this example, the first two positions of NUMBER-QF-BIlL are
bypassed.

C

Take this path
attributes:

to

specify

the

following

default

internal

A default type of unsigned numeric.
A default item size of INrF.X:;ER-SIZE or FRACrION-SIZE.
Alternatively, the item size can be set with· the
Process-option SET statement.
D

This path is taken to specify the BUILD Internal Attributes for
the type and size of items.
Refer to the explanatioo of the
BUILD Internal Attributes clause in this section for nore
infornation.
Example: ("smpv")
BUILD
SKIP 2,
BILL-NUMBER.....(E.,Y NUM (6)
FJO.1

NUMBER-oF-BIIL.
In this example, BUILD Internal Attributes are used to ~ify
that BILIrNUMBER-oNLY is a numeric i tern containing six integer
positions.

4 -

34

E

Take this path to specify default editing. A default editing
picture is derived from the <BUILD internal attributes>
specified for the item. The example for path D illustrates the
specification of default editing.
For that example, the
default editing picture is Z(5)9.

F

This path is taken to specify an editing picture other than the
default, which is used when the data item is printed.
Example:

( "SHIPV" )

BUILD
SKIP 2,
BILL-NUMBER-c:NLY NUM (6 ) WITH PIC "9 (6 ) "
FRCM

NUMBER-oF-BILL.
BILL-NUMBER-aNLY will be printed with the COBOL editing picture
"9(6)".
G

Take this path as many times as necessary to specify all of the
BUILD output names and skips.

H

This path should be taken after you have specified all of
BUILD output names and skips.

I

This path is taken to specify the data name that will be input
to the BUILD statement. The data name must be known to RP3REP
prior to being used in the BUILD statement.

the

Depending on what kind of item you are specifying, the item
must have already been included in the report specifications
according to the following guidelines:
A vocabulary item must have been specified through an
INPUr statement.
An accepted item must have
ACCEPT statement.

been specified

in the

For a derived item, the extension which derives the
name must be specified prior to the BUILD statement
which uses it.
If the data name is a vocabulary item, it cannot be a group
item.
The number of character positions used by a vocabulary
item is given in the Vocabulary Dictionary listing under the
column heading STORAGE LENGTH.

4 - 35

Each data name for an accepted data item or derived data item
(extension) must be unique and can be used only once as input
in each BUILD statement. If it is necessary to use the same
data name more than once, an extension can be used to duplicate
the data name. The name of the extension can then be used in
the BUILD statement.
The extension must be defined prior to
the BUILD statement.
The number of character positions used by an accepted or
derived item is the value given in the <internal attributes>
clause for that item.
If an <internal attribute> was not
specified, then the number of character positions is determined
as follows:
For a string item, the current setting of STRING-SIZE
is used.
For a numeric item, the sum of the current settings
of INTEGER-SIZE and FRACTION-SIZE is used.
Boolean items have a fixed size of one character.
If a vocabulary, accepted, or derived item is a signed numeric
item, only the absolute value will be used. For example,
-52.34 is treated as 52.34.
Certain restrictions in using the BUILD statement apply to
derived data names which are statistical functions. For a
single report, this type of data name cannot be used in the
BUILD statement. For multiple reports, this type of data name
cannot be used in the BUILD statement in the following
situations:
In the same Input Section in which the data name was
created.
In the same Report Section in which the data name was
created.
However, derived data names which are statistical
created in the Input Section can be used in the BUILD
of a Report Section if the derived data naue
reassigned to a new data name in the Report Section.
the following example:
Example:

functions
statement
has been
Consider

("SHIPV")

FOR INPur:
INPur Accr-TRANS.
AVG-AM:XJNr-c:wED IS
AVG (AM:XJNr-c:wED) NUM (6, 2) •

1177185-003

4 - 36

% A STATISTICAL FUNCI'ICN
% IN THE

INPur SECTICN

FOR REPORl' I:

REP-I-AVG-At«XNr-am> IS
AVG-AlOJNT-am>.

% THE INPt.1r ~Cti STATISTIC'AL
% DATA NAME IS REASSIGNED 'ro A
% NE.W NAME IN THE REPORl' ~CE

BUILD
'lHDSANllrAVG-<:MED NtI-1 (3),
IIlNDREnS-AVG-CMID
J:D1 (3),
CENl'S-AVG-<I£D
tD1 (2)
FR:I-1
REP-I-AVG-At«XNr-<MED.

% 'IHE NEW NAME IS t5ED AS
% A BUIlD INPt.1r DATA NAME

J

Take this path as many times as necessary to specify all of the
BUIlD input names. The total size of all the data nanes JIIlSt be
equal to or larger than the total size of all the BUIID Qltput
names and skips.

K

This

path should be taken
names have been specified.

after

4 - 37

all of the BUILD

input data

C-B-HFADIm DESC

C-b-heading Desc describes a control-break heading which is printed for
eadl value of the referenced item.
The syntax for C-b-heading Desc is as follCMS:
A

E

--+---><data name>----------------------------------------->

I
I

I
I

B

I---><extensian>->I
1
I

lei
1-> RANGE --->1
I

1

I D

I

+---><c-b name>-->+

1

I

K

IL
I

1<-----------------1

I
I
IG
1-{T7-><report-item ncd>-> I
I
I
I H
I
I

FI

-+--!T7---->ASCENDING---->+
1 1

I

I

J

+-->DESCENDnG->+
The paths of this syntax diagram are explained belc:w:
~lanatian

Path
A

Take this path to specify that a control-break heading be
printed for each value of <data name>. The appearance of <data
~>
in this clause identifies it as a control-break name, and
infonnation is grouped based on this item. The <data name> must
reference a nonstatistical data item. Control breaks for the
report
must not have been defined previously in another
statenent.
Example:

( II INVmr Il )

REPORl' BY DEPARIMENl' LISTING PARI'-N), QUANTITY'.

DEPARIMEN1' is a data item defined to be a control-break item.
The value is printed in a control-break heading each time the
value changes.
B

Take this path to define an <extensioo> and specify that a
control-break heading be printed for each value of the derived
data item.
The <data l'laJre> defined within the <extension>
4 -

38

beccmes a control-break name, arxl infoonat.i.al is grouped based
on this item.
The derived data item nust be nonstatistical.
Centrol breaks for the report ItUSt not have been defined
previoosly in another statement.

ExaIIple:

("INVml'II)

REPORl' IW OUANTI'lY-HlH>RmS WHIQI.IS
(JJAtfl'ITY
100 LISTING PARI'-R>, liaT-alST.

7

(JJAtfl'ITY-IIJNDRE[S is defined to be a control-break item. '!'he
value (equal to QUANTITY/1OO) is printed in a control-break
heading eaen time it changes.

C

Take this pith to specify that sunmary infoxmatioo be printed
for each value of a range-break item defined previously by a
RANGE· statement.

ExaIIple:

("a..Imr" )

RANGE Sf
•

~IXJE

FR:M 0 IW 1000.00 'It) 5000.00

REPORl' Sf RANGE AS -BAIANCE WE" LISTnG
CREDIT LIMIT, BALANCB-IlJE.

<lST-l«),

'!he RANGE statement defines a single control-break item which is
referenced by lWGE. '!be following report waU.d be produced:

MLANCE WE:

aJST
1«)

001231
034100
510666

$

0.00 - $ 1000.00
CRmIT
LIMIT

1000

SOO

sao

MLANCE
WE

$
$
$

0.00
20.00
121.00
•
•

4 - 39

BAlANCE IlJE:

$ 1000.00 - $ 2000.00

aJST

D

00

CREDIT
LIMIT

BALANCE
WE

107731
133320
554140

5000
3000
1000

$ 1103.00
$ 1257.23
$ 1802.70

Take this path to specify that a oontrol-break heading be
printed for each value of a previously defined centrol-break
item; <c-b n.arre> must reference this item.
When control-break headings are used in· CDnjunct.ioo wi th the
GRXJP statement, the following restrictions are inposed on the
specification of oontrol-break headings:
1.

The first control-break heading must be for the first
(highest-level) control break declared in the GROUP
statercent.

2.

The last oontrol-break heading need not be for the
last
(lowest-level)
control break in the GROUP
statenent.
lk)wever, all intermediate control breaks
nust be used as control-break headings in the same
sequence as they appeared in the GRlJP statement.

The follcwing is an exanple of a valid awlicatioo
GRXJP statement and REPORl' statement:

using the

GRlJP BY BRANCli, BY CREDIT-LIMIT, BY ClJST-NJ.
REPORI' BY BRANQi; BY CRl:1>IT-LIMIT
LISTIN3 ClJSTa£R-NAME.

'lhe follOriing is an exanple of an invalid applicatioo using the
GRXJP statement and REPORI' statement.
GRXJP BY BRANQi, BY CREDIT-LIMIT, BY ClJST-K).

REPORI' BY 8RANQi; HY ClJST-NO LIST]N:;
ClJS'l'CJ£R-NAME •

4 - 40

E

Take this path if default oontrol-break ordering and default
printiB3
of
the
control-break
headings
is
desired.
Coltrol-break values are sorted and printed in ascending order
by default. The oontrol-break value is also printed by default
in each heading, and a default identifier is supplied Which is
used on the control-break name. (Refer to discussion of DEFAUIll'
lIE.fi'IFIERS unier OOIDti DESC in Section 4.)

F

Take

this path

to specify explicitly control-break orderiBJ

and/or to specify oondefault printing of control-break headings.
The oondefault printing options are as follows:

G

1.

Clange the default ccntrol-break heading identifier.

2.

Specify literal string prefixes
the control-break item value.

3.

Specify caditiooal oontrol-break value suppression.

and/or suffixes

Take
this path to specify
oondefault
printing
of
exntrol-break heading.
The oondefault cptiCXlS available
listed in the explanatioo of path F.
Exarrple:

for

the

are

( "CLIENI''' )

REPORl' BY INV-aJST-RJ
AS "INVOICE a.JS'la£R RJMBER"
LISTIN:; INVOICE-NUMBER, TC7l'AL-AKXJNI' •

Within the control-break
identified as

heading, the value of INV-aJST-K>

is

INVOICE a.JS'la£R t«JMBER: 001179

and not as
INV QJST 00:

H

001179

Take this path to. specify explicitly the order in Vdch
control-break values are to appear in·the report.
This path
cannot be taken if path C was taken, and a range-break item was
referenced.
The default is to sort and print oontrol-break
values in ascending order.

4 - 41

I

Taking this path explicitly
printing control-break values.

Exanple:

specifies

ascending

order

for

( tlCLIENl'" )

REPORl' BY INV-QJST-OO ASCENDING LISTING
INVOlCE-NO, Tal'AL-AMCllNT.

Invoices are grouped by custaner nurrber.
appear in ascending order in the report.
J

Taking
this path specifies
<X>ntrol-break values.

Exanple:

descending

Custaner

order

for

nurrbers

printing

(tiCLImr")

REPORI' .BY INV-QJST-N::> DESCPNDIN:; LIS'l.'n'C
INVOICE-NO, 'lUl'AI.t-AMCllNT •

Invoices are grouped by custaner llLJI'd:)er.
appear in descending order in the report.

Custaner

I1llItDers

K

Take this path to specify both explicit ordering and ncnde£ault
printing of control-break values.

L

Take this path after all ncAde£ault specificatioos are made.

4 -

42

C-B-SJBHEADIW DESC

C-b-sul:ileading
Desc describes
an item
to be included
in
control-break heading which is related to the CXXltrol-break item.

the

The syntax for C-b-sul::heading Dese is as follows:

A

E

->

- - > <data nane>---

I

I

1B
I
1-> <extension>-> I

I
I

I
1F
I
+-> <report-item 1'ltld>->+

J

I

C

I--><string>---->!

I

I

!

D
!
+--><item desc>->+
The paths of this syntax diagram are explained below:
~

A

E?Cplanatiat
this path to specify that the value of a <data name>
associated
with the control-break item be included in a
control-break heading. The value of the <data name> is printed
on its own separate line within the control-break head:i.B3 and is
irxlented fi ve spaces.
Take

Exanple:
REPORt' BY <l.JST-R) INCUlDIm aJS'ltMER-NAHE

LISTIm INVOlCE-R), 'lUl'AL-AKXNl'.

control-break heading for am-R) includes the value of
This value is written Q'l a separate line in the
heading arxi is identified by -ItaJS'roMER-NAME: It.

'!be

aJS'ltMER-NAME.

B

this path to define an <extension> associated with the
control-break item aOO to specify that the value of the
<extensial> be included in a control-break heading. The value
of the derived item is printed on its own separate line within
the control-break heading and is indented five spaces.

Take

4 - 43

Exanple:

(UCLIENI''')

RErum' gy aJST-NO INCLUDm3 tNJSED-CREDIT IS
CREDIT-LIMIT - BALANCE-OOE LIS~
INVOICE-OO, TOrAL-AM:XJm'.

The follOiling ShONS the cO!'ltrol-break heading as it appears in a
p:>rtion of the report:

CUST NO:

001172

UNUSED CREDIT:

83.27

NO

. 'IUl'AL
AtCJNl'

071310

$ 131.20

INVOICE

C

Take this path to specify a <string> to be printed in the
control-break heading. The <string> IlUlst be 30 characters or
less and is printed Ql its om line, irxiented fi ve spaces,
within the heading.
Example:

(lCL!mr")

REPORI' BY aJST-yj INCUJDnG
"INVOICES 00 PB:NE ACalJNT ARE" LISTING
INVOICE-NO, TOrAL-AM:XJm'-.-"-

'!he control-break heading appears as follows in a portion of the
report:

4 - 44

•
aBl' 1«): 001172
INVOIC&S ~ APJ:NE N:CnJNl' ARE

INVOICE
R)

051732

$ 230.00

•

•

D

Take this path to specify that the value of an <itan desc> be
included in a cont.l'01-break heading.
The value of the <item
deac>
is printed
(Xl
its am separate
line within the
cont.l'01-break heading and is imented five spaces.
("~" )

Eanple:

BY' ClJS'r-R) nc:.DDIlG
CRmIT-LIMIT - &\LANCE-OOE tUt(5,2)
LIS'l'DG INVOICE-m, 'l'OI'AL-NDJNl'.

R£PQRl'

'!he cont.l'01-break heading awears as follows in a partial of the
report:

am

001172
CREDIT LIMIT - BALANCE WE:

1«):

INVOICE
W

071310

$ 131.20

•
•

4 - 45

83 .27

E

Take this path if default printing is desired for the data item.
The data item then is always printed by default and is
identified in the control-break heading by a default identifier.
(Refer to DEFAULT IDmI'IFIERS under CXlWMN DESC in Secticn 4.)

F

Take this path to specify nondefault printing of the data item
value. The oondefault printing cptions are the following:
1.

Qange the data item identifier.

2.

Speci~

3.

Specify oonditiooal data item value suppression.

Exanple:

Character string prefixes and/or suffixes.

("CLIENt''')

REPORl' .BY aJST-tD INCllJDIl:G DISCXXJNT-PERCENl'

AS "DISCXXJNT" SUFFIXED BY"'" LISTIm
INVOICE-NO, rorAL-~
The control-break heading awears as follows in a portion of the

report:

00: 001172
DIS<XlJm': 05%

QJST

INVOICE
R)

$ 130.50

071310

4 - 46

COBOL PICIURE
A COBOL Picture optionally is used to describe hOH an item is to be
printed.
When specified as a string in REPORTER III, a COBOL Picture
must have no blanks after the first quote and no blanks before the
ending quote.
It must be a valid COBOL editing picture.
The
specification is taken as provided and used in the generated program;
that is, no syntax checking is performed by the Report Language Analysis
Program.
The following characters are used in forming COBOL editing pictures:
Character

$

*
B

o

+
CR
DB

Z

/

Definition
Dollar sign
Asterisk (check protect)
Cornna
Actual decimal point
Space
Zero
Plus
Minus
Credit
Debit
Zero suppress
Slash

ANSI-74 or ANSI-85 COBOL reference manual should be consulted for the
exact rules for forming COBOL editing pictures.

An

Examples:
"$(5)Z.99"
"ZZZ,ZZZ.99"
"X(IO)"
"B(5)"
"99/99/99"

4 - 47

1177185-003

COLUMN

DESC

The Column Desc clause specifies the content of a column to be listed in
the report.
Example:

("INVENJ''')

REPORT PART-t\[) , gJANI'ITY.

This produces the following type of report:
gJANrITY

PART
N)

164310
164320
164322

00023
00018
00130

The syntax for Column Desc is as follows:
A
E
L
-----><data name>----------------------------------------->

I

I

I

B
1
I--><string>~--->I

1

1

I

I

C

I

I--><item desc>->1

1

I

1

D

I

+--><extension>->+

I
K

1

1

<-----------------------------1
F

1

1

IG _

1

1---/ 1 /--><report-item mod>->
1

1

I1

T""
II T
n
_
_
.1

+---/ 1 /---->ASCENDING------->+

I
1

-

J

I
1

+-->DESCENDING->+

4 - 48

The paths of this syntax diagram are explained below:
E~lanation

Path

A

Take this path to specify that a colurm consisting of the values
of a <data name> be printed. The appearance of the <data name>
in this clause identifies it as a coltmn name for pll:POSes of
footing.
The <data name> provides a default heading for the
colurm.
Exanple: ("INVmI'")

REPORl' PARr-W.

'Ibis specifies that cne colurm of infonnation be listed. Each
entry in the collUm represents a part and is given the part
Il\lIlt)er of that part.
oolunn name nust be unique; that is, a <data name> can be
used ally once as a column name. If it is desired to report the
same data item in nore than ale oolurm, this can be done by
reporting an extension consisting of the data item.
Each

Exanple:

In this exanple, the first ani third
values and have identical headings.
B

col~

oontain identical

Take this path to specify a coostant string of characters to be
printed in a colunn. '!be string JlUSt be 30 characters or less.
The oolunn is unnamed am has no identifying heading.
This
allows the introduction of constant values into each line of the
listing or the shifting· of columns right or left by including an
awropriate Il\lIlt)er of spaces in the string.
Exanple:
REPORl' aJST-N:>, "ACOOlNl' OF II ,

aJS'IOMER-NAME.

4 - 49

This produces the following type of report:
aJSl'

aJSl'OMER

W

NAME

117680
128200
171111

C

JOHNQ. DOE

A.CCXXJNr OF
A.CCXXJNr OF
ACc:::aJl!lr OF

HELEN SMI'IH
JACK ADAMS

Take this path to specify t.hdt a coll.Ulll consisting of the item
values described by <item desc> be listed. There is no co1urm
name associated with the co1unn.
The <item desc> itself, if
less than '30 characters, provides a default heading for the
oolunn.
Exanple:

( "INVENT" )

REPORI' PARI'-NO, UNIT-<DST

~

OUANTI'lY NUM( 8,2) •

'!be underlined IXlrticn of the REPORt' statement specifies a
oolurm of data to be printed consisting of the unit CDSt values
times the quantity for each part. The fo110Afing type of report
is produced:
PARI'
N)

WIT CDST
QUANTI'1Y

*

1671.03
1833.01
926.63

119017
121130
132261

D

Take this path to define an extension and to specify that a
oolurm consisting of the values of this extensicn be listed.
The <data name> defined within the extensl,oo becanes a colurm
name and provides a default heading for the column.
Example:

( "TII.1'I.TC"t..""II)
.&.J.... v~·u.

REPORl' PARI'-NO, VALUE--a-l-liAND IS
UNIT-CDST ~ (lJANrIT'f.
-

4 - 50

The

underlined portion specifies a column of data to be printed
consisting of the value of all units of a particular part number
in sto::k.
The colurm is named VALUE-<E-HAND.
'l.lle following
type of report is produced:
PARI'

NO

164380
170111
215010

VALUE CN
HAND

2131.00
1100.15
250.80

E

Take
this path if the informatioo
to be reported ( the
informatial in this cx:>lurm) is not to be ordered based (Xl this
data item, arXi if default colurm printing is acceptable.
Each
value of the data item appears in the colurm. A oolutrrl heading
is f~ from the default identifier.
(Refer to DEFAULT
IDmI'IFIERS, Wich follows the path explanatioos for CX>IlJMN
DFSC.) If the default identifier is oversized with respect to
the width of the data item in the oolurm, an atterrpt. is made to
reduce the size of the heading by separating the default
identifier 00 space boundaries am by generating up to a 3-line
heading.

F

Take this path to specify ordering of infonnation based CD this
item and/or l'Oldefault oolurm printing. The oondefault printiD3
cpt.ialS are as follows:
1.
2.
3.

G

C1ange the oolurm heading.
~ify item value prefixes and/or suffixes.
Specify suppression of certain values in the colU1t1l.

Take this path to specify IDldefault oolumn printing.
ttbe
I'D1default cptions available are listed under the explanation of
path F above.

4 - 51

Exanple:

( "Voc:ASr" )

REroRr ASSET-W AS "ASSEl' NUMBER", OOST.

This illustrates a nondefault column heading. The first colUDll
is headed ASSEl' NUMBER instead of the default heading ASSEl' 00.
H

Take this path to specify that infonnation to be reported be
ordered based en this data item. 'lhi.s path cannot be taken if a
<~ desc>
clause was previously specified in the REPORT
statement.
1be ordering specified here is suoordinate to any
orderirrg
of control-break
groups.
Also, if ordering is
specified for other columns, the ordering specified first is
considered the highest level for columns.
Since ally Ole sort
is done for grouping and ordering, the ordering specified here
nust be consistent with the ordering specified elsewhere.
Exanple:
REPORI' IAST-NAME ASC, FIRST-NAME ASC, SAlARY' •

Information is ordered based on FIRST-NAME for those individuals
with identical last names.
I

Take this path to specify that information be ordered
ascending sequence based ol this oolumn of infonnatim.
Exanple:

in

("ClJSTV" )

In this case, infonnatim reported on custaner ranittances
appears in alP'labetic order based 00 the custaner' s name.

J

JESCflm]K; specifies that infonnatial
item in descending sequence.

Exanple:

REPORl'

be ordered based on this

( "vcx:EMP" )
~-NAME,

SAlARY' DES:.

In this case, infonnatioo

order based on

00

employees is repxted in descending

SAlARY'.

4 - S2

K

Take this path to specify roth ordering of infonnatioo based
the column an:i noodefault printing of the colurm.

L

Take this path after all specifications for the oolurm are made.

00

DEFAULT IDPNl'IFIERS

A default identifier is used to identify an item in a report when no "AS
clause" is specified to identify the item (refer to Report-item Mod in
this sectioo for an explanation of liAS clause"). When the values of the
item are printed in a oollDm, the default identifier seIVes as the
oolunn heading. The description of the item in a REPORI' statement or
~ZE

statement deter.mines the default identifier.

If the item is referenced by a <data ~>, the default identifier
fonned fran that <data name> as follows:

is

space is placed between all elements of the <data name>,
except after a .. (I' or II [II an:i before a II) II or II] II •

1.

Qle

2.

Every hyphen within a <name> which is IX)t adjoined to other
hyphens is replaced by a blank (for exanple, A-B-C-D becanes A
BCD). If nore than ale hyphen is exntained c:x:ntiguously in
a <name> , the first hyphen and every alternate adjo~
hyphen is replaced by a blank (for exanple, A
B becanes
A - - B).

If
the preceding would result in an identifier looger than 30
characters, ally the first 27 characters are used and an ellipsis ( ••• )
forms the last three characters of the identifier.

Exanples:
Data Name
CDr!'
ACXXlJNI'-l:D OF BILL
PARl'-DESCRIPl'ICN OF
WIT OF CABINET
POINl'S-oF-SHIPMENI'[l]

Default Identifier
cnsT
J\aDUNI' W OF BILL
PARI' DESCRIPI'ION OF UNIT OF •••
IOINl'S OF SHIPMENI' [1]

4 - 53

If the item is specified as an <extension>, the default identifier is
fonnEd fran the deriva:i data item name by replacing any hyphens with
blanks.
If the item is a <string>, no default identifier is created.
If
the item is described via an <item dese> that contains an
<expression> which is a <nurrber> or <string>, no default identifier is
created.
OthelWise, the default identifier is fonned fran the <item
desc> as follows:

1.

Any <internal

2.

Che space is placed between all elements of the <item dese>,
except' after a II ( .. or "[" or before a ") II or "]".

3.

Every hyphen within a <name> which is oot adjoined to other
hyphens is replaced by a blank (for exanple, A-B-C-D becanes A
BCD) • If nDre than one hyphen is contained contiguously in
a <name> , the first hyphen and every altemate adjoining
hyphen is replaced by a blank (for exanple, A----B becanes

attributes>
specifications are deleted.

and/or

<editing

attributes>

A - - B).

If
the preceding would result in an identifier la1ger' than 3')
characters, only the first 27 characters are used and an ellipsis ( ••• )
fonns the last three characters of the identifier.
Exanples:
Item Desc
UNIT-CDST

*

(JJANl'I'lY

NUM(6,2)
AVG (CDST WHERE MXt'H = 03)
'lUl'AL (BAIANCE-WE WHERE
'lHIRlY-IlA.YS-OOE > 0)

Default Identifier
UNIT Ql;T

* (lJANTI'lY

AVG (Q)ST WHERE KNl'H = 03)
'lUl'AL (BALANCE DUE WHERE 'lH •••

4 - S4

'l'he Col\mWl8 clause specifies the ccnt.cmt of the col\DlS to be listed on
the report. Bach line of infamaticn in the ool\mKlS (a detail line) can
represent a logical record or sunmaxy information related to each value

of a cootJ:ol-break item.
Exanplea

( IIINV!Nl''' )

REPORl' PARr-OO, (JJAlfl'l'lY.

'lhi.a produc»a the following type of report:
WMll'l'lY

PARr
II)

164310
164320
164322

00023
00018
00130

•
•
•

•
•
•

Each line represents cme logical record.
'l'he syntax for the CblumlS clause is as followa a

+<

I
Ie

A

, <---++

1)1
IE

- - - - - - - - - - - - - - > < c o l U l l l deac>-->

I
Is

--

+-->iOR EAaf

<rOIl

desc>: ->+

4 - 5S

The paths of this syntax diagram are explained below:

!!!:!!.

Explanation

A

Take this path if infonnation fran each logical record is to be
listed.

B

Take this path to specify that the oolumns are to oonsist
sl.ltlDarY infonnation for each value of a control-break item.

of

Sunrnary infonnation for oontrol-break items consists of items
which are related to the oontrol-break item ani have a oonstant
value for each value of the control-break item.
In many
instances, surnnary items are derived statistical items; but they
also can be oonstatistical items. If path B is used, all items
reported as oolumns nust be sunmary items related to the
specific control break. Nonstatistical items which are reported
as columns are brplicitly declared sl.ltlDarY items for the
specified control break.

'!he first oolumn printed is specified by <rOIl desc> and caltains
the values of the control-break item.
<Row desc> defines the default scope for any statistical
functions Which are specified in subsequent <colUllll desc>s.
Exan'ple:
~E

(tlVQCEMP II )
BY

~-AGE

FRJM 20 BY 5.

Rm>Rl' EOR FACi RAY:;E:

CXXJNT, AVG (FEDERAL-TAX) •

underlined portioo specifies that each line or rOIl in the
oolurm listing consists of sumnary infonnation for a particular
age range. '!he following type of report is produced:

The

4 - 56

AVG
(FEDERAL
TAX)

20 - 25
25 - 30
30 - 35

5
11
3

$ 751.20
$ 843.72
$ 1022.80

C

'!his path describes a colurm of data to be printed in the
report.
Each colunn is headed at the top of each page by an
app~riate identifier.

D

Take this path as many times as necessary
oolunns which are to be reported.

to describe

all

Colunns are printed left to right in the same order as they are
specified
in the REPORl' statement.
If lIDI'e col\.lmS are
specified than can fit en a page, a line overflow results,
unless P~ was set. (Refer to the Report-cption SEl'
statement in this secticn.)
discussioos
of line overflow and page overflCM in
oonnecticn with oolunns, refer to LINE CJ\.1ERFUIIl and PAGE
0JERF1DIl, respectively, ~ch follow the path explanaticns for
00IDtiS. )
(For

'!he following is an exanple of a nultiple-col\m'l
using many nondefault qJticns.

specification

ExaDple:
REPORl' NAME ASCE2mDG WHERE ClfANGES, NUN!', art
WHERE
0 AS "CUANl'I'lY", "~AT"
WHERE C1lY > 0, ~ IS NDJNl' .* rtr'i
AS "ORDER <DS'l''', IT&1-NR AS "I'l'!M11

an )

PREFIXED BY

11,11.

4 - 57

'!he preceding statement produces the following report:

ADAMS, JOHN

~,

ClfARLES

BAKER, FRED

E

$10.50
$12.22
$13.05
$ 5.00
$ 2.00
$21.10

CUANrI'lY

ORDER
CDST

ITEM

5 CASES AT
16 CASES AT
1 CASES AT
4 CASES AT

52.50
73.32
13.05
20.00
0.00
42.50

#17
#62
#45
#11
#41
#26

2 CASES AT

Take this path after all oolumns are specified.

LINE OVERFI.DW

If

the PAGE-wIJJrH is insufficient to print all colurms specified in the
statement, by default each line of the listing is continued onto
the necessary nurriJer of lines. In the same way, correspalding detail
headings are continued alto IIIlltiple lines. HoIIever, the individual
headings are not split alto nultiple lines in the usual fashioo.
REPORl'

The followin3 is an exanple of line overfla.'.
It shows the result of
the report optioo SET PAGE-oJERFI.atl = FAlSE (the default). It is useful
to catpa.re this exanple with the exanple shewing the use of page
averfla.' in oonnection with the same REPORI' statement (refer to PAGE
OVERFI.DW, which follCMi).
Example

REPORT A,B,C,D,E,F,G,H,I,J,K,L.
The preceding statement produces the folla.'l.ng page layout, which
reflects line overflOli.
In this illustration, the capital letters (A
through L) represent headings, and the 1a.'ercase letters (a through 1)
represent data.

4 - 58

P~l

ABCDE
FGHIJ
KL
abcde
f 9 h i j
k 1

abcde
f 9 h i j
k 1

PAGE 2

ABCDE
FGHIJ
KL
abcde
f 9 h i j
k 1

etc.
The following is an exanple of line overflow with a centrol break. It
is useful to oatpare this exauple with the exanple shewing the use of
page overflow in c:amecticn with the same REPORl' statenent (refer to
PAGE ~, which follows).

Exanple:

REPORT BY STAXE LrSTiNG A,B,C,D,E,F,G,H,I,J,K,L,M.

preced:i.r¥1 statement produces the followir¥1 page layout, which
reflects line overflow with a CXXltrol break. In this illustration, the
capital letters (A thrC11gh M) represent headings, ani the lowercase
letters (a through m) represent data.

'1he

4 -

59

PAGE I
srATE:

~

ABCDE
FGHIJ
KLM
abcde
f g h i j
kIm
abc d e
f 9 h i

j

kIm
PAGE 2

grATE:

AlASKA

ABCDE
FGHIJ
KLM
abcde
f 9 h i

j

kIm
etc.

By default, VERl'ICAIt-SPAClOO is set to 2 when line
overflOfl occurs. SettiD3 VERl'ICAL-SPAClNJ to 1 when
line overflow is expected results in paper saving at
the expense of sane report readability.

PlVlE 0JERFI..0tl
-----

If IrDre colurms are specified than can fit Q'l a page and if the
PAGE-<JlJERFII:W cpt.ial is set to TRUE (refer to Report-option SEX'
statement in this section), page overflow occurs.
In this case, ale
logical page of infonnation is printed 00 several physical pag~.

4 - 60

The

following is an exanpJ.e of page overflow with the report option SEl'

P~-TlIlE.

Exanple:

REPORr A,B,C,D,E,P,G,H,I,J,K,L.
preceding statement produces the following page layout, ~ch
reflects page overflow.
In this illustratioo, the capital letters (A
through L) represmt hei!adiDJs, and the lowercase letters (a through 1)
represent data.

The

Pia: 1.2

ABCDE

FGHIJ
fghij
fghij
fghij

abcde
abcde
a b.c d e

PAGE 1.3

KL
kl
kl
kl

ABCDE
abcde
abcde
abcde
etc.

'1'he following is an exanple of page overflow with a CDltrol break and
the report cpticn SEl' P~ - TRJE.
Exanple:

REPORr Br

~

LrSTlNG

~B,C,D,E,F,G,H,I,J,K,L,M.

preceding statement pmduces the following page layout, which
reflects page overflow with a control break. In this illustration, the
capital letters (A through M) represent headi.n3s, and the 10ltlercase
letters (a through m) represent data.
'!be

4 - 61

S1'A1B1

J\tABMa

S'l'A1E:

S1'A1B1

AlABAMA

FGHIJ
fghij
£ghij
fghij

ABCDE
abed.
abede
abede

STN1'E:

J\tABMa

KLM
klm
klm
klm

AlASKA

ABCDE
abede
abede
abede
etc.

4 - 62

The CX»1BINE statement enables the language statements in the report
specification whiCh follcw this statement to be merged with a .file
designated by <extemal file name>.
'lbis file llUlSt be a disk file of
report language statements.
The

a:J.mINE statement is useful for merging frequently used macros into
report specification.
These macros are defined by <REPlACE
statement>s in the designated disk file.

the

Sequence numbers in the first six positioos of each record determine the
location of each statement in the c:ari:>ined file.
If the first six
positions .of a reoord are blank, the sequence· number for that record is
O.
If the sequence nlmber of a record which you entered follo.ring the
CDMBINE statement is the same as a sequence number in the designated
file, the record which you entered is used in place of the oorresporxllng
record in the designated file.
If a SAVE SPECIFICATICNS statement follows the W1BINE statement, the
saved file is the file resulting fran the merge with the specified disk
file.
Exanples:
CDMBINE "MACRJS II •

mtBINE WITH FILE "AUISPC".
'!he syntax for the

~INE

statement is as follows:

-->~INE-----------------><external

I

I

I

I

+->WlTH->+ +->FILE->+

4 - 63

file name>.

CIH?OWD-DATA-STRJCIURE crAUSE

'Dle Cotpound-data-structure clause can be used to do the fOllowing:

1.

To specify access to a single data structure ooly.

2.

To specify

cne-to-many access to a 'list of associated data

structures.
To preselect (using the PRFSEIFCT clause) Plysical records to
be inplt to the logical reoord. Preselecting can be done for
a single data structure or for a list of associated data

3.

structures.
The syntax for the Cotpound-data-structure clause is as follows:

A
-> <data-structure clause>-+-------------------> (1)

I
Is
+-->

<PmE~

clause> - - > +

c

(1)--+--,-------------------+--->
D

+-- ( <CXJlIX)UIld-data-structure-clause list> ) -+
'!be paths of this syntax diagram are explained belcw:
Path

E!Planaticn

A

Take
this path if all P'lYsical
recorda
read fran the
data-structure specified in the <data-structure clause> are to
be input to the logical record.

B

Take this path to pass into the logical reCX)rd cnly thoee
physical records ....m.ch result in a true c:xniition When checked
against the PRESEl.ECl' Boolean expressioo.
Refer to "PRESET.ECl'
clausell later in this section for further information.

4 - 64

C

Take this path When no data structure is to be multi-accessed
(When it is not necessary to access nultiple records of any data
structure for each record accessed fran the data structure
specified) •
Exanple:
INPtJI' PARI'S, SUPPLIER.

In· this exanple, cne record fran PARrS is read, and then ooe
record fran SUPPLIER is read.
The one-to-c:ne access order
continues until roth files are exhausted. No one-to-many access
fran either of these files is specified.
D

Take this path to access data structures in a one-to-many
manner.
For eadl record of the da~ structure specified,
nultiple records of one or nore data structures specified in
path
B are accessed.
Appropriate
clauses for the data
structures specified in path B can be used to define h;)w the
one-to-man;y access shoold be done. The parentheses of path B
indicate a nesting of iqput levels; thus there is a hierarchical
order
in
accessing
the
data
structures.
All
catpound-data-structure clauses that are separated by cx:mnas are
considered to be at the same input level, while those enclosed
in a set of parentheses are oorl.~idered to be at an imler input
level.
A nesting of parentheses in an INPlJI' statement can
define several input levels.
lNPUI' statemants oontaining IX)
parentheses have one level of input.
In many applications,
INR1l' statements consist of one or t'WO input levels.
In general, data structures occurring at the sane input level
are accessed in order fran left to right. In the case of a data
structure having an associated <c~lOund-data-structure-clause
list>, for eaCh single record of the outer-level structure
accessed, the data structures at the next inner-level are
accessed until exhausted.
A logical record in this case
consists of one record fran each data structure at each level.
When an inner-level structure is multi-accessed for one record
at an outer level, eadl of the logical records reflects the
following: the record for the outer-level stays the sarre, while
the record for the inner-level structure varies.

4 - 65

ExaDple:
INPUT DEPI'-FILE (EMP-NAME).

For each department name in DEPr-FILE, all employee names are to
rep:>rted.
In this exanple, each logical record oontains a
department name and one employee name.
'!he department name
remains static, while the employee name varies with each logical
record, until all enployee names are used.

be

Exanple: ("aJS'lV tI )
INPUT ACCT~FILE(lmUT-FILE MATCHm:;
RJMIT-ACCl'-W WITH ACrl'-NO).

For each record of ~-FILE, all records of REMIT-FILE
RBaT-ACCT-NO matches ACrl'-NO are input.

wl'xJse

ExaDple:
INPUl' PARI'S (SUPPLIm5 VIA SUP-af(lOCATICE
VIA ADDR), CllY-oN-HANi)VIA arY'-IJ().
In this exanple, for each PARrS record, all associated SUPPLIER)
records and C1IY-<:ti-HAND records are input; for each SUPPLIERS
record, all associated I.DCATICti records are accessed.
Each
logical
record oonsists
of ale recx:>rd each fran PARI'S,
SUPPLIERS, lOCATIWS, and arY'-<6-HAND.

4 - 66

cntPOOND-DATA-srRJClURE-cr.AIJSE LIST

The Conp:>und-data-structure-clause List specifies which data structures
fran the vocabulary are to be accessed, and the order in \\bich they are
to be accessed; all the data structures lmlSt be fran the Same
vocab.llary •
Exanple: (" INVENI'" )
INPur PARIMF.

single data structure is accessei,
this data structure can be reported.

A

PARIMF.

All infannation within

The syntax for the CcJtp:>und-data-structure-clause List is as follows:

+<------- , <--------------+
AI
I

I
I

B

---> <catp:)UIld-data-structure clause>

>

'!he paths of this syntax diagram are explained belcw:
Path
A

E!Planation
can specify nore than one <canpound-data-structure clause>
in the INPt1I' statement by taking this path. The data structures
identified by the <canpc:>UI¥i-data-structure clause>s are accessed
in a one-to-one corresp:nding fashion in the order in .tUm they
are named, provided the <canpound-data-structure clause>s are
separated by cxmnas. Access to a data structure in a cne-to-one
fashion can be dependent or independent.
DepeOO.ent ooe-tcr-ale
accessing is accatplished by appropriate clauses which specify
l'Oi
the
data
structure
is. to
be
accessed
fran
a
previously-specified
data structure.. Inde~t accessing
involves accessing records fran independent data structures, in
tum, fran left to right.
You

4 - 67

Exanple:
INPl1l' PARTS, MASTER-UNIT, SUPPLIER.

In this exanple,

fran PARI'S is read, then one fran
These thr~ records
are rOtI viewed as ccmposing one logical record. The process is
repeated until all three data structures are exhausted.

MASl'ER-tlNIT,

cne record

and then cne fran SUPPLIER.

Whenever an attempt is made to access a data structure which is
already exhausted, and other specified data structures at the
same input level are not yet exhausted, REPORl'ER III-defined
null values are returned for the record entries of the exhausted
data structure. The null values to be used in such cases can be
specified b¥ a Process-option SET statement.
Exanple:
INPl1l' SYS-FILE, IMS2DS.

This exarcple illustrates that different types of data structures
can be specified in the INPt1l' statement.
In this exanple, a
system file (SYS-FILE) and INS II data set (IMi2m) are acx::essed
in a ooe-to-one irdependent manner and in the order in which
they are specified.
A logical record is 'C'DII ccmposed of cne
Plysical record £ran SYS-FIIE and one physical record £ran
a-52IS (in other words, the first logical record oonsists of the
first physical record enCountered in SYS-FILE and the first
Plysical record of IMS21lS: the second logical record oonsists of
the second physical record of SYS-FILE and the seoorXi physical
reoord of IMS2llS). This matching continues until 00th files are
exhausted.
If one file is exhausted before the other, the
natching continues with nulls being added in place of the
exhausted file.
Exanple:
INPt1l' MASl'ER, ~FILE AT DI~-KE.Y,
OOl(m2 VIA SUBSEl'l)-,
IJ6-ti;!F1Q.t SYS-FILE VIA SETl AT
I<E.Y = X Tii&-m2(a-s-ISJr)-.- -

This ex.artple is designed to illustrate bJw different. types of
data structures can be accessed together in a catplex fashion.

4 - 68

SYS-FILE is a system file associated with another system file,
MASTER, throogh use of a direct key called DIRECl'-KE.Y. This is
an exanple of one-to-one accessing (notice the use of the cxmna
in this relatiooship). m2 is a IJ-1S II disjoint data set which
is accessed in a one-to-many relationship with ml (another
dis joint data set) via a subset S.JBSEl'I. This relatiooship is
established by the use of the parentheses.
Il4S-ml is a
dis joint data set, and If.&-IS2 and I»6-IlS3 are unordered
esdJedded data sets within !H)-OSI (if they had been enbedded
standard data sets, they 'NOUld have required access via a set).
X is a data item in SYS-FILE, cud I<E.Y is a data item in IHi-OSI.
'lhe data item IQ.Y also is used as the key for the set SETI which
spans !H)-OSI.
For each recx>rd of MASTER accessed, a record of SYS-FILE is
accessed using DIRECT-IQ.Y, a reoord of ISI is accessed, and a
record of IH)-I);l is acx:essed using the data item X and the set
SETl.
For each 1);1 record, all 1);2 records associated by
SJBSETI are retrieved.
For each IM;-I);l record, all related
records of I16-1);2 are accessed; and for each record of IMS-OS2,
all related records of II-S-OS3 are accessed.
B

Take

this

path

after

yoo

c:x:xtp:)UIld-da:ta-structure clauses.

4 - 69

have

specified

all

CDNDITIONAL PRINT SPECIFlCATIW

The Conditional Print Specificatioo establishes
layout for the printing of a report segment

the conditions

and

The syntax for the Conditional Print Specification is as follOllS:
A

->IF <Bool expr>-------> «print specifications> )-> (1)

-

I

I

+->'1liEN-> +
B
(1)

C
~->ELSE

---------------->
I
I

«print specifications> )->+

The paths of this syntax diagram are explained belcw:

Path

Exp1anatioo

A

Take path A to specify a Boolean expression am the <print
specifications> to be met. if the value of the Boolean expressioo
is TRUE.

B

Take path B if yoo 00 oot desire to specify print specificatioos
to be met if the value of the Boolean expression is FAISE.
For path B, if the value of the given <8001 expr> is TRUE, the
<print specifications> given in parenthesis are used to describe
the layout of a segment of the report. The print specifications
determine the next available print position.
For path B, if the value of the given <Bool expr> is FALSE, the
<print specifications> given in parentheses' are not used, and
the next available print position remains unchanged.

4 - 70

Exanp1e: ("SHIPV")

IF POIN'l'S-aF-SHIPMmI'[2]
NW 0 (NL, [POINl'S-OF-SBIPMRfl'[2]] AT 15)

If a seCX)oo point of shipoent exists, it
indicated. If not, 00 pri.nting is specified.
C

is

printed as

Take path C if you desire to specify print specifications to be
net if the value of the Boolean expressioo is IMSE.
For path C, if the value of the <Boo1 expr> is PAISE, the <print
specifications> given in the ElSE clause are used to describe
the layout of the report s~t. These <print speclficatioos>
det~nnine the next available print position.
Exanp1e: ( "VClCEMP Il )

IF

~ < 12000 '1mN ([~] IN 10)
ElSE (10 SPACES)

If the enp10yee salary is greater
ck>11ars, 10 spaces are printed.

4 - 71

than

or equal

to 12000

CDNTROL-BREAK HFADINGS

Each occurrence of a control break is defined by a Control-break
Heading.
Control breaks organize infonnaticn in hierarchical order
based on control-break heading definitions.
The syntax for Control-break Headings is as follows:

+<------------ ; <----------------~
I
I

A
->BY <c-l>-heading

-

desc>

GI
I

B

H

--------------------------------------->
I
+<----- , <----+

I
I

c

:

D

+--> INCUJDIN3-> <c-b-sul::heading
desc>

EI
I

F

I
I
I

->+

The paths of this syntax diagram are explained below:
~

Explanatial

A

This clause specifies that a heading be printed for each value
of the control-break item described by <c-b-heading deee>.
<C-l>-heading desc> defines a referenced item as a control-break
item if the oantrol-breaks for the report have not been defined
in a previous statement.
As a minim..Jm, the oontrol-break
heading contains the value of the control-break item described
in <c-l>-heading desc>. It can also contain sunmary infonnatioo.
Exanple:

("a.rmr tt )

REPORl' BY INV-aJST-HJ
'1Ul'AL-NDJNl' •

LIST~

DUE-Df\TE,

INV-aJST-HJ is defined as a control-break item. A header is
printed for each value of INV-a:JST-R). The listing produced by
this specificatioo follows.

4 -

72

001718

IN\1 QJST WI

031776
031776
040176

12.83
16.74
$ 101.18

$
~

001720

INV ruST 00:

'1Ol'AL
JHXBl'

031976
041076
050376

$ 23.70
$ 103.99
$ -27.04

8

Take this path i f no infomation other than the value of the
ccntml-break item is desired in the CXJl'lt.rol-break heading.

C

Take
this path to include
sunmary
informaticn
in the
CXJl'lt.rol-bl:eak heading.
All items printed in the control-break
beading JDJ8t be sunmary items related to the ccntml break.
Rcnstatistical items reported in the CXJl'lt.rol break are iDplieit
8UIIIIBrY itaDs.
ExaDplel ( "CUmr" )
BY asr-w INCWDIlG ClJS'l'Q£R-NAM£
LlS'l'IlG INVOlCE-lI), TOl'AlJ-AIIJlIfl'.

~RT

'!be custaDer name is a sunmary item related to the custaDer
1UIbtr, and is printed with the custaner rudJer in each
CXJl'lt.rol-break heading.
D

<C-b-sutileading dese> specifies a line to be printed in the
ccntxol-break heading \\bi.ch contains the value of the item
described in <c-b-su1:ileading dese>. The:line is printed beneath
the CXJl'lt.rol-break value and indented five spaces.

Exanple: ( "CLnNl'" )
REPORl' BY OJST-NO INamIlG aJS'l'CH::R-NAME
LlS'l'IlG INVOlCE-R>, T01'AIr1MXJNT.

4 - 73

The following are examples of Control-break Headings produced in
the body of the report fran these instructioos:

aJST ID.:

073121

ClJSTG1ER

NAL~:

JOHN Q. OOE

INVOICE
ID

TarAL
ND.Nl'

$ 73.20
$ 15.70

003111
003202

CUST NO.:

073200

aJS~ NAME:

JACK ADAMS

INVOICE
NO

'lUrAL
AKX.Jil'

004300
005112
E

$
~

80.00
27.10

Take this path as many times as necessary to specify all
additional infonnation desired in the oontrol-break heading.
Data items are printed vertically in the headiB3 in the order
specified by the <c-b-sutheading dese> clauses.
Exanple:
REOORI' BY ~-OO INCWDING NAME, ADDRESS, PfmE
LISTING TRANSACrION-AMl', TRANSACl'IOO-DATE.

The following is an exanple of a Control-break. Heading produced
for a report by the statement above:
Aa:T-tD: 01127
NAME:

JOHN Q. DOE

ADDRESS:

507 E. PINE

sr.,

BAY CI'lY, MICli.

'PlUm: 555-1212
F

Take this path after all infonnation for a oontrol-break heading
is specified.

4 - 74

G

Take this path as many
control-break headings.

times

as necessary

to

specify

all

Each occurrence of <c-b-heading dese> can define a control
break. Control breaks organize infonnation hierarchically based
00
the order in which they are defined in Control";'break
Headings, as follCllrlS:

1.

The information to be reported is
based on the values of the control
first (outer-level control breaks).

2.

Then, for each value of an ruter-level oontrol break,
the infonnation is organized based on the values of
the control break specified next (inner-level control
breaks) •

Coluzms of detail information are
innenrost-level control break.

first
break

listed within

Example: ( 1\1OCAST" )
REPORt' BY DEPT-lD; BY ACQUISITION-YR:
BY ASSEl'-T'iPE LISTIR:; ASSEl'-NO, ersT.

This statement produces the following report segment:

DEPT 00: 1311
ACQUISITlCE YR: 65
ASSET 'lYPE: 07
ASSET
NO

$ 510.23

511330512000

$ 120.80

ASSET 'lYPE: 11
ASSEt'
NO

$ 83.70

411630

4 -

75

organized
specified

ally

the

ACQUISITlCE YR: 66
M)SE:I' 'lWE: 07
ASSET
R)

333120

$ 71.10

DEPl' 00: 1312
ACQUISITICN YR: 65
ASSET 'lnlE:

CB
M)SE:I'

ID

610000
M)SE:I'

$ 606.01

'tYPE: 11

ASSET
Y)

311010

H

$

20.00

Take this path after all CDltrol-break Headings are specified.

4 - 76

The
Data-base
Clause
is used to input
global.
data fran an
A Series tMS II data base or logical data base.
It can be used ally
with data bases that have global data, and it can be specified at any
input level.
'!'he syntax for the Data-base Clause is as follows:

A

-><data-base name>

I
I

>

I
I I

B
+-><logical-data-baae naJDe>->+

I

+-~->+

'!'he paths of this· syntax diagram are explai.ned below:

A

Take this path to specify the name of the data base :fran Wdch
glcilal data is to be accessed.

ExaDple:
INlVl' tmVERSrlY GlDBAL-Drd'A.

Global
4-1).

B

data

fzaa the tKIVERSI'lY data base is read (see Figure

Take this path to specify the name of a logical data base fran
which global. data is to be accessed.
Exanple:
INlVl'

!!!!!.

Global data fran the logical data base ttiIV is read.

4 - 77

NOSOFSTUDENTS NUMBER (10)J
NOSOFCOURSES HUMBER (5) J
UNIV-COURSES DATA SET -MAIN FILECRS-NAME GROUP (
DEPARTMDlT ALPHA (2) ,
LEVEL WMBER (3) :
CRS-NO WMBER (4» REQUIRED ,
HOPROF WMBER (2) ;
CNTOFCRS COUHT (300) :
DAYS-OF-WEEK FIELD (
MON BOOLEAN J
TUES BOOLEAN :
WEDS BOOLEAN
THURS BOOLEAN ;
FRI BOOLEAN ;
SAT BOOLEAN) ;
BUILDING NUMBER (3) ;
ROOM ALPHA (2) NULL IS -NOCOURSENAME ALPHA (24) :
FLAG-BITS FIELD (12) ;
HOURSCRDT NUMBER (4) :
CLASS-SIZE NUMBER (2) J
PROFESSOR IS IN UNIV-PERSONNEL COUNTED
OCCURS 3 TIMES;
BOOKS UNORDERED DATA SET (
NUMBER (9) J
TITLE ALPHA (60) NULL IS BLANKS
AUTHR ALPHA (30)
LC

)

BUFFERS • 1 + 1 PER USER,
AREAS '"' 10
AREASIZE • 500,
POPULATION • 5 ,
BLOCKSIZE • 5
BOK SUBSET OF BOOKS UNORDERED LIST DATA Le;
STUDENTS DATA-SET
(
LAST-NAME ALPHA (15) REQUIRED ;
FIRST-NAME ALPHA (10) REQUIRED:
)

POPULATION • 300
STUDSET SET OF STUDDITS
KEY IS (LAST-NAME ASCENDING, PlI8T-MAKl) I-S DUPLICAT&8
LOADFACTOR • 75 TABLESIZE. 12 AJU:AS. 100
)
'DID RECORD DESCRIPTIOI or UKIv-couaaas DATA SET
POPULATION • 1000
VERIFY (HOURSCRDT GTR 0 AND CLASS-SIZE LEQ 60) AMD Nopaor MEQ 0,
UNIV-C-SET SET OF UNIV-COURSES
KEY IS CftS-NAME DESCENDING I-S NO DUPLICATES,
UNIV-PERSONNEL DATA SET
POPULATION • 997
USC-COUNT COUNT (100)
NAME GROUP (
LASTNAME ALPHA (15) :
FIRSTNAME ALPHA (10» REQUIRED ;
.SEX BOOLEAN J
AGE NUMBER (2) NULL IS HIGH-VALUE:
SSNUM NUMBER (9) REQUIRED UNIQUE;
DPT ALPHA (4) :
RANK ALPHA (1) :
SALARY NUMBER (S7.2)
INITIALVALUE IS LOW-VALUE;
COURSES IS IN UNIV-COURSES COUNTED OCCURS 8 TIMES:
SUPR ID IN UNIV-PERSONNEL WITH NO PROTECTIOH
SS-U-P SET OF UNIV-PERSONNEL
KEY IS SSNUM I-S NO DUPLICATES
U-P-SET SET OF UNIV-PERSONNEL
KEY IS NAME INDEX SEQUENTIAL DUPLICATES;

FigUre 4-1.

A Series Data Structure
Definition Language (DASDL)
4 - 78

DATA NAME
A Data Name references an item or group. It is a <name>, or a <name>
qualified by other <name>s, and possibly subscripted by <integer>s and
other <data name>s.
A <name> possibly can be associated with a
particular control-break item.
Examples:
ASSET-N)
INVENI'-JX)LLAR-VALUE OF CUST-ACCOONr

LAST-SALE [25]
BALANCE-OOE [BRANCH]
BRANCH REL FINAL

The syntax for Data Name is as follows:
A
E
-><name>------------------------------------------------------------>(1)

1
ID 1
1
ell
+< ------- , <--------+
1<-------------1 I I I1
1
1 1F I G
1j
I

B

+-->

1

+-- >OF <name>- >+

------>< integer >--------->
1
I

1

H

1

+--><data name>->+
K

(1)----------------------------------------------->
1
1

1

L

M

I

+-->RELATED--------------->FTINAL---------+

1

1 1

+->TO->+

1

N
1
+--><c-b name>->+
1

The paths of this syntax diagram are explained below.

4 - 79

1
1
I
1

->+

Explanation

Path
A

If the <name> which references the data item or group is
unique, no qualification is necessary and this path is taken.
The <name >s of data items and groups appearing in the
vocabulary which do not require qualification are not qualified
when they appear in the vocabulary listing.
The <name>s of
accepted data items and derived data items must never be
qualified.

B

Take this path to qualify a <name> by another <name> in order
to identify it uniquely. Any <name>s requiring qualification
because of duplication within the vocabulary are properly
qualified on the vocabulary listing.
The qualification of <name>s is governed by the rules of COBOL.
The qualification of <name>s appearing in the vocabulary is
always acceptable, but may not always be necessary.
As a
minimum, a data item or group used in the vocabulary need only
be qualified to make it unique with the data structure
specified in the INPUT statement.
For example, if the data name TEST~AL-NAME is defined under
the files DATA-FlLE-A and DATA-FlLE-B in the vocabulary and
only DATA-FILE-B is used in the report specification, then
TEST~AL-NAME
need not be qualified in the report
specification. As long as the data name is unique to the data
structures specified in the INPUT statement, the qualification
shown in the vocabulary listing need not be used.
There is one major exception to the preceding rule: Data names
used in the INPUT statement (Matching, Preselect, and so on)
must be qualified as shown in the vocabulary report.

C

Take this path to specify additional qualifiers.
Example:
PART-N) OF UNIT OF CABINET

D

Take this path when all appropriate name qualifiers are
supplied.

E

If the <name> given refers to a single item or group as opposed
to an array of elements, no subscripting is specified, and this
path is taken. The vocabulary listing identifies data items
and group items requiring subscripts by noting the number
required. The <name)s of accepted data items and derived data
items are never subscripted.

1177185-003

4 - 80

F

Take this path to specify a single element fran an array of
elements.
The <name>s of data items and groups requiring
subscripts are OOted in the vocabulary, and the number of
subscripts required is provided.
Subscripts are specified
within the left and right brackets, [], and not within
parentheses as in Q)OOL. CDOOL index variables cannot be used
as subscripts. A <data naJllie> for Wich subscripts are provided
is referred to as a subscripted <data name>.
It is the user's responsibility to ensure that a subscript is
within the bounds of the array if the subscripted <data name> is
either a IJ.tS II item specified in the INPl1I' statement or a
nal-D6 II item specified in aIrI RER>Rl'ER III statement.
If a subscript. value is not within the rounds of the array, a
run-time error (INVALID INDEX or INVALID SUBSCRIP1') could occur
during execution of the generated report. program.
For the remainin:J cases, REPORl'ER III will check subscript
values autanatically.
If an invalid subscript is detected at
run-time, the array element is handled as a null item.
Exanple: ( "SHIPV" )
POIN1'S-oF-SHIPMfm'[l]

G

Take this path to specify an <integer> as a subscript.
integer nust be within the bouOOs of the array.

'lhe

Exanples:
AIDR!SS-LINE[l]
STA'IUS-FIAG[S]

H

Take this path to specify a <data. name> as a subscript.
'Ibis
<data name> JIIlSt not itself be subscripted, and it must not
CXX1tain a RElATED 'It> clause. If the <data name> references a
derived data item, it BUst be a nonstatistical data item defined
in the <input sectiCX1> of a nultiple-report specification. 'lhe
value of the data item referenced by the <data name> BUst be
within the bounds of the array.

4 - 81

Exanples:

ADDRESS-LlN]:;[I]
POINrS-oF-SHIPMENl'[ ORIGIN]

I

this path to specify additional subscripts.
To reference
desired array element properly, you IrUlst take this path the
number of times required to specify the nUIt'ber of subscripts
identified in the vocabulary listing for the item or group.

Take
the

J

Take this path after you have specified all subscripts.
Exanple:

TABLE(2,1,3]
K

'Illis path is taken for rcost <data name> s •
Taking this path
specifies that the data item is not to be declared e~licitly as
a sumnary itern. Declaring a data item explicitly as a sumnary
item is only necessary when you define certain statistical data
i terns based en the data i tern. In many cases, a <data name> is
declared inplicitly as a sumnary item by the cootext in wich it
is used.
Exanple:
REPORI' FOR FAai DEPARIMENl':

PAYROLL, •••

UsEd in this context, PAYROLL is inplicitly associated with
DEPARIMENl'. It is assumed that only ale value of PAYR>lL exists
for each value of DEPARIMENl'.
L

Take this path to specify explicitly that a data item be
associated with FINAL or a ccntrol-break item.
'!he RElATED
clause explicitly declares a nonstatistical item as a sumnary
item and thus specifies that one am ally one value of the data
item is associated with all infonnatian reported 00 each value
of a previously-defined control-break item. The ~TED clause
is iJrplied for control-break items and thus need never ~
specified for control-break items.

4 - 82

Exanples: ("CLIENT" )
CREDIT-LIMIT RELATED 10 aJST-OO
BAlANCE-DUE REL 10 aJST-NO

Specifying the REIATED clause is important cnl.y When yoo use a
summary item in a statistical expression in two distinct
contexts.
If a statistical function is taken on a sumnary item, either
statistical or nonstatistical, the ~ clause is used to
indicate that the item in this context is to be treated
specifically as a sumnary item.
That is, the statistic is
accunulated cnly once for each unique val~ of the sumnary item
rather than accumulated for each reported logical record.
(Refer to srAT PARAMETERS in this section. ) When the REIATED
clause is used in this context for a nonstatistical data item,
it also explicitly declares the item as a sumnary item.
Exanple:
'lUI'AL (BUOOET REL ID DEPARlMENI')

is used as a sumnary item for the PUIp:)Se of canputing
requested total. The REL clause also explicitly declares
BUOOET as a sumnary item if BUOOET is a nonstatistical data
item.
BUOOEl'

the

If a statistical expression defines an item Which is to be used
as a sunmary item, all nonstatistical summary items within the
expression nust be declared as such. The RELATED' clause is used
to declare ~licitly a nonstatistical data item as a sumnary
item if the item was not declared previously either ~licitly
or explicitly as a summary item.
Exanple:
StMWUZE :fUR FACli DEPARI'l~:
TOrAL(SAI.ARY)/BUOOEl' REI" 'It) DEPARlM!Nl'.

REL
'10 DEPARIMmI'
is a statistical
expressicn whiCh defines an item used as a sumnary item.Therefore, BUOOEl', which is a nonstatistical sumnary item, must
be declared as a summary item.
rorAL(SAIARY)/BUOOEl'

4 -

83

M

Take this path to specify that the data item has a constant
value and thus to surmarize all reported infonnation.

Exanple:
CI.MPANY-AS&~

N

REL

ro

FINAL

Take this path to specify that the data i tern has a constant
value for each value of the referenced ccntrol-break item.

4 - 84

A Data-process~ statement can be used to ccntml the processi.n:J
of :infcmnaticm. AJpxcpriate defaults are taken i f yaJ do nat specify a

data-processing qticm.
'!be syntax far the Data-proceaaing-qJticm atateaalt is as followsl
A

- > <SUPPRESS S>R1' statement>

I
1B

>

1

1-> <SEl' S>RI'

BtDCKIR;

atatement>-> I

I
I
l e i
+-><SET SlRl' SIZE statement>->+
'!'he paths of this syntax diagram are explained belew.
~

Explanatiem

A

Take this path to SUJ:Preas the sort required to gJ:OUp and order
infomatial in the manner described.
'1'hia is dena if yaJ knew
that the informatiem is already in the required 88CJl.B1C8.

B

Take this path to set the bl.ocki.DJ factor of the internal sort
file. '1'hia provides oontrol of the axe usage and efficiency of
the

C

8ort.

Take this path to set the size of the internal sort file.
provides cart.rol of disk allocatial far this file.

4 - 85

'1hia

DATA-SE:!' CIAUSE

'!be Data-set Clause is used to specify input of a A Series LMS II data
set or selected JnE!Ilbers of data sets based al keys of retrieval.
You
can input .enbedded data Sets, provided the data set in Which they are
aibedded has been specified previously.
ibwever, specification of a
data set does not. cause autanatic access to its enbedded data sets; to
access an &li:ledded data set, you rrust name it explicitly.
Exanple:
INPUT UNIV-<XlJRSES.
All meubers of the data set lBIV-<XlJRSES are input .(see Figure 4-1).

Exarcple: ( "CLImI'" )

All meni'lers (accounts) of the data set

~-RELV

are input.

The syntax for the Data-set Clause is as follows:

C

A

-> <data-set
name>

----------------0------------------------->(1)
I
ID

B
+->~

<data-structure ->+
name>

1->VlA <link ->+

I IE

name>

+->VIA <set

name>

4 - 86

->(2)

F

(2)----------0------------->(3)

I

IG

H

+->AT <key CXXldition>----------->+

-

I
I

I
I

I

+-->WI'lHJtJl' I1JPLICATES->+

(1)------------------------------------------,---------->
J

(3)------------->+

I
I

K

+->IQ.Y-DM'A

---->+

I
+->CELY->+
'!be paths of this syntax diagram are explained below:
Path

Explanatioo

A

Take this path if it is oot. necessary to clarify the ooe-to-ale
dependence of the data set 00 another input data structure.

B

'!be F.RCM clause
CXXlditions exist:

1.

nust

be

used

Whenever

the

following

'!be data set is to be accessed in a ooe-to-ale

two

roamer

fran another data structure.
2.

'!be specified access to that data set depends <Xl the
value of a data item in the other data structure.

name of the data structure containing the data item nust be
specified.
This type of dependence is used when a key in a set
spanning the data set is cmpared against the value of a data
item in another data structure.

The

Exanple:

INPUT WIV-<XlJRSES, UNIV-PERSCENEL ~
tNIV-<XlJRSES VIA SP-SET AT SP-KE,Y = PK>F.

In
this exanple, UNIV-<DURSES and UNIV-PERSCENEL are two
disjoint data sets. SP-SEl' spans UNIV-PERSCHIEL with symbolic

4 -

87

SP-KEY.
If PR)F is a data item of UNIV-a:xJRSFS, the FRCJot
clause is needed to indicate the dependence of UNIV-PERSCltiEL 00
the value of ProF in tlNIV-<DURSES. All members of UNIV-<llJRSES
are accessed sequentially; for each UNIV-<DURSES record, the
oorrespalding UNIV-PERSCHmL record is accessed (see Figure
key

4-2).

Exanple:
INPl11' FILEl, DA.TASET2 FRG1 FILEl VIA SEr2

AT KEY2

= FI.D-IN-FILEI.

In this exanple, a system file, FlIEl, an:i a I'KS II data set,
DM'ASEr2, are accessed in a one-to-one manner. The access to
DA.TASEI'2 depends an the resul ts of the access to FILEI, as the
key KEY2 of set SEl'2 is canpared against the value of a data
item in FILEI.
C

Take this path if the specified data set is rot to be accessed
via a set or a link.
An embedded, starxiard data set nust be
accessed via a set or link.
Exanple:
INPl1I' UNIV-axJRSES.

All mertbers of the data set UNIV-a:xJRSFS are accessed.
Exanple:
INPl1I' WIV-axJRSES "VIA WIV-C-sET (JD:I(S).

For each meilDer of the data set UNIV-axJRSES, all mertbers of the
eniJedded data set JD:I(S are accessed.
D

Take this path if the specified data set is to be accessed via a

link.
data

'!he specified <link name> nust name a link enDedded in a
set whidl has been specified previously in the INPt1l'

statement.
Exanple:
INPl1I' WlV-<Xl1RSF.S,

UNIV-P~

~ PROFFSSJR(I].

this exanple, all mertbers of the data set UNIV-axJRSES are
accessed.
For
eaCh
member
of UNIV-axJRSES,
the link
PR:>FESSOR(I] is used to access a JneIlt)er of the data set
UNIV-PERSCHmL.
In

4 - 88

E

Take this path· if the
through a sparming set.

specified

data

set is to be accessed

Exaltple:
INPl1l' UNIV-<XXJRSES VIA UNIV-C-SET.
In this exanple, all I'llIEIli:ers of the data set tmV-<XXJRSES
accessed using the ~ set WIV-C-sm'.

are

Exanple: (IiCLImr")
INPl1l' aJSr-ACCr-INFO (INVOICE-INFO
~ INVOICES).

All INVOlCE-INEU records of the eJlt)edded, spanning subset
INVOICES are accessed for each aJST-ACCT-INFO recxm:i accessed.

F

Take this path if retrieval keys are not to be used to access
specific members of the data set. In this case, all the data
set I'llIEIli:ers within the given set are accessed.

G

The AT clause allows selective retrieval of mealbers of the
specified data set using the keys associated with the spanning
set.
A <key oc:niition> IlUlSt be a valid A Series IllS II
selectioo expressioo for the specified set.

Exanple:
INPl1l' UNIV-PERS:HC.. VIA lti1V-C-SEl'
AT ~
"~OO305l0".

=

All records
accessed.

for the graduate-level

course Psyc:bology

510 are

Exanple:
INPl1l' WIV-PERSCH:mL VIA ss-v-p
AT SSNUM = 499502642, UNIV-<XXJRSES
- VIA <DURSFS[l] (S'lUDENl'S VIA S'lUIS'r.).

In this exarrple, the l"lleI1ber of UNIV-PERSCHmL lIilose social
security number is 499-50-2642 is accessed using the set SS=V=P.
'!be
link, <DURSFS[l],
is used to 00tain
a JDeIlber
of
UNIV-<DURSES. Finally, all the students for the accessed member
of t.NIV-<XXJRSES are cbtained using the set S'l'lJDSEl'.

4 -

89

H

Take this path if all records
are to be input.

which satisfy

the key condition

Exanple:
INPUT SIUDENr VIA Sl'UDSEI' AT IAST-NN-1E

= "JCl\JES

II •

All students whose last name is JOOES are accessed.
I

WITfDJT WPLICATES clause suppresses the input of duplicate
recx>rds which satisfy the key oondition.

'!he

Exanple:
INPUT SI'UDEllr VIA Sl'UDSEI' AT IAST-NAME = "JaOlES II
AND FIRST-NAME = "JaiN" WITfDJT IlJPLICATES.

The sruomI'. record for the first student
J<EES is retrieved using the set STUDSEl'.

whose name is JCEN

J

Take this path if the data set itself is to be accessed.

K

The ~-Ill\TA ~y clause is valid for data sets that have key
data; it provides a means of accessing ally the key data in the
set tables. '!be data set nust be given because the infonnation
fran the set tables is transferred fran the user work area for
the data set. ftJwever, the data set itself is not accessed.
'lberefore, items of the data set which are not key data must not
be referenced in the rePJrt language statement.

Exanple:
INPUT BDKS VIA BlX KE,Y-mTA

In this exanple,
input.

all key data

4 -

~Y.

associated

90

with the set BJX is

DATA-SI'RUcruRE CIAUSE

The Data-structure Clause is used to specify the name of a data
structure Yihose records are to be accessed, as well as the method to be
used in accessing it.
The syntax for the Data-structure Clause is as follows:
A

---> <system-file-data-structure clause>------------>

I
I

I
I

B

I--><DMS I I data-structure clause>--------------------->I
The paths of this syntax diagram are explained below:
Path

Explanation

A

Take this path to access a system file.

B

Take this path if a IMS I I data structure clause is to be input.

4 - 91

peN 1177185-002

DATE-<XJWERT FUNCTICN

A Date-convert Function is a nonstatistical function used to convert a
data item or group stored with a particular <date fonnat> to a numeric
type data item that represents the same date, but a different fonnat.
(The DIMVMYY-DATE fonnat is an exception; it is changed to a string type
data item.) All date conversicn is done using a 4-digit year. If the
date fonnat specified is for two digits, the current century is added to
the 2-digit year. When converting to a fonnat with a 2-digit year, the
century is stripped from the year.
Example:
YYDDD-DATE (r+IDDYY INVOICE-DATE)

INVOICE-DATE is a data item or group which is cx:>ded in the M4DDYY fonnat
with
a 2-digit year.
The functicn
converts
this to a YYDDD
representation.
When processing date conversions, all dates are converted to 4-digit
years if necessary.
When a date contains a 2-digit year, the date is
converted to a 4-digit year by adding the current century to the year
specified in the date.
mixing dates containing 2- and 4-digit years, care must be taken
that the size of the result data name is large enough to hold a date
with a 4-digit year. For exanple, the following syntax will not \YOrk as
intended because the size of NEW-DATE is not large enough to hold the
converted date with a 4-dig-it year:

When

Nmi-DATE IS DIM1YYYY (YYDDD OID-DATE) NUM (6).

The

above syntax will work correctly if the new date fonnat is
The correct syntax for a 4-digit year is the following:
NEW-DATE IS DIM1YYYY. (YYDDD OLD-DATE) NUM (8).

peN 1177185-002

4 - 92

D~.

REroRrER III may not detect all problems of this type, especially if the

resul t is used later in another calculatioo.
the following:

year,

When

the

The nost ccmnon errors are

1.

Fbr a 2-digit
century.

year

is always

the current

2.

Fbr a 4-digit year, When the current century is repeated twice
within the year.

These erroneous dates may not be detected unless a date such as a leap
year causes an invalid date exception for that year.

In the present description of the Date-convert
Functicn, \VOrds signifying the type of date fonnat
(for exarrple, JULIAN) are no longer indicated. Chly
letters signifying the actual date for.rnat (far
example,
YYDDD)
are
indicated.
lbwever,
REPoRrER III will
still
recognize
the
words
signifying the type of date fonnat (for example,
JULIAN) if used in a report specification.

4 -

92A

peN 1177185-002

The syntax for the Date-convert Function is as follows:

o
L
( --------><data - - > ) ->
1
1 name>
1
1
1
1M
1
\
1 B
I
1-----> l-M)DY'YYY-DATE - > 1
I-><date ->+
\
1
format>
1
1
1
1 C
I
I
1
\ - - - - > YYDDD-DA~ - - - > I
1 N
I
+--> DATE -------->+
\
1 0
1------> YYYYDDD-DA~ -->
A

-------->~~-DA~----->

\

I E
1------> YYr+lDD-DATE ---->
1

1

F

1----> YYYYr+IDD-DATE -->
1
1

G

1------> DDt+1YY-DA~ ---->
1

1 H
1-----> DIM1YYYY-DATE -->
1
1 I
1------> DDDDD-DATE ---->

I
1

J

1-----> DJ:M.1MYY-DATE --->
1
1

K

+------>

D~-DATE->+

PCN 1177185-002

4 -

92B

The paths of this syntax diagram are explained below. In the following
path descriptions, DD or DDD refers to days, r+1 or l+1M refers to nonths,
and YY or YYYY refers to years.
Path
A

Explanation
Take this path to specify that the data item or group
converted to a 6-digit integer in the date fonnat l+IDDYY.

be

Example:
~YY-DATE

(YYDDD INVOICE-DATE)

INVOICE-DATE is coded in the fonnat YYDDD.
converts INVOICE-DATE to the fonnat ~DYY.
B

This

function

Take this path to specify that the data item or group be
convertoo to an 8-digit integer in the date fonnat r+1DDYYYY •
This fonnat uses a 4-digit year.
Example:
MMDDYYYY-DATE (YYDDD INVOICE-DATE)
INVOICE-DATE is coded in the format YYDDD.
This function
converts INVOICE-DA'lE to the fonnat T+IDDYYYY.
Since the date
fonnat for INVOICE-DATE contains a 2-digit year, the current
century is added to the year before the conversion takes place.

C

Take this J;E.th to specify that the data item or group
converted to a 5-digit integer in the date fonnat YYDID.

be

Example:
YYDDD-DATE (r-t-IDDYY INVOICE-DATE)
INVOICE-DATE is coded in the fonnat M®DYY.
converts the INVOICE-DATE to the fonnat YYDID.
D

This

function

Take this J;E.th to specify that the data item or group be
converted to a 7-digit integer in the date fonnat YYYYDDD. This
fonnat uses a 4-digit year.
Ex~le:

YYYYDDD-DATE (M1DDYY INVOICE-DATE)

4 -

93

PCN 1177185-002

INVOICE-DATE is coded in the fonnat r+IDl)YY.
'!his function
converts INVOICE-DATE to the fonnat YYYYDDD.
Since the date
fonnat for INVOICE-DATE contains a 2-digit year, the current
century is added to the year before the conversion takes place.
E

Take this path to specify that the data item or group
converted to a 6~igit integer in the date fonnat YYl+1ID.

be

Example:
YYlvMDD-DATE (YYDDD INVOICE-DATE)
INVOICE-DATE is cxx:1ed in the format YYDDD.
converts INVOICE-DATE to the fonnat YYl+1ID.
F

'!his

function

Take this path to specify that the data item or group be
convertoo to an 8~igit integer in the date fonnat YYYYl+IDD.
This format uses a 4-digit year.
Example:
YYYYMMDD-DATE (YYDDD INVOICE-DATE)
INVOICE-DATE is coded in the format YYDDD.
'!his function
converts INVOICE-DATE to the fonnat YYYYMvlDD.
Since the date
fonnat for INVOICE-DATE contains a 2~igit year, the current
century is added to the year before the conversion takes place.

G

Take this path to specify that the data item or group
converted to a 6~igit integer in the date fonnat Dm.1YY.

be

Example:
DJ>MYY-DATE (YYDDD INVOICE-DATE)
INVOICE-DATE is ccrled in the fonnat YYDDD.
converts INVOICE-DATE to the fonnat Dm.1YY.
H

'!his

function

Take this path to specify that the data item or group be
convertoo to an 8-digit integer in the date fonnat ~.
'!his format uses a 4-digit year.

peN 1177185-002

4 - 94

Exanple:
DDf.MYYYY-DATE (YYDDD INVOICE-DATE)
INVOICE-DATE is cx::xied in the fonnat YYDDD.
'Ibis function
converts INVOICE-DATE to the fonnat DLM1YYYY.
Since the date
fonnat for INVOICE-DATE contains a 2-digit year, the current
century is added to the year before the conversion takes place.
I

Take this p:ith to specify that the data item or group be
converted to a 5-digit integer in the date fonnat DDDDD. The
DDDDD fonnat consists of the nurriber of days fran the BASE-DATE
not including the BASE-DATE.
The default
1900001).

BASE-DATE

is January

1, 1900 (YYYYDDD

format of

Exanple:
DDDDD-DATE (l+IDDYY INVOICE-DATE)
If INVOICE-DATE, coded in the date fonna.t M®DYY, was 091483,
then the result returned would be 30571. This is canputed as
follows:
365

*

83

= 30295

30295 + 20

= 30315

30315 + 257

30572 - 1

= 30572

= 30571

The nuIriber of days in the year times the
nUIriber of years. The default BASE-DATE
year field is 1900.
The year field of
INVOICE-DATE
is 83 giving 83 years.
Since the date fonna.t for INVOICE-DATE
contains a 2-digit year, the current
century is added before any calculations
take place.
Days added for the nUIIiber of leap years
which have occurred fran the BASE-DATE.
The day of the year Which represents
September 14, 1983 (09/14/83).
Subtract the nuniber of days represented
by the DDD field of the BASE-DATE.
The
default BASE-DATE is YYYYDDD format of
1900001 (January 1, 1900).

4 - 94A

peN 1177185-002

J

Take this path to specify that the data item is to be converted
to a 7-character string in the date fonnat IDt+1YY, where DO is
a 2-digit field representing the day of the nonth fran 1 to 31,
l+M is a 3-character string representing the month, am YY is a
2-digit field representing the year from 00 to 99.
Example:
DIMJMYY-DATE (YYDDD INVOICE-DATE)

If INVOICE-DATE, coded in the fonnat YYDDD, was 83257, then the
resul t 'WOuld be l4SEP83.
Refer OD the Abbreviated Month List option if the 3-Character
month field is desired in a language other than English.
K

Take this path to specify that the data item be converted to a
9-character string in the date fonnat I:>DM+1YYYY, where DO is a
2-digit field representing the day of the month fram 1 to 31,
Mt+1 is a 3-character string representing the nonth, am YYYY is
a 4-digit field representing the year from 0000 to 9999.
Example:
DIM1MYYYY-DATE (YYDDD INVOICE-DATE)

If INVOICE-DATE, coded in the fonnat YYDDD, was 83257, then the
result
would be l4SEP1983.
Since
the date fonnat for
INVOICE-DA~'1f:
contained a 2-digit year, the current century is
added to the year before the conversion takes place.
Refer to the Abbreviated Month List option if the 3-character
month field is desired in a language other than English.
L

Take this path if the date OD be converted is coded in the
default fonnat of l+IDDYY without delimiters.
The default
assumes a 2-digit year.
Example:
YYDDD-DATE (INVOICE-DNI'E)

peN 1177185-002

4 -

94B

M

Take this path to specify explicitly the fonnat under which the
date to be converted is currently coded. (Refer to DATE FORMAT
in this section for a full explanation of date fonnats.) Use
this path to convert dates with 4-digit years.
Example:
YYDDD-DA'l'E (DIM1YYYY INVOICE-DATE)
In this example, the date to be converted (INVOICE-DATE)
coded in the fonnat DIM1YYYY and contains a 4-digit year.

N

Take this path if the date to be converted
which is coded in the fonnat YYt+1ID.

is

is the system date,

Example:
DATE-TODAY IS {DIIMYY (DATE)

o

Take this path to specify the name of the date to be converted.
The <data name> must represent either a date item or group coded
in the specified <date fonnat>. (Refer to mTE FORMAT in this
section for a full explanation of acceptable fonnats.)

In the examples presented above, INVOICE-DATE is the name of the date to
be converted.

4 - 95

peN 1177185-002

DATE FORMAT

Dates to be converted or aged consist of digits and optional delimiters.
The digits and de I llniters can be stored in the following ways: string or
alphanumeric;
numeric display;
and numeric
canputational.
The
Date Format clause specifies how a particular date is ooded so that it
can be accessed properly by the REPORl'ER III System.
NOTE

In the present description of the Date Fbrmat
clause, words signifying the type of date fonnat
(for example, JULIAN) are no longer indicated. cnly
letters signifying the actual date format (for
example,
YYDDD)
are
indicated.
However,
REPORrER III will
still
recognize
the
words
signifying the type of date format (for example,
JULIAN) in a report specification.
The syntax for the Date Format clause is as follows:

C

A

------------------------------------------>
I
I
I
I B

1

+---DELIMlTED-----+

MMDDYY

----------------->

ID

1-------->

I
IE

MMDDYYYY

----------->

1--------> YYDDD -------------->
1
1 F

1--------> YYYYDDD ------------>
1

IG

1--------> YYl+IDD ------------->
i
IH

1------>

~

1

1 I

1-------->
I

1

DDMMYY

DDMMYYYY

1

I K

+-------->
PCN 1177185-002

------------->

J

1-------->

4 - 96

DDDDD

---------->

----------->

-------------->+

The paths of this syntax diagram are explained below.

Path

E;Planatian

A

Take this path if the date does not have delimiters to separate
the fields. In this case, the date consists solely of digits.

B

Take this path if the date is coded with delimiters to separate
the fields canprising the date. The delimiter used can be any
character (usually a slash or a hyphen) and is ignored by the
REPORl'ER III System. DELIMITED is used so that the system can
properly locate the date fields. '!be date can be a string item
or a group of display data items.
It is assumed that each
delimiter is only one Character in length.
WARNING

This path carmot be used in conjllllction
See path K for additional explanation.
C

with path K.

Take this path if the date is coded in the fonnat MvIDl)YY.
'!be
nondelimited case consists of six digits in the fonnat ~DYY.
The delimited case consists of eight Characters in the format
~/DDlYY.
~ must be 01 through 12: DD must be 01 through 31:
YY must be 00 through 99, standing for the years 00 through 99
in the current century.
Example:
The date February 20, 1988 is expressed as follows:
Nondelirnited:
Delimited:

D

022088
02/20/88

Take this path if the date is coded in the fonnat ~YYYY. '!be
nondelimited case consists of eight digits in the format
MYJDDYYYY.
'!be delimited case consists of ten characters in the
fonnat ffM/DD/YYY'f.
MM must be 01 through 12: DD must be 01
through 31: YY must be 0000 through 9999. This date format uses
a 4-digit year.

4 - 97

peN 1177185-002

Exarrple:
The date February 20, 1988 is expressed as follows:
Nondelimited:
Delimited:
E

022088
02/20/1988

Take this 12th if the date is coded in the fonnat YYDDD.
The
nondelimited case consists of five digits in the fonnat YYDDD.
The delimited case consists of six characters in the fonnat
YY/DDD.
YY must be 00 through 99, standing for the years 00
through 99 in the current century; DDD must be 001 through 366,
standing for the nuniber of days since the beginning of the year.
Example:
The date February 20, 1988 is expressed as follows:
Nondelimited:
Delimited:

F

88051
88/051

Take this 12th if the date is coded in the fonnat YYYYDDD. The
nondelimitErl case consists of seven digits in the fonnat
YYYYDOO. The delimited case consists of eight characters in the
fonnat YYYY/OOO.
YYYY must be 0000 through 9999; ODD must be
001 through 366, standing for the nuniber of days since the
beginning of the year. This date fonnat expects a 4-digit year.
Exanple:
The date February 20, 1988 is expressed as £allows:
Nondelimited:
Delimited:

G

1988051
1988/051

Take this 12th if the date is coded in the fonna.t YYl+IDD.
rrhe
nondelimited case consists of six digits in the fonnat YYI+UD.
The delimited case oonsists of eight characters in the format
YY/l'M/OO.
YY must be 00 through 99, standing for the years 00
through 99 in the current century; l41 must be 01 through 12; DD
must be 01 through 31.
Exanple:
The date February 20, 1988 is expressed as follows:
Nondelimited:
Delimited:

peN 1177185-002

880220
88/02/20

4 - 98

H

Take this path if the date is coded in the format YYYYl+1ID. 'Ihe
nondelimitEd case consists of eight digits. in the fcmna.t
~.
'!he delimited case consists of ten characters in the
fonnat YY'iY/lIM/ID.
YYYY llUlst be 0000 through 9999: 1+1 must be
01 through 12: ID must be 01 through 31. This date format
expects a 4-digit year.
Exanple:
The date February 20, 1988 is expressed as follows:
Nondelimited:
Delimited:

I

19880220
1988/02/20

Take this path if the date is coded in the fonnat DJ:M.1YY.
'Ihe
nondelimitEd case consists of six digits in the fonnat ID+1YY.
The delimited case consists of eight characters in the format
DD/t!I!1/Y'f.
DD must be 01 through 31: ~ must be 01 through 12:
Y'f must be 00 through 99, standing for the years 00 through 99
in the current century.
Exanple:
The date February 20, 1988 is expressed
as follows:
Nondelimited:
Delimited:

J

200288
20/02/88

Take this path if the date is coded in the format DIH1YYYY. 'Ihe
nondelimited case consists of eight digits in the fonnat
DIM-1YYYY.
'!he delimited case consists of ten characters in the
fonnat DD/l'IIi/YYYY.
DO Imlst be 01 through 31; m must be 01
through 12; YY.YY nRlst be 0000 through 9999.
'Ihis date format
expects a 4-digit year.
Example:
The date February 20, 1988 is expressed as follows:
Nandelimited:
Delimited:

20021988
20/02/1988

4 - 9SA

peN 1177185-002

K

Take this path if the date is coded in the formo.t DDDDD. This
date is nondelimitErl and consists of five digits in the fonnat
DDDDD, standing for the nunber of days fran the BASE-DATE.
Either the word CENTURY or DDDDD may be used. For exanple, if
the date of Septeniber 14, 1983 is used with the default
BASE-DATE of January 1, 1900, the DDDDD date fonnat would be:

30571
Refer to the BASE-DATE option and the Date-ccnvert function for
additional infonnation.

peN 1177185-002

4 - 98B

~ II mTA-STRUCIURE CLAUSE
------~~---

:oMS II Data-structure Clauses allow access to various systems I
sets.
For the A Series of systems, the Data-structure Clause
enables input of A Series OMS II data base global data.

data
also

You should be familiar with the structure of a data base before using
OMS II Data-structure clauses.
Constructs defined in the Data and
Structure Definition Language (DASDL) can affect retrieval of data from
the ~ta base. These constructs are not accessible to REFORI'ER III. For
eXaIII>le, when an autanatic subset defined in the DASDL uses a WHERE
clause to specify the conditions by which data is to be retrieved fran
the data base, REFORI'ER III cannot access the WHERE clause.
However,
the refOrt generated by REFORl'ER III is affected by the conditions of
the WHERE clause and may not contain all the infonnation you need.

A SERIES OF

SYb~

For the A Series of Systems, the A Series ~ II Data-structure Clause
enables input of A Series DMS II data base global data or records from
an A Series ~ II data set. All OMS II data structures referenced in
the INPUT statement must belong to the same data base or logical data
base.
The syntax for the A Series

~s

II Data-structure Clause is as follows:

A

-----><data-base clause>---->

I
I

B

I
I

+--><data-set clause>->+
The paths of this syntax diagram are explained below:

Path

Explanation

A

Take
this path to specify input of global
A Series a.1S II data base or logical data base.

B

Take this path to specify input of an A Series IMS II. data set.

4 -

99

data

fran

a

peN 1177185-002

B 1000 SERIES OF SYSTElo1S

For the B 1000 Series of Systems, the B 1000 IMS II Data-structure
Clause enables access to a B 1000 OMS II data set.
All data sets
referenced in the INPUT statement nust belong to the same data base.
You can input eIribeddErl data sets, provided the data set in which they
are enibedded has been specified previously. Ebwever, specification of a
data set does not cause autanatic access to its embeddErl data sets; to
access an enibedded data set, you must name it explicitly.
Exanple: ("CLIENT" )
INPur ACCI'S-RECV.

All menibers
input.

(that

is, all accounts)

of the data

set ACCrS-RECV

Example:
INPUT UNIV-couRSES.

All menibers of the data set UNIV-COURSES are accessed.
The syntax for the B 1000 OMS II Data-structure Clause is as follows:
A

C

-><data--------------------------------->(1)
set name>
I
I I

I

I

B

+->FROM <data->+
structure name>

I

D

-+-->VIA <set name>--> (2)

(1)---------------------------------->

I
I

E

(2)---------------------------------->+

I
IF

I
I

G

+->AT <key condition>---------------->+

--

I
I

I
I

H

+-->WITHOUT DUPLICATES->+

peN 1177185-002

4 -

100

are

The paths of this syntax diagram are explained below:
~

Explanatioo

A

Take this path if it is not necessary to clarify the cne-tcHXle
dependence of the data set 00 another input data structure.

B

The

F1U4 clause nust be
CXDiitions exist:

1.

used

Whenever

the

following

'Dle data set is to be accessed in a ooe-tcHXle

two

nanner

fran another data structure.
2.

access to that .data set depends (Xl the
value of a data item in the other data structure.

'lhe specified

name of the data structure containing the data item DUSt be
specified.
'!his type of dependence is used when a key in a set
spanning the data set is COIpared against the value of a data
item in another data structure.

The

Exanple:
INA1l' WIV-<DURSES, UNIV-~ ~
WIV-<DURSES VIA SP-sEl' AT SP-I<EY = PK>F.

In

this exanple, UNIV-<DURSES and UNIV-PE:RSC:tiNEL are two
disjoint data sets. SP-SEl' spans llnv-PERSa.tiEL with synix>lic
key SP-KEY.
If PROF is a data item of lInV-<DURSES, the ~
clause is needed to indicate the dependence of UNIV-PERSatiEL a l
the value of PROF in UNIV-<DURSES. All menilers of UNIV-alJRSES
are accessed sequentially: for each UNIV-<DURSES record, the
cxxresponding UNIV-PERSCH:mL record which satisfies the key
CXDiition is accessed (see Figure 4-2).

4 - 101

00000100
00000150
00000200
00000300
00000400
00000600
00000700
00000800
00000900
00001000
00001100
00001200
00001300
00001400
00001500
00001600
00001700
00001800
00001900
00002000
00002100
00002200
00002300
00002400
00002500
00002600
00002700
00002800
00002900
00003000
00003100
00003200
00003700
00003800
00003850
00003900
00004000
00004100
00004200
00004300
00004400
00004500
00004600
00004700
00004800
00004900
00005000
00005100
00005200
00005250
00005300
00005350
00005400
00005500
00005600
00005700
00005800
00005900

'THIS DASDL PROGRAM GIVES EXAMPLES
top THE VARIOUS CONSTRUCTS USED IH
'DASDL TO DESCRIBE A DATA BASE
PARAMETERS (
BUFFERS • 10
):
UNIV-COURSES DATA SET -MAIN FILECRS-NAME GROUP (
DEPARTMENT ALPHA (2);
LEVEL NUMBER ( 3 ) ;
CRS-NO NUMBER(4):
NOPROF NUMBER (2);
DAYS-OF-WEEK GROUP (
MON NUHBER(l);
TUES NUMBER ( 1 ) :
WEDS NUMBER ( 1 ) :
THURS NUMBER ( 1 ) ;
FRI NUMBER(l);
SAT NUMBER(1);
BUILDING NUMBER(3);
ROOMNuMBER ALPHA (2) ;
COURSENAME ALPHA (24);
FLAG-BITS ALPBA(12);
HOURSCRDT NUMBER(4);
CLASS-SIZE NUMBER(2);
PROFESSOR SUBSET OF UNIV-PZRSOBRZL, POPULATIOB - 3,
BOOKS UNORDERED DATA Sft (
LC NUMBER (9);
TITLES ALPHA ( 60 ) ;
AUTHR ALPHA(30);
STUDENTS SUBSET OP HSP KEY IS
(LNAME,PNAME)DUPLlCATZS,
POPULATION - 300)
POPULATION - 1000:
UNIV-C-SET ORDERED SET OP URIV-oouasZS KEY IS
(CRS-NAME) :
UNIV-PERSONNEL DATA SET(
NAME GROUP(
LASTNAME ALPHA(15);
FIRSTNAME ALPHA ( 10) :
SEX NUMBER ( 1 ) ;
AGE NUMBER ( 2 ) :
SSNUM NUMBER(9):
DPT ALPHA ( 4) :
RANK ALPHA ( 1 ) :
SALARY NUMBER(S7.2);
COURSES SUBSE'l' OP URIV-COURSZS, POPULATIOB • 8,
ADDRES SUBSET OF ADR:
SUPR SUBSET OP UNIV-PERSONBEL):
Ss-u-P ORDERED SET OF UHIV-PERSONRZL KEY IS
(SSNUM) :
U-P SET ORDERED Sft OF UHIV-PZRSONI1ZL lCZY IS
(LASTNAME, PI RSTNAME ) DUPLlCAftS:
MSF DATA SET(
SSNO NUMBER(9):
NONAM NUMBER(l):
LNAME ALPHA ( 30 ) :
MNAME ALPHA ( 30) :
PNAME ALPHA ( 30) :

Figure 4-2.

B 1000 Series Data Structure
Definition Language (D.Z\SDL)
(Sheet 1 of 2)

4 - 102

00006000
00006100
00006200
00006300
00006400
00006500
00006600
0000&700
00006800
00006900
00007000
00007100
00007200
00007300
00001400
00001500
00007600
00007100
00001800
00007900
00008000
00008100
00008200
00008300
00008400
00008500
00008600
00008100
00008800
00008850
00009000
00009100
00009200
00009300
00009400
00009500
00009600
00009100
00009800
00009900
00010500
00010600
00010650
00010700
00010800
00010850
00010900
00011000
00011100
00011150
00011200
00011300
00011400
00011450
00011500
00011600

CAMPUS-ADDRESS GROUP(
DORM ALPHA ( 6) ,
ROOM NUMBER (4) ,
POBOX NUMBER(4)7
PHONE NUMBER(7),
HD HUMBER ( 2) :
DEGREE ALPHA (4) OCCURS 6 'tIMBS:
TOTHRS NUMBER ( 3 ):
TOTOP NUMBER ( 3) :
GRADE-POIHT-AVG HUMBER(3.2),
MJR HUMBER ( 3 ) 7
AMJR ALPHA(18):
SSEX NUMBER(l);
SAGE WMBER(2);
HOME-ADDRESS SUBSET OF ADR,
QUARTER ORDERED DATA SET(
QTR ALPHA ( 4) :
Q'l"l'HRS HUMBER ( 2 ) :
QTROP NUMBER(2),
CORSES ORDERED DATA SET (
TYPECOURSE HUMBER ( 1 ) ,
YR NUMBER(2):
o NUMBER(2),
GCRS SUBSET OF lDJIV-COURSBS,
GGD ALPHA(2) 1
TITLE-OF-PAPER ALPHA(30),
PPRGD ALPHA(2),
POPULATIOH • 47
CSET ACCESS TO CORSES BY IS
(TYPECOURSE) DUPLlCA't&S)
POPULATION • 5000:
OSET ACCESS TO QUARTER DY 18 (orR» J
HSFSET ORDERt:D SET OF MSP KEY IS (SSNO),
ADR DATA SETt
FACULTY-STUDEHT HUMBER(I),
SNO NUHBER(9);
ADLN ALPHA ( 54) OCCURS 9 'tIMES
ZIPC NUMBER(S)
PHON NUHBER(10);
SSAD ORDERED SET OF ADR KEY IS (SIlO),
BOOKS (

AREASIZE • 500,
TYPE - UNORDERED LIST
BLOCKSIZE • 5);
BOOKFILE STORAGE FOR BOOKS (
TITLE-UNIV/LIBRARY,
AREAS • 10):
UNIV-C-SET(
TABLESIZE • 12:
AREASIZE • 10,
TYPE • INDEX SEQUEHTIAL,
LOADFACTOR • 9):
UNIV-PERSONNEL(
PRIME,
POPULATION • 997):
INITIALIZE:
$FlLE STRUCTURE

Figure 4-2.

B 1000 Series Data structure
Definition I.a.D3Uage (DASDL)
(Sheet 2 of 2)

4 - 103

Take this path if the specified data set is not to be accessed
via a set. An erri>edded, standard data set DUst be accessed via
a set.

C

Exanple:
lNP(1l' UNIV-~.

All JneIl'bers of the data set UNIV-PERSONNEL are OOtained.

Exanple:
UNIV-a:xJRSES (ID>KS VIA 1D)I(Sgl').

lNP(1l'

All JneIl'bers of the data set UNIV-a:xJRSES are accessed. For each
meai:ler of t.N.[V-a:xJRSES, all related meIli:lers of the EI'lbedded data
set ID>KS are accessed.
D

Take

this

path

if the

specified

data

set is to be accessed

thrcugh a spanning ·set.

Exanple:
lNP(1l'

UNIV-a:xJRSES VIA UNIV-C-SET.

In this exanple, all JneIl'i:)ers of the data set UNIV-a:xJRSES
accessed through the spanning set UNIV-C-sET.

are

Exanple: ( "c:::I..UNI'" )
aBr-A!rr-INro(INVOICZ-INFO
VIA INVOICES).

lNP(1l'

INVOICE-INro reoords of the erri>edded, spanning subset
INVOICES are accessed for each aJST-AtrI'-INPU rec:x>rQ accessed.

All

E

Take this path if retrieval keys are not to be used to access
specific JneIl'bers of the data set. In this case, all the data
set IlleITbers within the given set are accessed.

F

AT clause allows selective retrieval of menilers of the
specified data set using the keys associated with the spanning
set.
A <key oonditial> DUst be a valid B 1000 I»6 II selectioo
expression for the specified set, including the generalized
selection expression.
The

4 - 104

Exanple:
INPt1l' UNIV-<nJRSES VIA UNIV-C-SET AT
JEPARlMENl'
II~" AND LEVEL
3~
~-oo

record
accessed.

The

=

= 510.

=

-

for the graduate

level

-CX>Urse

Psychology

510 is

Exanple:
INPt1l' sruomI'S VIA S'I'UOSEl' AT
Ir-NH-1E = "J~I'.

All students whose last name is J<EFS are accessed.
tnis path if all records
are to be inplt.

G

Take

H

'lhe

whiCh satisfy

the key conditioo

WI'lHXJT IlJPLICATES clause suppresses the input of duplicate
records 'ltbich satisfy the key conditiQ'l.

Exanple:
INPt1l' STUDENl'S VIA S'I'UOSEl' AT L-NAME
WI'1HXJT IlJPLICATES.

= "JCtiES"

'!be first STlJDENl' record with L-NAME equal to
through the set S'I'UOSEl'.

B 2000/B 3OOO/S 4000 SERIES OF

Jams

is retrieved

SYS'l'.EH)

For the B 2ooo/S 3OOO/S 4000 Series of Systems, the B 2000/B 3OOO/B 4000
DIS II Data-structure Clause enables access to a B 2000/8 3OOO/B 4000
IMS II data set. All data sets referenced in the lM'ln' statement nust
belOOl to the same 1M) II data base. You can input enbedded data sets,
provided the data set in which they are enbedded has been specified
previously.
ltJwever, specificatioo of a data. set does not cause
autanatic access to its enbedded data sets; to access an enbedded data
set, you IlUlst name it explicitly.

Exanple:
lNPl1I' tHtV-<XlJRSFS.

4 - 105

A listirw3 of the Data Structure Definitial Language (DASDL) used in the
exanple data base is presented in Figure 4-3.

'!be

syntax for the B 2000/B 3000/8 4000 IJ6 II Data-structure Clause is

as follows:

-><data-set
name>

A

c

IB

D

-------------------------------------->(1)
I

-

-

+-->PR:M <data-structure ->+ +->VIA <set
-> (2)
name>
name>

(1)------------------------------------------------>
E

(2)--------------------------------------------->+

I
IF

G

+->!!£. <key ccmdi.ticn>----------->+

I
I

H

+->WI'lKl11'
---.;;............-

-

I

WPLI~->+

4 - 106

OPl'IORS ( S'l'ATISTICS SET ) :
UIIIV-COURSES STANDARD DATA Sft
(

COURSE-ID
GROUP
DEPARTMERT
ALPHA(4),
LEVEL
NUMBER(3),

>r

DAYS-oP-WEEK
MON

FIELD

'TUZS

WED
TBURS
PRI
SAT
):

ALPBA(30) ,
ALPRA(3h
NUMBER(4) :
ALPBA(24) ,
HUMBER(4) ,
NUMBER(2),
SUBSET OF URIV-PERSOIIIIZL DY DMZ
INDEX SEQUZII'l'IAL r
STANDARD DATA Sft

ORIGINATOR
BU.ILOING
ROOM
COURSDAMZ
CREDIT-ROURS
CLASS-SIZE
INSTRUCTOR
BOOKS
(

BOOK-TI'l'LE
BOOK-AU'l'BOR

ALPHA(50) 1
ALPHA(lS) ,

h
BOOK-SET

SET OF BOOKS KEY BOOIt-AUTIIOR IBEX
SEQUD'l'IAL DUPLICATES LUt'r

),

UIIIV-COURSES-Sft

Sft OP URIV-COURSES KEY IS COURSE-ID
INDEX SEQUD'l'IAL DUPLlCAftS LAS! r
UNIV-COURSES-LOC SET OP ONIV-COURSES KEY IS (BUlLOI_,
ROOM)
INDEX SEQUER'l'IAL DUPLICATES LU'l'r
mlIV-PERSOBllZL STANDARD DATA SET
(

NAME

aROUP

(

ALP8A(20) :
ALPRA(lO) :

LASftlAME
FIRS'l'RAME

h
ALPHA(l) :
NUMBER ( 9) :

SEX
SSRUM

ALPHA(4) :

DEPT
COURSES

SUBSET OF ONIV-COURSES KEY IS COURSE-ID
INDEX SEQUENTIAL DUPLICATES LAST:

ONIV-PERS-SSNUM
ONIV-PERS-NAME
ONIV-PERS-DEP'l'

Figure 4-3.

SET OP ONIV-PERSONREL KEY IS S8BUM
INDEX SEQUEN'l'IAL DUPLICAft8 LU1',
SET OF ONIV-PERSONNEL ItEY IS SAME
INDEX SEQUEN'l'IAL DUPLICATES LAST:
SET OF ONIV-PERSONNEL KEY IS DEPT
INDEX SEQUENTIAL DUPLICATES LAST:

B 2ooo/B 3OOO/B 4000 Series Data
Structure Definition I.an'3Uage (DASDL)

4 - 107

The paths of this syntax diagram are explained belC7N:
Path

ExplanatiCXl

A

Take this path if it is not necessary to clarify the one-to-ale
dependence of the data set on another input data structure.

B

The FROM clause
conditions exist:

must

be

used

Whenever

the

following

two

1.

'nle data set is to be accessed in a one-to-ale
fran another data structure.

marmer

2.

'!he specified access to the data set depends 00 the
value of a data item in the other data structure.

The name of the data structure oontaining the data item IlUlSt be
specified.
This type of dependence is used when a key in a set
sparming the data set is cxrcpared against the value of a data
item in another data structure.
Exanple:
INPUT UNIV-<DURS&S,

UNIV-P~

UNIV-axJRSES VIA UNIV-PERS-NAME
AT NAME = ORIGINA'IOR.

FIQt1

In
this exanple, UNIV-<DURS&S and UNIV-P~ are two
disjoint data sets. UNIV-PERS-NAME spans UNIV-PERSJNNEL with
symbolic
key NAME.
If ORIGINA'lUR
is a data
item of
UNIV-<DURSES,
the FKM clause is needed to indicate the
dependence of UNIV-P~ on the value of ORIGINA'roR in
UNIV-axJRSES.
All members
of UNIV-<DURS&S
are accessed
sequentially; for each UNIV-axJRSES record, the oorrespaxiing
UNIV-PERSCH'lEL record which satisfies the key cornitioo is
accessed.
C

Take this path if the specified data set is not to be accessed
via a set. An embedded standard data set must be accessed via a
set.
Exartple:
INPUT UNIV-PERSONNEL.

All members of the data set UNIV-PERSONNEL are input.

4 - 108

Exanple:
INPl1r WIV-<XXJRS!S (BXJ(S VIA BXJ<-sE'l') .•

'All meailers of the data set UNIV-cDJRSES are accessed. Par eadl
menber of UNIV-cDJRSES, all related menIlers of the EIIbedded data
set BXJ(S are accessed.
D

this path if the
through a spanning set.

Take

specified data

set is to be accessed

In this exanple, all meabers of the data set WIV-alJRSES
accessed usil¥1 the spanni.r¥J set UNIV-<XlJRSES-SE'l'.

are

Exanple:
INPl1r aJST-Aa!T-INro (INVOlCE-!Nm
VIA INVOICES).

All INVOlCE-IN!O records of the erdJedded, spanni.r¥J subset
INVOICES are acoessed for each ClJS'l'-ACCT-INR> record accessed.

this path if retrieval keys are not to be used to access
specific mellters of the data set. In this case, all the data
set uailberS with the givan set are accessed.

E

Take

F

AT clause allows selective retrieval of uaaiJers of the
specified data set usil¥1 keys asscx:iated with the spanning set.
A <key cxmditicn> nust be a valid B 2ooo/B 3OOO/B 4000 1M) II
se1ectioo expressioo for the specified set.
The

Exanple:
INPl1r WIV-alJRSES VIA t6IV-cDJRSES-lDC AT
BJIIDIm == "PSY" AND KXJt == 214.

All courses held in PSY 214 are input.
Exanple:
INPl1r STl.JIDll'S VIA S'l\JDDll'-SEl' AT
L-NAME - "JOOES".

All students whose last name is

Jca=:s

4 - 109

are accessed.

G

Take

this path if all records

Which satisfy

the key condition

are to be inplt.
H

'lhe

WI'1HX1r OOPLICATES clause suppresses the inplt of duplicate
~ch satisfy the key CCI1di.tian.

records

Exanple:
INPUl' S'lUDENl'S VIA STUDENl'-SET AT
L-NAME = "J~" WI'llD1I' WPLICATES.
The

first

S'IUIJmmi

record

retrieved using the set

with

L-tW£

~~-SEI'.

4 - 110

equal

to

JCNES

is

The Editing Attributes specify a CDBJL editing picture ~ch defines how
a data item is to ~ when printed.
This picture overrides the
default
editing picture.
'!he editing picture specified is used
throughout. the report to print the data item value. '.the a:B>L picture
IIIlSt be enclosed in quotes with 00 leadiD3 blanks.
It is oot
syntax-checkedl therefore, yOl nust ensure that no CDlDL syntax error is
generated by the SUWlied picture.
If the editing picture is smaller
than the storage picture, truncatioo can result.

Exanple:
Wl'l'H PIClURE "$Z(4)9.GG"

associated

'!be

data item is printed

with a 0010.. editing

picture

of

$Z(4)9.99.

'!be syntax for the Editing Attributes specificatial is as follCMB:
-~~

PIcruRE "<CDBJL picture)" - )

that if the vocabulary beil'¥3 used has the ~CXl IlECDJAI,-POIm' IS
set, then the picture nust reflect this to ensure proper decimal
point aligment and prevent possible syntax errors 'AbeD OCIIpilirv1 the
report program.
Note

~

Exanple:
WITH PIC "Z.ZZ9, 99".

4 - III

ENI'RY FONCI'ICN
'!he ~ Function is a nalStatistical functioo used to convert values
of a data item to alternate item values according to a table ..nich was
previously defined via a TABLE statement. The value of the function is
determined by matdti.ng the value of a referenced data item with a table
entry and returning the correspalding a:lnversion value defined by the
table.
Exarrple:
ENI'RY (m TABLE 03 FOR I.DC-<DDE)

Table 03 \WlS previously defined as follC7N&: if lOC-<DDE has the value C,
the functioo has the value "ClfICAGO".
'!he

item attributes

described by the mI'RY Function are deteDllined

by

the characteristics of the calversioo values specified in the referenced
table.
'!he calversioo values in the ~le above are defined by the
table.
They are <string>s having a max.iJrun length of 11 characters.
this reasal, the item described by the ENI'RY Function is a
string-type item with an item value 11 characters in length.

For

'!be syntax for the ENI'RY F\mction is as £011"*11:

->ENI'RY (

.!!!

C
A
--------><nl.m'i::er>->pt)R <data name> ) ->

,

+->'mSIE->+

B
j
+--> <naD'e>->+

The paths of this syntax diagram are explained below.
A

If

a

table

identified

by

a

<nl.m'i::er >

is

to

be

used

for

axwersioo, it is referenced by taking this path. the <1UJItt)er>
rrust be given exactly as it was in the related TABLE statement.

4 - 112

B

If a table identified by a <name> is to be used fOl I:..Xlnversion,
it is referenced by taking this path.
ExaDple:

:mrRr (IN CITIES il:B lOC-Q)J)E)
In this exanple, the table beiBJ referenced III1st have been named
previously as CITIES in a TABLE statement.

ExaDple:

:mrRr (IN TABLE A RR X)
C

Take

this path to reference the data item
ocnverted based at the referenced table.

ExaDplea

:mrRr (IN TABLE 03 FOR UlC-Q)J)E)

4 - 113

~

value is to be

EXPRESSIOOS
An <expression> refers to an arithmetic expressioo, a string expressio.
or a Boolean expressioo.
An arithmetic expression specifies a numeric
value, a striD3 expressicn specifies a striBJ value, and a Boolean
expressioo specifies a Boolean value (TRUE or FAlSE). An expressioo can
be statistical or nonstatistical (refer to STATISTICAL EXPRESSION and
R:ESTATISTICAL EXPRFSSlOO in this section).
I

ARI~IC

EXPRESSI<E

An aritlunetic <expressioo> in its sinplest form is

CI1e

of the following:

1.

A <data name> Which references a numeric-value data item.

2.

A <nurd:ler>.

3.

An intrinsic

functicn or <EN1'RY functioo>

..tU.ch describes

a

numeric value.
Exanples:
CD;T

10
SAIARY
AVERAGE(SAIARY)

22.57
AGE(F'101 lNVOICE-IlM'A 'lO Da\TE)

DISC-TABLE OF PARl'-mx=[1,2]
CXlJNl'

A basic arithmetic e~ession describes a numeric operation to be
perfonned on two numeric data itans. The two numeric items are called
operands.
'!he numeric operation is expressed by ale of the following
~lic operators.

4 - 114

Operator

+

Additioo
Subtractioo
f.llltiplicatioo
Oivisi<Xl
Expcnentiatioo
Quotient remai.rder
Quotient integer

*
/
**

MJD

OIV

The syntax for a basic arithmetic expressiCXl is as follows:

- > <q>erand>-> <qlerator>-> <cpmmd.>

I

>

I

+-> «operand>-><operator>-><operand> )->+
'!be arithmetic operators for additicm (+) am aubtractim
preceded am followed by at least ate blank.

(-) JIIlSt. be

Exanp1es:

SAlARY/12
(JJANl'I'lY*UNIT-<DST
'1HIRIY-IlAYS-WE + SlX'1Y-Il\YS-OOE
{(JJANl'l'lY*UNIT-<DST )
(X - y)

A+ B

*

1.33

AGE (IN wmKS FlD1 0RtER-DA.TE 'ro [V)4'E) OIV 4
The <q>erand> of an arithmetic expressioo can be a Boolean expressioo
(refer to the discussi<Xl umer the heading lalLEAN EXPRESSIW).
When
this is the case, the value of the Boolean expressicn is interpreted as
1 if it is TRUE, and 0 if it is :mISE. '!be Boolean expressiCXl DUSt be
enclosed in parentheses.

Exanples:
5*(DEXiREE

=

BS)

CREDIT IS »nJNT

*

(NDNl' >

.Ql

4 - 115

A catplex arithmetic expression results when the <operand> of a basic
arithmetic expression is itself a basic arithmetic e~ession. That is,
basic arithmetic cperations can be carbined into a oarplex arithmetic
expression.
Exanples:
'lHIRlY-DAYS-IXJE + SDClY-DAYS-IlJE + NINETY-DAYS-WE
KNlHLY-SAIARY * 12 + BmEFITS
(X - Y)*Z
10 * YFARS-oF-EXPFlUENCE + 5 * (omREE = BS) +
-10 * (DmREE = MS)
(IDrAL( SAI.ARY) + 'lUl'AL(mmFITS» / 12
roTAL(SAI.ARY FOR FACli DEPT)/Bl.JOOEn' REI., 'lU DEPl'
100

*

Parentheses can be used in a CXJlp1ex arithmetic expression to ensure the
proper
sequence of the operations.
OperatialS within innexmost
parentheses are performed first.
If parentheses are not used, the
arithmetic operators have an assigned hierarchy Wich detemU.nes the
sequence in which the operatialS are performed.
Operators of highest
hierarchy are perfonned first. Operators haviB3 the same hierarchy are
perfonned in' the order in ~ch they are specified (left to right). '!he
hierarchy of arithmetic operators is as follows:
Hierarchy

Syni?ol

Highest 1

2

**

Expcnentiaticn

*

Multiplication
Oivisioo
()Jotient remainder
()1otient integer

/

MJD
OIV
~st

+

3

Mditial
SUbtraction

The following two exanples are equivalent:

A + B - C * «0 - 4) * E)/3 -X
«A + B) - C * «0 - 4) * E»

Definitial

- X

3

4 - 116

S'l'RIOO EXPRESSICli

A string <expressioo> is

CIl8

of the following:

1.

A <data name> Whidl references a string-valued data item.

2.

A <string>.

3.

An intrinsic functicm \Cli.ch describes a string value.

ExaDples:
C1SltIER-NAME

"LaS. II
PARr-DESC
..

II

A Boolean expressioo, <Bool apr>, describes a oondit.ion Which can be
evaluateCl as 'lKJE (runeric value 1) or PAISE (lUIBric value 0).

SinJ)le Boolean Ex.pressi.al

expressien in its
references a Boolean item.

A Boolean

siDp1est

form

is a <data

name>

Which

Exanple:

is a Boolean-type item. It can be an accepted or derived
item defined as ID>LFAN. or a Dts II Boolean vocabulary item.

IARGE-AaXXlN1'

4 - 117

Basic Bc:olean Expression
A basic Boolean expression oampares two data items or specifies a
special test to be perfonned en the value of a data item.
cnly data
items of the same type {-that is, n~ic, string, or Boolean) may be
oampared.
The syntax of a basic Boolean expression is as follows:
---><operand>--><relational operator>-><operand>-->

I

I

+-->«operand>--><relatianal operator>--><operand»->+
In IOOSt cases, the left <operand> is a <data
<operand> is a <data name> or <literal>.

name> ,

and the right

Exanples:
CDST > 1000.00
BRAlni-NUMBER = AOCEPI'ED-BR-N:>
PARl'-OO
103888
CREDIT-LIMIT GRFATER THAN 5000

=

aJS'I'CIER-NAME

= "JOHN O. OOE"

In general, either <operand> can be an arithmetic <expression>.

Exanples:

=

BAIANCE-WE
(aJRRENl'LY-IlJE + TfnRlY-MYS-IlJE
+ SIX'IY-D\YS-OOE + NINEIY-MYS-DUE)
(QUANI'I'1Y*UNIT-a:sI') EXllAL INVENl'-OOLIAR-VAUJE
(X/Y + Z) Ial 10
N3E (FROO . INVOICE-n\TE ro MTE) > 90
AVERAGE (SALARY) < 10000

'!be values TRUE, FAlSE, am NUIL are figurative constants \\tUch can be
used in certain instances as the right <operand>. 'I'RlJE and FALSE can be
used to test Bcx>lean items for value 1 and value 0, respectively:
however, use of a sinple Boolean expressioo is reccmnended.
NUlL is
used to check INS II items for a NULL oondition.
When a figurative
constant is used, the <relational operator> must specify an equal or
not-equal relation.

4 - 118

Exanples:
FI.AG-BIT

= TRUE

( equivalent to:

FIAG-BIT)

S'IUD-NO N:11' = NUlL
EXCEPl'ICE-FlAG IS WlAL FALSE

A <condition name> can be used as the right <cperand> to perfonn
conveniently value tests 00 certain data items. The left <operand> nust
be the <data name> for which the oalditioo was defined. '!he <relational
operator> rm.1st specify an equal or not-equal relation.

Exanples:
SEX = MAI.E
CDIDR
RED OF CDIDR

=

ALPHABETIC or NUMERIC can be specified as the right <operand> in order
to perfonn a class test en the data item specified by the left
<operand>. '!he NUMERIC class test detennines if the item value CXXlSists
entirely of the Characters 0, 1, 2, 3, 4, ••• , 9, with or without an
operational sign.
'!he ALPHABETIC class test determines if the item
value consists entirely of the characters A, S, C, ••• , Z, and space.
'!he NUMERIC class test cannot be used en a string-type item.
The
ALPHABETIC class test cannot be used 00 a numeric-type item.
The
<relational operator> for a class test ItIlSt specify an equal or
not-equal relation.
Exanples:
PARl'-K>

= NUMERIC

ClJS'RHm-NAME NC7l'

= AU?HABETIC

'!be right <operand> of a basic .acolean expression can be a pattern. A
discussien of pattern mat~ is contained under the heading "Pattern
Matching, II which imnediately follows the discussioo urner "Q:nplex
Boolean Express ion II below.

4 - 119

~lex

.Boolean

~ression

A catplex Boolean expressioo describes logical cparations to be
perfonned en sinple or basic Boolean expressialS.
'1he logical
operations are oor (negation), AND (conjunction), arxi OR (disjunctioo).
'lhe syntax for a canplex Boolean expressioo is as follows:
- > <operand>-->OR

><operam>-->

I

1

1

1

+-->AND->+

I

I
1
1-> «operand>--->OR---> <operand> )-> 1

I
I
I

I

I

I
I
I

+->AND->+

I--------->oor---> <operand>--> 1

I

I

+ - - - - - - - - > (lCl'-> <operam >}->+
An

<operand> can be a basic Boolean expressiCXl,
Boolean ~ession.

or it can itself be a

~lex

Exanples:
SEX

= MArE AND PGE

> 18

STRATA-1 OR STRATA-2
(BAlANCE-ruE > 5000.(0) AND (BALANCE-IlJE < 10000.00)
[(X > A + B) AND Y < 10] OR Z = 20

A 0CIIp1ex Boolean expression can involve logical, relatiCX1al, and
arithmetic operators.
Parentheses can be used to ensure the pxoper
sequence of operatialS.
If parentheses are not used, the following
assigned hierarchy of operators detennines the sequence in ~ch the
~atialS are perfonned.
Operators of highest hierarchy are perfonned
first.
~rators having the sane hierarchy are performed in the order
in \fttUch they are specified (that is, fran left to right).
'!be
hierarchy of arithmetic operators is as sbJwn in the followiD] list.

4 -

120

Hierarchy

Highest 1
2

Syni?ol

**

Exponentiation

*
/

DIV

Multiply
Divide
().lotient remainder
Quotient integer

+

Add

K)J)

3

Definiticn

Subtract

lDwest

4

All relaticmal operators

5

Negatioo

6

AND

Conjuncticn

7

OR

Disjunction

ExaDple:
A > B

+ C AND D < 10

is equivalent to:
[A > (B + C)] AND (D < 10)
Pattern Matching
right <cperand> of a basic Boolean expressioo can be a pattern. A
pattern describes a pattern of dlaracters to be matched against a string
value. Cklly string-type data items can be tested for pattern match, and
ool.y tests for equal (=) or not equal (WT =) are allcwed. All patterns
are enclosed in brackets.
A pattern can be a maxi.nun of 55 characters
in 1en:.:Jth. '!be various £oms of patterns are speCified as follCMi:
'Dle

1.

single specific string is specified in quotation marks
inside the brackets.
'!his indicates that the significant
characters of the i tern value ltUst match this string. Trailing
blanks in the item value are not considered as significant.
A

4 - 121

Exanple:
N:>RD = ["SAMPLE"]

p3.ttern match in this exanple irxiicates
significant characters of \tI)RD RUst be SAMPLE.

The

2.

(- ) in a pattern
characters may be present.

A hyphen

indicates

that

any

that

the

llllni>er

of

Exanple:
NJRD

= [liS"

- tlM"]

The pattern match in this exanple irxiicates that the first
character of \\ORO is an 5, am the character M is the last
significant or to'lb1ank character in the item value.

Exanp1e:
WJRI)

= [liS"

- "M" -]

pattern match in this exanple indicates that the first
character of the item value is an 5, and that this first
character is fo110Med by an M SCJnSIItbere within the string

The

value.
3.

llllni>er in a pattern specifies the exact llUl1'iler of
characters which are ignored in the item value after the first
string and before the next string.

A single

Exanple:
\«lRI)

= [liS" 1 "Mil -]

pattern match in this exanple indicates that the first
Character of K>RD is an 5 and the third Character is M.

'!he

4.

nurrbers separated by a cxmna represent the mininun and the
maxi.nun nurtber, respectively, of characters Wich are ignored
in the item value after the first string and ~fore the next
string.
1\«)

Exanple:
\«lRD

= ["S"

1, 3 "Mil]

4 - 122

The pattern match in this exanple indicates the foll~: the
first. dlaract.er of \tJRD is S, ani at least. ale but not DDre
than three dlaracters DUSt exist before M. '!he foll~
values
represent match and no-match ccnll.ticms for the

exanple:

Match

No-Match

SAM

SLIM
STEAM

s.

Il\lRi:)er of specifications
of the type described
3, and 4 above may be given in one pattern.

A

in items 2,

Exanple:
V!HIC[E-LICENSE = [ilL" 1 uJ" - "6" -]
'D1e pattem match in this exanple indicates the foll~: the
first character is L, the third character is J, and a 6
appears else.bere in the vehicle license IlllIIIJer.

4 - 123

E>crENSION

An Extension (also krlcJNn as a derived data item) is used to define a new
data item to be derived fran other data items. '!he derived data item is
calculated for each logical record and "extends" the logical record with
the new data value.
CXlce a derived data item is defined, you can

reference it subsequently
statements.
Exanple:

Where

appropriate

in the

repolt

language

("INVENr It )

PARI'-SALES-<DST IS UNIT-<DST

*

QUJ\NTITY-SOlD

This describes a new data item PARl'-SALES-<DST
each part.

which is calculated for

The <name> in the Extension clause is defined by the user. It IIIlSt be
unique for a specified report, that is, it must not duplicate any <name>
defined in the vocabulary, or any other derived data item. You can use
this <name> as a <data name> in other statements to reference the
derived data item after the <name> has been defined in the Extensioo
clause.
<item desc> clause describes various aspects of the derived data
item. It specifies what the value of the extension will be (UliPOSed of,
What the fXlysical attributes of -the extension will be, ani ~t format
will be used when the item is printed.
The

An Extension can be part of an Extension statement or it can be part of
another
report language statement.
The followiD3 illustrates an

Extension specified in a REFORr statement:
Exanpl\.:

("CLIENr tl )

REPORT aJST-OO, OVERDRAWN WHIQi IS

NUM(s, 2}

BAIANCE-OOE - CREDIT-LIMIT

WITH PIcruRE "Z(4)9.99

f1
•

4 - 124

'!be ayntax far the Exbmaial clause

-

-)~>-----..--,>IS

I

I

+->tllIaI->+

~

as fol1owa:

<item desc>->

4 - 125

Extensicn statEment is used to define an <extensial> (a derived data
itan) independent of its use in other report language statements.

An

Exanple:

'!he
above Extensial
statEment
defines
the derived data item,
PAR'l'S-SALES-CD.
'Jhis item rOIl can be referenced in other report

laBJuage statements.
'D1e syntax for the Extensicm statEment is as follows:

------------------,> <extension>.

4 - 126

FILE NAME
------E)Cl'ERNAL

Extemal File Name identifies a file to the ftCP.
It oontains
<string> (s) used as <identifier> (s) • Optionally, it also can contain a
disk pack (cartridge) <identifier> clause.

An

A SERIES OF SYSTEMS

For the A Series of Systems, an External File Name ocntains a series of
<identifier>s (file <identifier>, file dir~ <identifier> s, and
volume <identifier>s).
An qJtiooal disk pack name can be specified in
an Extema.l File Name in certain ocntext.s. An <identifier> can be up to
17 characters 1009. A maxiDun of 30 characters (exclucti.rvJ the qJtiooal
<E clause) is permitted for an External File Name, inclucti.rvJ slashes.

syntax of External File Name

'Dle

for the A Series

of Systems

is as

fol1ar1S:

->

c

A

II

-+1_ _ _ _ _ _ _ _......1_____ > <identifier> .. - - - - - - - - > (1)

1
I
I / 12 I
I
1<----I
B

1

I

+-> <identifier> / ->+
D

(1)

,----~----------------------------------------~------->
E
I

I

+

- - - > CE'

It

<identifier> It -> I

The paths of this syntax diagram are explained below:
Path

Explanaticn

A

Take this path if no file directory <identifier>s and no volume
<identifier>s are required.

B

Take this path to supply file
optional volume <identifier>s.

directory

4 - 127

<identifiel s

and

C

Take this path to specify the <identifier> 'Abich represents the
file name.

D

Take this path if no pack name is to be specified.

Exanples:

''VOC'AB1"
"SAvnGS/N'AMFANIlADDRES"

"A/B/C/D/E/F"
Take this path to specify a pack name. '1he <E optioo can ally
be used in the !Xl'RACl' stataDent, VOCABtJIARY statement, ani the
process cptioo ASSIGN NXZPl'ED-DM'A '10 DISK statement.
Other
file assigments to disk pack can be &me via proper file
equatioo (refer to the A Series It>rk Flow Language (WFL)
Reference Manual).

E

ExaIrple:
"PERS:ltiEL/FIIE" CN "J!MPIDYEES"

Far the B 1000 Series of Systems, an External File Name contains up to
three <idartifier>s.
An <identifier> can be up to 10 cbaract.ers ~.
'!be use of special characters as part of the <identifier) is not.
recannended.
(I):) IXJt use periods in the <external file name> part of a
MVE ~ AS clause.)

syntax of Extemal File Name for the B 1000 Series of Systems is as

The

follows:
C

A
-)

It

_ _ _ _ _ _ _ _ _ _)

I
I

<idartifier)

"--------->

I
I

B

+- <ida'ltifier> / -)+
D

(1)----------------------------------------------->
E

+

CB "<identifier>"->+

4 - 128

(1)

The paths of this syntax diagram are explained below&
~

Explanaticn
family name is to be specified.

A

Take this path if

B

Take

C

Take

D

Take this path if no pack-ID is to be specified.

IX)

this path to specify an <identifier>
family name.

'4Ihi.ch represents the

this path to specify the <identifier> Wlich represents the
file name.

ExaDple&

"VOCABl"
"PAYKLLlO/TSlVCB II

E

this path to specify the <identifier> \CUch represents the
The pack-ID cannot. be used with any of the following
specificatia1s: &\'VE RER>Rr, &\'VE RR6, and SAVE EXCEPtlOOS
LIS'l'IlG.
Take

pack-m.

Exanples:

"VOCAB" W "SYSTJ:)!FILE"
"~/RER>Rr" 00 "PAYR:lLL-74"

B 20CJ0/B 3OOO/B 4000 SERIES OF SYS'ID5

the B 2000/B 3000/B 4000 Series of Systems, an External File Name
c:xntains CX1e or two <identifier>s.
An <identifier> can be up to six
characters lCDJ and c.anr¥Jt exntain any special dlaracters (space, cx:mna,
period, slash, h}'lilen, am semicolon). '!he <identifier> specified first
is the file name.

For

4 - 129

syntax of External File HaIle for the B 20CJ0/B 3000/B 4000 Series of
Systems is as follows:

'!he

A

-> .. <identifier> ..- - - - - - - - - - - - - - - - - - - >
B

1""-----> eN

"<identifier>"->+

'!be paths of this syntax diagram are explained below:
~

A

Explanatim
Take this path if no PAa<-ID is to be specified.
ExaJlples:

''VOCABl"
"l2JA74"
B

Take

this ·path to specify the <identifier> ".ru.ch represents the

A PAa<-ID can auy be used in the :EX1'.RAC1' statement,
statement,
and
the
procaa8
cpt.ion ASSIGN
ACCEP1-ED-n\TA '10 DISK statement.
PACK-ID.

~

Exanple:
"STAFF" CN "SYS'I'&1"

4 - 130

The

Extract-item Desc is used to specify a data item to be written to
am the manner in which it is to be written.

the extract file

Exanple: (ltINVENl'" )
EXt'RACT PARl'-H:>, PARr-DESC, CXJANrI'lY

In this exanple, PARr-OO,
item is to be extracted.

PARl'-IFSC,

'It)

EF-FILE.

and QUANTI'lY specify which data

The syntax for Extract-item Desc is as follows:

A
-><data name>

>(1)

I
1B
I
1-> <extension>-> I

I

1

1 c
I
+--> <string>->+

D
(1)-------------,
E

I
I

p

1<------1

IF

----------------------->
10
I

,--------------------------1I
I

G

1-{T7-->ASCENDIN3i--+-

------------------->1

I
I
H
I
I
+--->
DESCENDING->
+
I
I
I
I
L
I I
J
I
+--fT7->WHERE-------,-----> .INCREASES->+
I
I
KI
I M
I
+-><expression>->+ I->DECREASFS-> I
1

I

I

I
I->CHANGES--> I
I
I
10
I
N

+-_._--->+

4 -

131

'Dle paths of this syntax diagram are explained belCM:

Explanatioo

Path

A

Take this
extracted.

path to specify the name of the data item to be
Subscripting cannot be used if
EX.TRACI' WI'IH VOCA8UI.ARY has been specified previously. You can
use an extensioo to extract a subscripted data name (refer to
path B). '!he same <data name> cannot be extracted to the sane
file nDre than ooce.
An extension can be used for the seoc::nn
and subsequent occurrences of the <data name>.

B

Take this path to define an <extensioo> and to specify that its
value is to be extracted.
Exanple: (tla..rmr")
EX.TRACI' ClJS'lQER-NAME, ~IT-<DDE IS
CREDIT-LIMIT/1OO NUM(2) '10 EF-<::REDIT.

derived data item, CRmIT-<DDE, is extracted as the seoom
field of the extract record.
'!he value of the <extension>,
CREDIT-LIMIT/1OO, is written to the file with a storage picture
of 9(2) COMPUT~IONAL.
The

Exanple: ( "SHIPV" )
EX.TRACI' NUMBER OF BIIL, FIRST-OOINT IS
roINrS-OF-SHIPMENl' [1] 'ro EF-NEW.In this exanple, the first element of the subscripted data item,
romrs-oF-SHIPMFNr, is extracted as FIRST-POINr.

of subscripting in this exanple is allowai
because the EX.TRACl' WI1.H VOCABUlARY was not
used.
Use

4 - 132

C

Take this path to specify a <str~> to be extracted en every
recoro of the file. 'lhe <strir¥J> is given an arbitrary name and
an intemal storage picture to match the length specified. 'lbe
maxi.nun
length allowEd far an extractEd
<strir¥J> is 30
characters.
Exanple: (1tCLIml''')

II,

BAIANCE-IlJE

'!be seoond field en each record is four blank d1aracters. ,

D

this path if all data item values are to be extracted and
information to be extracted requires no ordering based. en
this item.

Take
the

E

Take this path if not all values of the data item are to be
extracted or if the values of this data itEm are to be extracted
in a particular order.

P

Take this path to specify that the infoxmation to be extracted.
is to be ordered based. en this item. You cannot take this path
if the item is statistical or if the !UK EACH clause of the
!X1'RACl' statement. has been taken previously.
If orderiB3 is
specified. for DDre than me extract item, the extract item for
..tUm ordering is specified first is considered the major
ordering key. '1he ordering specified. here is subordinate to any
grcupiD3 of infcmnatien via CXXltrOI breaks. In addition, the
orderiBJ
BUSt be CXX'lSistent
with the ordering specified.
elae.tlere.

G

Take this path to specify that the values of this data item be
extracted in ascending order.

Exauple: ( 1tCLIml'" )
~

amaER-NAME ASCmIDIRJ, aBlIT-LIMIT
'10 EF-FILE.

In

this exanple, records are extracted to the EF-FnE so that
the custaner names are in alphabetic order.

4 - 133

H

Take this path to specify that the values of this data item be
extracted in descending order.
Exarrple: (1Ia..IENT 11 )
EXTRACI' CREDIT-LIMIT DESCENDING, a.JSJ:G1ER-NAME
'ID EF-FILE.

In this exanple, records are extracted to the EF-FILE such that
the credit limi ts are in order, largest to smallest.
I

Take this path to specify a con.dition under which the values of
the data item are to be extracted.
If the oorXiition evaluates
P7U.SE, NULL-VAIlJFS is extracted instead of the data item value.
If the ccndi.tion evaluates TRUE, the data item value is
extracted.
The expression is evaluated for each· value of the
data item.

EXTRACI' a.JSJ:G1ER-NAME, CREDIT-LIMIT
WHERE CREDIT-LIMIT < 10000 '10 EF-FILE.

In this exanple, all the custaner names will be extracted. 'Ibe
underlined portion specifies that the CREDIT-LIMIT data item
value is to be placed into the extract reoord cnly if the value
is less than $10,000.
If it is greater than or equal to
$10,000, NULI.t-VAIlJFS is extracted instead.
J

Take this path as a shorthand method to specify inplicitly an
<expression> whose value is identical to the data item beiD:J
extracted.
'Ibis path rcust not be used with path O. Path L, M,
or N must be used to qualify the data value to fonn a oorni.tioo.
Exanple: ( II INVENl'" )
EXTRACl' PART-DFSC WHERE QiAOOES, WANTI'lY-fl)LJ)
'ID EF-SALES.

In this example, ally new values of PARl'-DESC are written to the
extract files. If the value of PARl'-DESC is identical to the
previous value, null-values are extracted.

4 - 134

K

Take this path to specify an <expressiCXl> used in defining the
CXXlditioos for extractiD3 the data item. A Boolean <expressial>
can be given to define the CXXldition, or a string or numeric
<expression> can be used in oonjunct.ioo with paths L thrwgh N
to define the CXXldition.
Exalrple:

( "CLIENl'" )

E)C1'RAC1'

ClJS'1a£R-NAME, amlIT-LIMIT WHERE
< 10000 'ID EF-FIlE.

~IT-LIMIT

In
this exanple, a Boolean <expression>
oatpletely defines the CXXldition.

is

given which

L

Take this path in ca1juncticn with a ncn-Boolean <expression> to
specify that the data value be extracted ally if the value of
the <expression> increases.

M

Take this path in cxnjunctial with a non-Boolean <expressioo> to
specify that the data value be extracted ally i f the value of
the <expressioo> decreases.

N

Take this path in cxnjunctioo with a non-Boolean <expressial> to
specify that the data value be extracted ally i f the value of
the <expressial> has changed.

o

Take this path ally if the <expression> given in path K is
Boolean.
A Boolean <ex:pressioo
is sufficient to express the
CXXldition.
'1hi.s path is illegal if an arithmetic or string
<expression> is specified in path K. The exanple for path K
illustrates the use of this option with a Boolean <expressicn>.

P

Take this path to specify both ordering, based on the item, am
conditional extraction.
Oxditialal extraction of an item
occurs based (Xl the ordering of the data values as specified.
Exalrple: (1iCLIENl''')

4 - 135

In thiS exauple, duplicate c:.'\J8tanar names. are grouped together
via the ASCDlDDG specification.
'ft8l all duplicate names
except. the first are nulled by the WHERE aWGES clause.
Q

'l'alce this path after ordering
specified.

am/or

4 - 136

caditional extractim are

EXTRAcr STATEMENT
The EXTRACT statement is used to extract information to a
machine-readable file for subsequent processing.
The file can be a
magnetic tape, disk, disk pack, or card file. Extracted information can
be used subsequently to generate confirmations, print mailing labels,
and so forth. In addition, the information extracted can be reported
using the REPORTER III System.
To assist in this, a vocabulary
describing the extracted information optionally can be produced
automatically. Only reportable information is extracted.
Example:

("VOCASr")

EXTRACT ASSET-NO,

ASSET-DEse,

COST

'IO

EF-FlIE.

A disk file called EF-FlIE is created with each record containing the
asset number, asset description, and cost of a reported asset. The data
items are written to the file using their internal storage picture.
A detailed example of EXTRACT statements used in report specifications
for inventory purposes is presented later (after the explanations of the
paths in the syntax diagram).
The syntax for the EXTRACT statement is as follows:
A

-->EXTRAcr--------------------------> (1)

I
I

I
I

B

+-->WITH VOCABULARY->+

e

(1)------------------------------------>(2)

I
ID

E

+-->FOR EACH-----><data name>----->(3)

--- I
I

F

I
I

G

I

I--><extension>->\

\

I

\

+--><c-b name>-->+

4 - 137

+<--------- , <----------+

LI

1
1

K I M

(2)--------------------------------><extract-item desc>------>(4)

I

H

(3)-------------------->
1
I

1

->+

I

I

1

I-->ASCENDING-->1
1

I

-

I

I

J

+-->DESCENDING->+

N

(4)-->TO----------------><file name>--------------------->.
1
1
I
1
+-- >FILE-- >+
I0
I
+--><file mod>->+
The paths of this syntax diagram are explained below:
Path

Explanation

A

Take this path if the ability to report information from the
extract file using the REPORTER III System is not required or
if a vocabulary for this file is to be built independently.
Example:
E}ITRAcr

( "CLIENT" )
CUSTQV.IER-NAME, STREET-ADDRESS,
ZIP-CODE ID MAILING-LABELS.

CITY-STATE,

This information is extracted to a file which
program that creates mailing labels.
B

is

input to a

If you take this path, RP3VOC specifications are required for
the extract file. RP3VOC is executed, thus creating an extract
vocabulary which can be used to report the information in the
extracted file. The Process-option SAVE statement can be used
to assign names to the extract vocabulary files.
If the
original vocabulary requires a password, the same password is
required for the extract vocabulary.
Only one extract
vocabulary is created for all files extracted in one report
specification.
If the original vocabulary has the statement "SET LANGUAGE TO
COBOL85",
the same statement is added to the extract
vocabulary.

1177185-003

4 - 138

Exanple: ('evOCAST")
E>CrRACl' WI'IH VOCABUlARY ASSET-NO, ASSET-DESC,
<DST 'ro EF-FILE.

This exanple is nearly identical to the initial exanple given
for the EXTRACI' statement.
The only difference is that the
extract vocabulary statement in this exanple is built, which
includes a descripticn of the file EF-FlLE.
The infonnaticn
within the file then can be reported subsequently using the
REPORl'ER III System.
C

Take this path if one record is to be written to the extract
file for each loc.;Jical record reported.
The exatrple for path B
illustrates this option.

D

Take this path to specify that a record of sumnary infonnation
be written to the extract file for each value of a control-break
item.
The specified control-break item
written to each record of the extract file.

is the

first

item

Sumnary infonnation for a ccntrol-break item consists of items
which are related it ar:rl have a constant value for each of its
values.
In many instances, these items are derived statistical
items; but they also can be nonstatistical items. If path D is
taken, all items extracted ItUst be sunmary items for the
specifiED
control break.
Nonstatistical
iterqs which are
extracted are implicitly declared as sumnary items for the
specified control break.

Path D defines the default scope for any statistical functions
which are specified in subsequent <extract-itern desc> s (refer to
path K).

Exanple:

( 1'vcx:ASrI' )

EXTRAcr FOR· FACli DEPl'-l.'D: IDrAlrASSET-VAllJE IS
'lUTAL ( 005T) 'ID DEPl'-FILE.

For
each value of DEPf-OO, a sunmary record is wri tten
containing the department number and the total cost of all
department assets.
If control breaks have not been specified
previously,
the above
statement
defines
DEPl'-tD
as a
control-break name. Infonnation is grouped accordingly.
E

Take this path to specify that sumnary infonnaticn be written to
an extract record for each value of a data item referenced by
<data name> • The item must be oonstatistical arrl is defined to
be a control-break item by its reference here. Control breaks

4 - 139

for the report nust not have been specified previously
another statement. (Refer to the exanp1e for path D.)

in

F

Take this path to specify that surrmary infonnation be written to
an extract record for each value of a data item defined by
<extension>. '!he derived item nust be nonstatistical. '!he item
is definEd to be a control-break item; control breaks for the
rep:>rt nust lX)t have been specified previously in another
statement.

G

Take this path to specify that surrmary infonnatioo be written to
an extract reconi for each value of a previously defined
ocntro1-break item; <c-b name> nust reference this item.
Exanple: ( .. INVENI''' )
RANGE BY INVmr-OOLIAR-VAI.1JE F101 0 BY 1000.

E>CrRACr FOR FAQi RAOOE: R>-OF-PARl'S IS CXllNT,
TOrAlr-VAI.1JE IS 'IOrAL (INVm!'-OOLIAR-VAIlJE),
AVG-VAI.1JE IS AVG( !NVEm'-OOLIAR-VAIlJE)
'IO FILE INVmr-SlHWUES.
RAN:m references a previously-defined exntrol-break item. A
sumnary
record is written to the extract file for each

range-break grouping.
H

Take this path ~en yoo desire no particular ordering based 00
the control-break item, or if you have already specified this
orderingYou
llIlSt take this pith if you have taken path G and
<c-b name> references a range-break item. Unless suppressed, a
sort is done to properly group the logical reoords based <Xl the
control-break item.
The default orderin3 of infonnati<Xl is
ascerxling based 00 the control-break item.

I

Take this path to specify expliciUy that the sumnary records be
written to the extract file in asceroing sequence based 00
control-break i tern values.
Exanple:

("~")

EXTRACl' FOR EACli DEPl'-NO ASC:
TOrAlr-ASSET-VAllJE IS rorAL( CXST)
'ro JEPl'-FILE.

4 - 140

Infonnaticn is extracted in ascending sequence of department
rn.JDbers.
J

Take this path to specify that the sumnary reamis be written to
the extract file in desoend.il¥J sequence based en control-break
item values.

Exanple: ( ''VCX:ASr'' )
EX'l'RAC1' RlR ~ IEP'l'-R) DESC: 'lOl'AL-ASSET-VAWE
IS 'rol'AL( CDST) 'lO IEPl'-FiTR.

Infomlatioo

is

extracted

in desceming

department

IUliler

sequence.
K

<extract-:item dese> specifies a data item to be written into
one field of the extract file reami. 'Dle data item is written
in its storage picture foxmat. If you have taken path B, yw
make an entry in the extract vooabllary far this item.
The
entry includes the item name, i f any, and its internal am
editiBJ attribltes.
An

Exanple:

( "INV!Nl''' )

This specifies a record con~ ally the item PARr-IESC.
Each value for PART-lESe is written en a separate record in the
disk file EF-sELIX:l'm-PARTS.
L

Take this path as many times as necessary to specify all items
to be extracted to a partia1l.ar file. ADy fUIt)er of itaas can
be extracted to a file.
A record for the file contains all
items extracted in the same order in Wlich they weJ:e specified
in the EX'l'RAC1' statement.

Exanple: ( "INVENl''' )
EX'l'RAC1' PARl'-NO, PARl'-ImiC, (JlAN'l'l'lY
'lO EF-FIIE.

Each reoord in EF-FILE ocntains a field for PARl'-K>, PARI'-DESC,
and (lJANTI'lY, in that order.

M

Take this path after you have specified all data items to be
extracted.
<File name> specifies the internal file name of the
file \1thich contains the extracted data records. 'Ibis file name

4 - 141

is entered into the extract vocabulary if you have taken path B,
and it is used to reference the file being extracted in other
report specifications and/or vocabulary specifications.
It is
reccmnended that the internal file name be prefixed liEF_" to
ensure that no <DOOL reserved words are used illegally. If this
prefix is not used, a warning message is issued.
Exanple: ("INVENl''')
EXTRACl' PARI'-NO, PARl'-DESC,

OOANl'ITY' TO EF-FILE.

is the internal name for the extract file (the extemal
name is also EF-FILE by default).

EF-FILE

N

o

If you take this path, default attributes are assigned to the
extract. fil~. The default file attributes are the followir¥3:

1.

'!be external file name is identical
file name specified in path M above.

2.

'!he hardware device for the file is disk.

3.

The

4.

'!he assumed file total populatioo is 9999.

to the internal

blocking factor is 10 records per block for a
non-PUNQi file am ale record per block for a PUNClf
file.

this path to specify nondefault file attributes.
The
naldefaul t attributes which can be specified are the following:

Take

1.

2.
3.
4.

External file name.
Hardware device.
Blocking factor.
File total pJpUlation.

Exanple: (IIINVENI'" )
~

PARl'-OO, OOANl'I'lY 10 EF-<IJ:ll'IDL;
HARIl-lARE IS PUNQI.

In this case, the records are extracted to a' card punch instead
of disk.

4 - 142

EXAMPLE OF EXrRAC!' srATEMENl'S

The follC7#1i.ng is an exanple of a REFORl'ER III report specification Which
could be used for a year-end inventory check:

SAVE E>cr'RACl'-VOC'AB ps II INVTRl " AND IIINVTR2 II •
INVENl'.
E>cr'RACl' WITH VOCAB PARl'....J.«), II
I I , BIN-ID ASC,
II
CUANTI'IY, II
I
AClUAI.r(J.JANT'IY IS 0 NUK( 5 )
WITH PIC IIZZZZZU 'ID ~IRM HARIJtlARE IS
PUNCli ID IS IICXEINVII •
lNP(]l'

I.

II

,

uSAVE E>cr'RACl'-VOCAB 1\8 11 is used to assign names to the vocabulary
files created by the .1EXrRAC!' WI'lH VQCABII. If the SAVE statement were
not used, the names "Vlrm ll and 1'V2nn11 would be used, Where IInn" is a
randan number generated by RP3REP at nm time.

The

A string of 3 spaces is specified between PARl'-tD, BIN-tD ASC, QUANTIiY,
and ACI"'UAI.t-OOANTI'lY.
The extracted output will be in BIN-NO ascerdiDJ
order.
~ITY is an <extension>, and is being used as a place
holder for the cards to be pmched. ACrUAI.t-OUAm'IiY size ''NtJ.t(S) II will
be kept in the extracted vocabulary for later use. '!be <file name>
~IR-1 will beccme the
<data-structure clause> in the INPln'
statement for the next specification.

The cards punchEd far the above specificaticn will be in bin nuniler
order and could be used to verify the quantity am part.
'lhe space
available in the area of ~I'lY could be used to pmch in the
actual number of parts found. 'lhese cards then oould be used for input
infonnatioo to the follOWing specification:

VOCAB IS II INVTRl Il •
lNP(]l' ~IRM.

REroRl' PARI'-OO WHERE GJANl'I'lY NEQ IClUAIrOUAm'I'lY,
BIN-NO, QUANl'I'lY AS "QUANTI'IY ON FILE",
ACTU.AI.r-OOANII'lY •
EXTRAcr PART-OO, BIN-NO, ·CJJANTI'lYI
ACTUAL-<lJANrI'lY 'ID INVOO'ORY-INFO HARIMARE IS

DISK ID IS "lNVIN.F".

4 - 143

'!be above specificatiCXl uses the vocabulary creat.ed by processing of the
previous specificatiCXl. 'lhe <file name> of the previous specificatial's
!Xl'BACr statement is used as the <data-structure clause> of the INRJT
statement of the above specificatiem. A report will be created listing
cmly those part IUdlers '4IIlose actual quantity did not equal the quantity

em file.
statement in the above specificaticn shews haw the
infomatiCXl read frau the caxds cxW.d' be put into a disk file.
'Ibis
informatiCXl
then cxW.d be used by another program to nake any
correcticms to tbe master files.
.

'!he

!XmACl'

4 - 144

FILE MOD

File MOd is used to

speci~

nondefault attributes for the extract file.

The syntax for File Mod is as follows:
+< - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +

I
I

NI
10

A

-rr7->IDTAL-POPUIATION-------> <integer>----->
1
1
1
1-> IS -> I
1

1
I 1
+-> ; ->+ 1

I
I
I
I

I

I

I
I
I
B
I
1 - r r 7->BIDCKING--------------> <integer>-> I
I
I
I
I
1
1-> IS -> I
I
1
1
1
I
+->

= ->+

+->

= ->+

+<----+

I

+<-+

Ie

1-rr7->IDENrIFICATION--;....------><external file name>->
1

-

I

I

1

1-> IS -> I

I

I

1

+->

I

= ->+

1

ID

E

+--rr7->HARJMARE---------------------> DISK----->

I·

I

1
1

+->DEVICE->+

I
I
I

II

I

1-> IS -> I

I

+->

I

= ->+

-

F
-->TAPE--->
G

->TAPE-7-->

1

I
I
I

H
-->TAPE-9-->
I

1
1

->PUNCH-->

1

I
IJ

I

+-->DISKPACK->+

I

v
(1)

(2)

4 - 145

peN 1177185-002

(1)

(2)

I
K

1

-/17->ARFAS------------> <integer>---------> I
I
1
1
1-> IS ->1
I

1
+->

1

= ->+

L

1
1

I
I

- - / 1 7->ARFASIZE------------> <integer >----------> +
I
1
I
1-> IS -> 1
I
1
1
1
+-> = ->+
1

I

M

1

+--/17->USAGE----------------------->DISPLAY-------------->+
1
1
1-> IS ->1
1
I
+-> = ->+
The pa.ths of this syntax diagram are explained below:
Path
A

E;Planatian
This

pctth is taken to specify a total population attribute for
the file ard is relevant only if WI'lH VOCABULARY has been
specified ~eviously.
It does not limit the file in any way.
The total populaticn attribute is USEn when reporting on the
extracted file to calculate the nurriber of spaces to allow for
printin.;J statistical sunmaries.
If you do not specify an
integer, the total population of the extracted file defaults to

9999.
Exanple:
EXTRACI' CUSTOMER-NAME 'ID EF-NEW;
TCYI'AL-POP = 1000.

The EF-NEW file is declared to contain 1000 records.
is reported en, four spaces are allocated for COUNI'.
B

If EF-NE.W

Take this pctth to specify a blocking factor for the extract
file.
This has meaning only for DISK, TAPE, or DISKPACK files.
The default blocking factor is 10 for these files.

peN 1177185-002

4 - 146

Exanple:
EXTRACT CUSTG1ER-NAME, BAlANCE-WE 'IO
EF-<DNFIRM; BI.DCKING IS 5.

C

Take this p:ith to specify a different external name for the
file.
The default external name is the same as the internal
name given in the IlTO" clause of the EXTRACT statement (refer to
the EXTRAcr statement in this section). The name specified in
the exanple reIOW' is the one that identifies the file to the
MCP.
If DISKPACK is chosen as the hardware device, you must
follow this path to give the pack identifier to the file.
Exanple:
EXTRAcr aJSTOMER-NAME, BAlANCE-WE 'IO
EF-<DNFIRvt ID IS "BALDUE".

------

File EF-<DNFIRM is known externally as IlBALDUE Ii •
D

Take this path to specify the hardware device for the extracted
file.
The default is DISK if no hardware specification is
given.

E

Take this path to document explicitly the default of DISK as the
hardware device.
Exanple:
EXTRAcr CUSTG1ER-NAME, BAI..ANCE-WE 'IO

EF-<DNFIRM; HARDVARE IS DISK.
The underlined IX>rtion serves as documentation
hardware assigmnent of DISK.
F-H

of the default

These paths are taken to specify magnetic tape (TAPE, TAPE-7, or
TAPE-9) as the hardware device for the extracted file. If you
specify TAPE, TAPE-7, or TAPE-9, all i terns are extracted with
display usage. TAPE-7 and TAPE-9 are identical to TAPE.
Exanple:
EXTRAcr cusroMER-NAME, BAlANCE-WE 'IO

EF-<DNFIRM ID-CONFIRv1 HARrMARE TAPE.
In this exanple, the file is extracted to tape instead of disk.

4 - 147

PCN 1177185-002

I

Take this path to specify card punch as the hardware device for
the extracted file.
You must ensure that the total extract
record size is less than or equal to 80 characters. All numeric
items are extracted in display IOOde if PUNa! is specified.

Exarrple:
E>Cl'RACl' aJsroMER-Nl\ME, BAlANCE-IXJE 'ID
EF-NBi HARIMARE IS PUNCli.
In this exanple, the records are extracted to the card punch.

J

Take this path to specify DISKPJ\CK as the hardware device for
the extracted file. If you use this path, a pack name must be
given via the ID clause (refer to path B).

Exarrple:
E>Cl'RACl' CUS'roMER-NAME, BAlANCE-IlJE TO
EF-<DNFIBM: ID = "BALIXJE" p~ IIACX:'ICI}':
HARDiARE IS DISKPACK.

K

Take this path to specify the nunber of areas for the extracted
file.
This applies only to DISK and DISKPACK files. Refer to
Appendix B for default and limit values.

L

Take this path to specify the ARFASlZE of the extracted file.
In this case, the total nuniber of records in the file will be
the product of the number of areas aIXl the ARFASIZE.
ARFASIZE
nust be a nultiple of the BIDCKSIZE if" path A has been taken.
Refer to Appentix B for default am limit values.

Exarrple:
E>Cl'RACl' CUS'roMER-NJ.\ME, BAlANCE-WE 'ID
EF-<DNFIHt1: AREA IS 25: ARFASIZE IS 10000.

M

Take this path to specify that all numeric items in the extract.
file are to have a usage of DISPIAY rather than the default of
a:I1PurATIW.
This path affects only extract. files with a
hardware device of DISK or DISKPACK. Note that because the sign
of a signed field is encoded en the first digit as a high order
bit, the plus (+) or minus (-) synix>l am the first digit might
not be displayed correctly.

N'

Take this path until you have specified
for the file.

peN 1177185-002

4 - 148

all desired attributes

o

Take this path when you have specified
for the file.

4 - 148A

all desired

attributes

peN 1177185-002

'J.'he ~8 clause specifies \\tUc:h co1\DU1 are to be footed (in other
wards, totaled).
'DIe syntax for the Footings clause is as follows:

+<--- , < - -.....

I
I

A
->POC71'IY3---><data name>
'1he paths

A

BI
I c
>

of this syntax diagram are explained below:

this path to foot a previously specified col.~.
<Data
name> DUSt. be specified as a colwm nama in the RBKitl'
statement.
If print suppression is specified far' this col~,
the footing of the co1am reflects cmly thcae values act.ually
printed in the CX)l\Sl1l.
Take

Bla"l»le I

(

"D1VDll'" )

•
•
•

that the col\Dl far
'!he report aweal"ll as

SlHWUZE
statement
specifies
D1VJIl1tBf-1XI1AR-VAWE is to be footed.

'1ha

foll0W8:
PARI'
1«)

;131.00
701.63

113110
203171

•

•
•
•

•
•

89131.50

4 - 149

B

Take this path as many times as necessary to specify all columns
to be footed. The column names can be specified in any order.
Exanple: ("CLIml'" )
REPORl' BY BRANQf
LIsrnG aJST-OO, CREDIT-LIMI'l', BMANCE-IlJE.
•
•
•
SlMWUZE RlOl'IlG amDIT-L1MIT, ~-IlJE.

This produces the followiD;J type of report.

0013

BRANClI:

1«)

almIT
·LIMIT

30334
30714

1000

am'

SOOO

•

SlHI\RIES
rorAL

~

WE

$ 1731.00
$ 763.00
•
•

lOR BRAlCf:

0013
113000

$ 93100.80

987700

$871310.93

•
SlHI\RIES FOR FINAL
rorAL

C

Take this path

~

all ool\a11l8 to be footed are specified.

4 - 150

FORM

ATrRIBUTES

The Form Attributes specification is used to define any of the following
attributes: form width, form length, the first printable position of the
form, the number of lines between forms, and form type.
These
attributes only apply to the PRINT statement.
The syntax for the Form Attributes specification is as follows:
+<------------------------- , <------------------------------+

I

JI

A

1

1

K

--------r-r-!->FORM- ---------------------------> <integer>-------->
WIJJI'H

1

1

1-> IS ->1

I

-t->

I

=

-->+

B

---r-r-!->FORM- ---------------------------> <integer>->
LENGTH

1

1

1-> IS ->1
1

I

-t-> = -->+
C

+---r-r-!-> STARrI

mINT

I
I

---------------------------< integer >->
1

1

1-> IS ->1
1

-t->

1

I

=

->+

I
ID

+<---+
1

E
I
+---r-r-!->VERTICAL- -----------------------------><integer>->I
I
SPACING
I
II
I
I
1
1-> IS -> I I F
1
1
I
I
I +->CHANNEL->+
I
I
+-> = -->+
1
1

1

IG
+---r-r-!->FORMTYPE

H
1
------------------->STANDARD--------------->+
1
I 1
1
1-> IS ->1 I I
1
1
1 +->SPECIAL-->+
-t-> = -->+

4 - 151

If you do not specify a form attribute, the corresponding default form
attribute is assumed, as follows:
FORM-WIIJIH
FORM-LENGl'H
STARr-OOINT
VERI'ICAL-SPACING
FORM-TYPE

132
54
1
CHANNEL 1
srANDARD

The paths of this syntax diagram are explained below:
Path

Explanation

A

Take this path to specify the number of horizontal print
positions from the start point (refer to path C) to the right
edge.
SUbsequent <print specifications> given in the PRINT
statement describe the layout of information on the form in
relative fashion from the first printable position on a line
(one) to the last printable position on the line (FORM-WIDrH).

B

Take this path to specify the total nun:iber of lines which can be
printed on the form. SUbsequent <print specifications> given in
the PRINT statement describe the layout of information on the
form in relative fashion from the first printable line (one) to
the last printable line (FORM-LEN'GIH).

C

Take this path to specify the number of print positions from the
left Where the first printable position of the form begins
(posi tion one) . You can adjust START-POINT and FORM-WIDrH to
provide for a standard left margin.

D

VERTICAL-SPACING is the number of lines between the last
printable line on a form and the first printable line on the
next form. The attribute may be given optionally as a channel
number which corresponds to the first printable line on a form.

E

Take this path if the <integer> represents
between forms.

F

Take this path if the <integer> represents a Channel number.

4 - 152

the number of lines

G

Take this path if you desire to specify whether the fonn is an
installaticn standard or a special fonn which requires special
operator load instructions.
If you do not take this path, the
default fonn type (installaticn standard: STANDARD) is assumed
by the system.

H

If you specify srANDARD,
the system.

I

If you specify SPECIAL, the fonus output file, or listing,
assigned the system fonus attribute.

00

load/unload

rressages are given by

is

For the A Series and B 200o-B 4000 line of oamputers, special
instructions to the operator are issued by the system when the
loading of fonns on the printer is required. Provision is also
made to infonn the operator to unload fonns when output is
c:nrpleted.
For the B 1000 line of COIIplters, special instructions to the
operator are issued by the program when the loading of fonus on
the printer, and the unloading of fonus fran the printer,
respectively, is required.
The operator takes the appropriate
action and then issues a <mix #>AX. message to continue program
execution.

NOTE

If the printer file is designated to go to
backup, no fonus messages will be issued.
J

Take this path to specify additional fonn attributes.

K

Take this path after all nondefault attributes are given.
Exanple:

=

=

PRINII (srARI'-POINT
11, FORM-WIIJIH
30,
FORM-LENG'IH
!h. roRM-TYPE = SPECIAL).••

=

Fonn Attributes are given in the above PRINr statement to
describe I-Up mailing labels. The left margin is 10 positions
wide.
Infonnation can be placed into positions 1 through 30 on
each of lines 1 through 8.
The first line of each label
corresponds, by default, to charmel one. Special instructions
are given to the operator to load and unload the labels.

4 - 153

peN 1177185-002

FUIL-LENGrrH M:NrH OPI'ION

The process optioo SEI' FULL-~rm MONm allows you to change the
10-character nonth strings to an alternate language.
'!he default
language is English.
The table shJwn belCM sbJws the IQ-character
full-length names for nonths in other languages.

M:lnth
1
2
3

4
5
6
7
8

9
10
11
12

1
2

3
4
5
6
7
8

9
10
11
12

The

English
(DEFAULT)
JANU~

French

"

FEBRUARY
MARCli
APRIL
MAY

JANVIER
FEVRIER

I

MARS
AVRIL
MAl

JUIN

JUNE

JULY
AOOUSI'
"SEPr.EMBER
II OCI'OBER

JUIILEI'
ACJJr
II SEl?"rEMBRE

•• NOVEMBER

•• DECEMBER

.. IDVEMBRE
II DECEMBRE

Italian

Spanish

GENNAIO
FEBBRAIO
MARZO
APRILE
MAGGIO
GIUGNO
I.U;LIO
AGOSro
SE'I'I'EMBRE
II orIUBRE
II NOVEMBRE
•• DICEMBRE

Geonan

II~BRE

.
II
II
II
II

"

JANUAR
FEBRUAR
MAERZ
APRIL
MAl
JUNI

..

.

"

.

"

JULI
AUGUST
SEPTEMBER
I. OK'IDBER

.. IDVEMBER
II DEZEMBER

ENERO

FEBRERO
MARZO
ABRIL
MAYO
JUNIO
JULIO

AGOSTO
SEPl'IFlmRE
II OCIUBRE II
IIIDVIEMBRE II
IIDICIEMBRE ..

10-character

nonth strings are used for the nonth portion of the
and DD-M:l'lI'H-YYYY-DATE clauses in the TITLE statement
aId the PRINT insert clause. When the date is fonnatted, the IOOnth is
followed by a single space or cx::mna, depending en the fonnat used.
Although the above tables sh.CJl..l the nonth names centered in each field,
both leading and trailing spaces are ignored when the date is fonnatted.

M:NrH-DD-YYYY-~TE

PCN 1177185-002

4 - 154

For exanple,
follows:

the dates

rate Fonnat

Septenber

12, 1988 and May 3, 1988 fonnat

as

Septeai?er 12
SEPrEMBER 12, 1988
12 SEI?'lDmER, 1988

MAY 03, 1988
03 MAY, 1988

Although the dates differ in length, REPORI'ER III ccnsiders all dates to
be 19 characters in leB3th for fonnatt.iD3 puIpOSes.

avoid Entering the FUIL-LEN3TH M:NIH option for every rep:>rt
specificaticn in which a different, rxniefault language is desired, it
is reccmneOOed that this opticn be stored in the vtXabulary with the
REPlACE statement. Then the name given in the REPlACE statement can be
used When the option is desired.

'lb

The syntax for the FULL-LEN3TH JOOnth optial is as follows:

- FULL-LEN;'lH -

KN.IH

------->
I

(1)

I

+- LIST -+

+---------/

(1)

I

I
BI

A / 12 /

1

<string>

c
>

The paths of this syntax diagram are explained below:

Path

Explanatial
12 times.

A

This 18th DUSt be taken
exceed 10 characters.

B

Take this path until all 12 m::nth strings have been entered.

4 - 155

'!he string

given

cannot

peN 1177185-002

C

Take this path after all 12 full-length nonth strings have been
given.
Exanple:
SEn' FULL-LENGTH M:NIH
/ It FEaRER)
ENERO
.. /
Ml\YO
ABRIL
II /
JULIO
AGOS'ID
II OC'IUBRE
IlNOVIEMBRE
II
/

..
.
..

..

peN 1177185-002

..
..

% 'ID SPANISH
II
MARZO

. / .

It

/

..

JUNIO

.. /

II SEPTIEMBREII

II

/

II

/ "DICIEMBRE

4 - 156

M)NI'HS

/

II

/

% 1 2 3
% 4 5 6
% 7 8 9
% 10 11 12

'!be GlUJP statement is used to specify cxntrol-break items. '1hese items
are used to group the infonnatioo being reported and provide a basis for
preparing sumnaries.

Q:mtrol breaks for a single report, or a sectioo of a nultiple report,
canmt have been previously specified in another statement.
Items
specified as c::ontrol-brea.ks in ale sectioo of a nultiple report.· are rxx.
considered control-break items in another sectiCXl.

GlUJP BY JOB-GRADE.
In this exanple, logical records, or enployees, are grouped by job
grade.
SUnmaries of enployee data then can be specified within the
JOB-GRAIE groupings.

Exanple: ("INVml'" )

•
GlUJP BY DEPARlMI!Nl'.
SlMWUZE PUR EAQi DEPARIHNl' rorAL(WANTI'lY),
rorAL( INVmr-IXlLIAR-VAWE) •

•
In this exanple, parts are grouped by department, total quantity, arxi
inventory dollar value, and are obtained for eaCh department. (Refer to
the SlHWUZE statement in this section.)

'!be following type of report. would result:

4 - 157

SlMWUES FOR DEPARIMENl': 0134
'rol'AL( QUANTITY) : 35
'lOl'AL (INVEI.ff OOIIAR VAIlJE): 3115.05
SlMWUES R>R lEPARIMENl': 0135
rorAL( QUANTI'lY) : 60
'lUl'AL (INVEI.ff OOUAR VAUJE): 4063.80

The syntax for the GR:XJP statement is as follows:

+<- ; <--+

I

I

+<----~-----------

I
I

HI
A

C

->GRXJP->SY--><data name>

-I
I
I
I

I
I

I
I

I
I

D

+-><extensioo>->+

I
I

1I

E

>.

I

F

1->ASCI!H)!tl;-> I

I

-

I

I G

I

+--> IlESCElmING->+

+<--+

I
I

B

+-->RAWFS OF <range-break-item Uesc>

~

<name>->+

'!be paths of this syntax diagram are explained below:
Path

E?Cp1anatioo

A

Take this path to define a data item as a centrol-break item.
Infcmnaticn pert:.ai.rliDl to each value of a data itan is gt'CUp8d
together.

B

Take this path to define a range-break item as a centrol-break
item.
(This path cannot be taken more than alOe for the same
range-break item. ) Infonnatioo is grouped based (Xl specified
value ranges of a particular data item. The range-break item is
referenced in other statements by a <c-b name> Wdch is
specified here as <name>.
'!he given <name> must be unique for
the specified re}X>rt, that is, it nust oot duplicate any other
<name> defined in the vocaOOlary or defined previously by you.

4 - 158

Exanple: (''VOCEMP'' )
GIUJP BY ~ OF EMPm-AGE FR:J.1
20 BY 5 'lO 80As AGE-INI'ER\TAL."'

------

REroRT R>R FIai AGE-INTERVAL:
'lUl'AL( SAlARY) •

CXl.lNT,

Infonnation pertaining to each age range is grouped together.
Statistics are calculated and printed for each age range (refer
to the REPORl' statement in this sectioo).
C

Take

this path to specify a nonstatistical data
<data name> as a control-break item.
'!he
identified as a cxntrol-break name, arx1 you
<c-b name> in other statements to reference
grouping of infonnaticn.

by

item referenced
<data name> is
can use it as a
a cxntrol-break

Exanple: ( I'VOC:AST" )
GIUJP BY ASSEr-TYPE.

ASSET-'lYPE is an input data item.
'!he input informaticn is
grouped accordiB3 to ASSET-'lYPE. This bril¥Js all similar assets
together for p.u:poses of surmarizatioo and reporting.
D

Take this path to define an <extension> and specify a oontrol
break
at the same time.
'!he <data name> defined by the
<extension> becanes a control-break name.
'!be value of the
CXlIltrol-break item is defined by the <extension>.
'!he derived
data item must be nonstatistical.
You can use the <data name>
in other statements as a <c-b name> to reference a oontrol-break
grouping of infonnatian.
Exarrple: ("CLIENT")
GROOP BY CREDIT-a:>DE IS CREDIT-LIMIT

L 100.

CREDIT-GOOE is defined as a derived data item.
CREDIT-LIMIT/IOO.
This value is used to group
records h¥ identical CREDIT-COOE values.
E

Its value is
the logical

Take this path when no particular ordering based on the
control-break item is desired.
unless suppressed, a sort is
perfonnErl to properly group the logical records ~sed on the
control-break item.
The default ordering of information is

4 - 159

ascending based at the cx:ntrol-break
paths C am D use this cptioo.
F

Take this path to specify
control-break item values.

item.

explicitly

1he exanples

ascending

order

far

for

Exanple: ("VOCAST" )

G

Take this path to specify
itan values.

desceOOi.ng

order

for a:ntrol-break

Exanple: (tlCLUNl'tI)

'l'he informatioo is grouped based CIl BRANCB.
in descending sequence.
H

Branch l'UIilers are

Take this path as many times as neceaaary to specify all
control-break itans.
If IlDre than one contml-break itan is
given, informatioo is grouped hierarchically baaed em the order
in lIbich the control-break items are specified. Par exanple, if
two control-break items are specified, i.nfoz:mati<Xl is first
cxgani.zed baaed CIl the values of the control. break specified
first (that is, the wter-Ievel CDltrol break); for each value
of this contml break, the informati<Xl i8 t.hen o~ed based
<Xl the values of the control break specified next (that is, the
inner-level control break).

'1he
limit en the rutber
control-break itans is nine.

of

levels of

Exanple: (t'V'OCAST" )
GlUJP BY 1EP1'-H),

!!! ASSET-'l'n'E.

Assets are organized by similar department rutber
organized by similar type for each department.
I

am

then are

Take this path after you have specified all centrol breaks.

4 - 160

INPUr STATEMENT
The INPUT statement specifies access to one or more data structures or
specifies the use of a user-written <input-procedure name> to obtain the
required information for the report. The information specified by the
INPUT statement is organized into a set of logical records. A logical
record can be a single record from a single data structure (for example,
a sequential tape file) or it can be a number of related records
accessed from one or more data structures. Once a data structure is
specified for ]NPUT, its data items can be referenced elsewhere in the
report specification.
The general syntax for the INPUT statement is as follows:
A

-->INPUr-----><input-procedure name>-------------------->.

I
I

I
I

B

+--><compound-data-structure-clause list>->+

The paths of this syntax diagram are explained below:
Path
A

Explanation
Take this path if you desire to report on information accessed
by an input procedure.
Input is supplied by the spec if ied
procedure, which is user-developed in COBOL and stored by
RP3VOC in the vocabulary. The COBOL procedure must provide a
complete logical record each time control is returned by the
procedure.
Once you specify an <input-procedure name> in the
]NPUT statement, reference can be made
to all non-77
WORKING-STORAGE data items associated with the input procedure
and to all data items within the vocabulary-defined data
structures used by the input procedure.
Refer to the
Vocabulary Language Operations Guide for additional information
on the input procedure.

4 - 161

1177185-003

Example:
INPur GJEr-A-RECORD.
GET-A-REOORD is a vocabulary-defined <input-procedure name>.
Each time the generated report program calls the procedure
GET-A-RECORD, one logical record of information is returned.
B

Take this path if REPORTER III-supplied input routines are to
be used. These routines allow access to data records in any of
the data structures known to the vocabulary.
The
<compound-data-structure- clause list> identifies all data
structures to be accessed and how they are to be accessed.
Information within these data structures then can be reported.
Example:

( "Vc:cAST" )

INPur ASSET-FILE.
ASSET-FILE is a <file name>. All records in the file are input
to the report.
In this case, each record of the file
corresponds to a logical record.

4 - 162

INSERI'

Insert specifies the printing of an item value, a constant
characters, a fonn nl.llTber, or a line ntmiber.

string of

The syntax for Insert is as follows:
A

->[-><string>------------------------------>]->{3}

I
IB
1-> <c-b
I

name>------------------------->

.

Ie
I-><data name>----------------------------->

I
ID
I-><item desc>

------------------->

I
IE
1-> <extension>------------------------->

I
I

F
I
I->FORM-NUMBER---------------------------->
I
I I
I
I G
I I J
I
1-->PAGE-NUMBER---> I +-->WITH---------->ZEROS->+
I
I
-I
I

I H I + - >LFADING->+
1->OVERFlDW-NUMBER->+

I
IK

1->MoIDDyy-DATE--------------------------->

I
IL
1->DDf+t.1YY-DATE------------------->
I
I M
I
I->YYDDD-DATE---------------------------> I
I
I
I N
I
I->MCNIH-DD-'YYYY-DATE--------------------> I
I
I
10
I
I->~-DATE--._-----------------------> I
I
I
I
I

{1}

(2)

4 - 163

peN 1177185-002

(1)

I
I

(2)

I
I
1->DLM1YYYY-DATE---------------------> I
P

1

1

1 Q

I

I->YYYYDDD-DATE--------------------------->1

1

I

I

I

R

1->DD-MCl-nli-YYYY-DATE------------------------->1
I

I

1

I

S

+-->TlME----------------------------------->+
T

(3)---------------------------------------------------->(4)
I
1
I u

I

+-->INTO <integer>-----------------+
-

1

I

+->POSITIONS->+
V

(4)-------------------------------------------------------->
1
1
1

w

x

z

I

+-->AT---------------------------------------->
<integer>->+
-I
I I
1
1 +->POSITION->+

1y

+----------> <integer>->+

I

I

+-> LINE-> +
The paths of this syntax diagram are explained belCM:
Path
A

Explanation
Take this path to specify insertion of a string of characters.
Specificaticn of a string inserticn is identical to the print
specification of a string with the follCMing exceptions:
1.

A string insertion can cause line overflow.

2.

A line nurriber aril/or position
a string inserticn.

peN 1177185-002

4 - 164

nurrber can be given for

Exanple:
[lIxyz SAVINGS & WAN II ]

B

Take this path
value.

to specify

insertion

of a control-break

item

Exarrples: (IIJNVENrIl)
[BIN-NUMBER]

[RANGE OF JNVENr-OOLIAR-VAllJE]

C

Take this path to specify inserticn
<data name>.

of an itE:!ll represented

by

Exanple: (IICLIENI'II)
[SI'REET-ADDRESS]

D

Take this path to specify
described b¥ <item desc>.

insertion

of a derived

data item

Exarrples:
[rorAL (COST)]
[INVENT-OOilAR-VALUE]

[BAIANCE - OLD-BAlANCE NUM (8, 2) ]

E

Take this path to specify
described by <extension>.

the printing

of a derived data item

Exanple: (II INVENT II )
[rorAL-<DST WHIOf IS
QUANTITY * UNIT-<X>ST NUM (8,2) ]

F

Take this path to specify insertion of the fonn
FORM-NUMBER refers to an 8-digit unsigned integer.

nurriber.

Exarrple:
[roR4-NUMBER]

G

Take this path to specify
physical page, begirming
8-digit unsigned integer
subsequent physical page.

insertion of a page nurriber 00 each
with 1. PAGE-NUMBER references an
that is incremented by 1 for each

4 - 165

peN 1177185-002

H

this path to specify insertion of an overflON fonn number,
unsigned integer.
It is 1 for all non-overflOli
fonns.
It is 2 for a first overflow fonn arrl is incremented by
1 for each additional overflow fonn.

Take

an 8-digit

Exarrple:
PRINT CDNFIR-1-STATEMENT AS

FOLI.a~S:

FOR OVERF FORM HEADER "PAGE",
[OVERE'lDW-NUMBER] INID 2,

"OF INVOICE STATEMENT" i
FOR

OVERElD~ FORM FOOINOI'E
"OONTINUED ON ATI'ACliED srATEMENT" i

CONFIRM-STATEMENT references a macro whiCh describes a positive
confinration statetrent.
All attached statements are numbered
sequentially.
I

Take this path to edit the form number, p3.ge nunber, or overflow
fonn nurriber, replacing leading zeros with blanks.

J

Take this path to edit the form number, page nurriber, or overflow
fonn nUIriber, retaining leading zeros.

K-R

Take one of these p3.ths, whichever is appropriate, to print the
current system date in the desired fonnat on the fonns. The
keyword "detennines the format. Keywords and their corresponding
formats are indicated in the following table. For illustrative
purposes, the assumed date is October 25, 1982.

Path

Exanple

Keyword
~DYY-DM'E

K
L
M
N

DLt-M1YY-rATE
YYDDD-mTE
IDNrH-DD-YYYY-DATE
l"l-IDDYYYY-DA.TE
DIMvlMYYYY-DATE
YYYYDDD-DATE
DD-IDNTH-YYYY-DATE

o
P

Q
R

Exanple:
[DDM-1MYY-DATE]

peN 1177185-002

4 - 166

10/25/82
250CT82
82299
OCTOBER 25, 1982
10/25/1982
25ocr1982
1982299
25 OCTOBER, 1982

For the date October
on each page.

25, 1982, this inserts the date "250CI'82"

In the present description of Insert, \VOrds
signifying the type of date fonnat (for example,
JULIAN-DM'E)
are
no longer
in::iicated
in
keywords.
Instead, letters indicating
the
actual date format (for example, YYDDD-DATE) are
indicated
in
the
keywords.
fbwever ,
REPORI'ER III will still recognize keywords with
words signifying the type of date fonnat (for
example, JULIAN-Dl-\TE) if they are used in a
report specification.
S

Take this path to print the time the rep:>rt is run on the fonns
in the fornat HH:MM:SS (hours, minutes, seconds).

T

Take this path to insert the string, item, or form n\lIti)er into
the nl.lIOOer of p:>sitions equal to its edited length.

U

Take this path to specify insertion of the string, item, form
number, and so forth into the designated nunber of positions.
For fonn nunber, page nunber, and overflow form number, you can
take this path to l.i.mi.t the IlUIlber of digits printed.
For all
others, an error results if the designated IlUIlber of positions
is less than the edited length of the string or item. If the
number of positions is greater than the edited length, n\Jlleric
values and date fonnat YYDDD or YYYYDDD are right-justified, and
string values and other date and t.iIoo values are left-justified.
Exanple: (" INVENT II )
[INVENT-OOUAR-VAllJE] IN 15

original length of INVENT-OOLI.J\R-VAIlJE is 11. Therefore,
the item value begins in position 5 of the l5-character insert
field.

The

V

If you take this path,
available print position.

the

insertion

begins

at the

next

Exanple:
PRINT AS FOI.J:.aVS:
FOR FAai FORM HEADER 25 S, "_",

[PJ\GE-NUIvlBER] IN 4, 3 S, "_", BL;

4 - 167

peN 1177185-002

The page nunber is
following the "_".

W

inserted

into

4

positions

.inmediately

Take this path to select the exact position of the insertion.
'!his path can be taken only when a NE)l EOJIt1, N8J LINE, or BI...ANK
LINE print specification has been previously provided and a
<data name> <striBj> print specificatioo does not .inmediately
precede this Insert clause.
If a cc::nlitional print specification .inmediately .precedes this
Insert clause, Path W may only be taken if the ELSE clause of
the c:c:nlitional print specification is used. In addition, a
print specification that follCMS the ELSE clause DUSt reference
the same anount of information as the print specification that
precedes the EISE clause.
Exanple 1: ("CLIENr" )
PRINT (EOR-1-WIDIH IS 40, JroRM-LIHmi IS 8)
JroR FAai REXDRD
NIt',

[aETCH:R-NAME] AT LINE 1 PCSITICti 1,
[WSiUJER-NtlmER]AT LINE 1 ro5ITIcti 32,
[STREET-ADDRESS] M'LINE 2-1,
[CITY-srATE] AT 31,-[ZIP-CDDE] AT 3 22-:

- -

This exanple shows bJw mailing labels might be created using the
PRIN1' statement with the Insert clause. The custaner's name is
inserted at the first line am the ·first fOSition.
'lbe
custaner's account IlUIl'ber is also on the first line starting at
position 32. The custaner' s address is inserted on the SE!COl:d
line arnthe first position. The city and state are inserted on
the third line and the first position. The zip code is also on
the third line, am it starts at position 22.
Exanple 2: ("CLllNl'" )
PRlNI' EOR EACli RECORD
NL,
[QJSIa1ER-mME] AT KSITICti 1,
[aJSl'CH'!R-tDmERTAT 32,
IF SRANCli-NUMBER =10(1 5, "lD£ OFFICE ACCr")
ELSE

(l 5,

II

"),

[RISK-RA,TIf.\G] AT 56.

This exanple shows the use of the AT clause within the Insert
.clause following a c:c:nlitional print statement. '!be ELSE clause
of the cx::nlitiona1 print stateltSlt is used, and the print
specification following the ElSE clause references the same

peN 1177185-002

4 - 168

anount of infonnation as the print specification
ELSE clause.
X

preceding the

Take this path if the insertion begins, not in the next
available print position, but sanewhere to the right on the sane
line.
Example:
PRINT AS R>I...I..aVS:

FOR FACH RECDRD NEW LINE, [NAME],
[SALARY] AT 40,
In
the user-fonnatted report, the ertI>loyee salary
following the enployee ~ in position 40 of a line.

Y

begins

Take this p:ith to specify the line nUllber of the insertion.
This path can be taken only when a NEW FORM print specification
has been given previously in the print specifications, and if
path E was not taken.
The line n\lIIber must be between 1 and
:FORM-LENGTH (minus the nurrber of lines allocated for fonn
footnotes) •
Example: ("CLIENT")
[Sl'REEl'-ADDRESS] AT LINE 3 RlSITICN 1

z

rr'ake this p:tth to give the };Osition nunV::>er for the insertion.
The <integer> specified must }:)e between 1 and R>RM-WIIJIH am at
or beyond the next available print position.
Example: ("CLIENI'")
[STREEr-ADDRESS] AT LINE 3 lU)ITICN 1

4 - 169

peN 1177185-002

INTERNAL ATrRIBurES
The Internal Attributes specification declares the type and size of the
data item. When used in an Item Desc, the internal-attribute type must
match the expression type given in the Item Desc with the exception that
a NUMERIC type can be given with a Bcx:>lean expression. When used in an
ACCEPI' statement, the internal-attribute type defines the type of item
to be accepted.
The syntax for the Internal Attributes specification is as follows:

A

B

---->srRING------------------------------------------>( 1)
1
1
1
1
I C
1
1
+-->«integer»->+
1

10

E

+-->NUMERIC----------------------------------------> (2)
1
1
1

-

1
1 F

G

I

J

+--> ( ----------> <integer>-----------------> (3)
1
1
1
1

1

I
I

1 H

1

I K

+-> S ->+

I

+--> , <integer>->+

1

IN

+--> BCX)LEAN--------------------------------------> (4)
(1)

-------------------->

L

(2)---------------------------->
i i i
I

(3)--> ) ->+

I

M

I

+->ROUNDED-->+

(4 ) - - - - - - - - - - - - - - - - - - > +

peN 1177185-002

4 - 170

'!'he paths of this syntax diagram are explained below:

Path

A

Explanatim

Take this path to specify a <string> type item.
Exanple:
S'rR1OO

'!his declares the data item to be a <string>.
B

this path if the default <string> leDJth is to be used for
item. '!he default length is S'.t'R]K;-SIZE. S'l'RllG-SlZE can
be . set by the Pxocess~ion SET statement. If S'.t'R]K;-SIZE is
not set, it defaults to 30.
Take
this

Exanple:
ACCEPT USER-ID S'I'RIW.
'!he length of the item USER-ID is S'.t'R]K;-SIZE.

C

this path to specify a ncmdefault lEDJth for the <striDJ>
item.
'!be <integer> specifies the length of the item in lll.1Iri)er
of characters.
If necessary, a str~ value is tIuncated or
exterded with spaces by the system when it is assigned to the
itEm.
Take

Exanple:
S'I'RIW (10)

'ftlis declares the data item is a <string> of 10 characters.

o

Take this path to specify a numeric-type data item.

Exanple:
NUMERIC

The data i tern is declared to be signed numeric.

4 - 171

E

Take this. path if the default size for a numeric data item is to
used. This path also specifies a signed nuneric data item.
The default size for numeric data items is deter.roined b¥
INI"mER-SIZE
and
FRACTIW-SIZE.
Both
INTmER-SIZE
and
FRACTION-SIZE can be set by the Process-option SET statement.

be

F

Take this path to specify the size of the item.
Exanple:
lD1(8)

This specifies the data item to be an WlSigned numeric integer
of eight digits.
G

Take this path to specify a numeric data item that is unsigned.
The value of an unsigned· nuneric itan may ally be positive. The
exanple for path F illustrates this specificatioo.

H

Take this path to specify a signed m:meric data item. Signed
.numeric items have both pesiti ve arx1 negative values. A space
llllSt separate the .. s .. fran the folJ.o,d~ <integer>.
Exanple:
~(S

8)

'Ibis specifies the data item to bea signed &-digit nuJ1.'i)er.
I

The

<integer> given here specifies the
integer part of the numeric item.

J

Take this path to specify an integer-ooly nlD8ric item. In this
case, the value contains 00 fractional digits, as the exanples
for paths F and H illustrate.

K

Take this path to specify a fractional part
the data item
being defined. '!he <integer> specifies the size of the fractioo
in terms of nunbar of digits.

lllJItt)er

of digits in the

for

4 - 172

Bmnple:
NlM(S 5,2)

'Ibis specifies the data item to be a signed 7-digit ruaeric item
with five integer digits am two fractional digits.
L

Take this path if the value assigned to the item is to be
truncated to the size of the item.
Truncatial involves the
eliminatim of exoessive fractional digits.

M

Take this path to specify that any value assigned to the item be
xounded to the fractional size of the item.
ExaDple:
tUERIC (S.8,2)

lO.HB)

'Jhia

exanple specifies a signed lo-digit IUIber with eight
integer digits am two fracticmal digits. Values are roonded to
two fractialal digits (in other~, cents) ~ assigned to
the item.

are limited to a DBXirIun of 18
digits.
'Jhia iB::ludes the fracticmal
partial of the IUIber and the sign positim.
In each of the followi.rwJ three exanples, the
DBXirIun fUli)er
of digits
allOtllled
is
specified:
lbItJers

lUt(ll,7)
NlM(18)
tUt(O,18)

!Ut(S, 17)
•

'!'ake this path to specify a Boolean-type data item.
aJolean
iteaB are represented intemally as a 1 or 0 am printed as TRUE
or FALSE, respectively.

4 - 173

The Item Desc specificatioo describes a new data item.
Item Desc is
used in the Extensial clause to define the value, itan attributes,
editing picture, am total pcpulatioo of the new data item.

'!he syntax for the Item Desc specificatioo is as follows:

c

A

E

----><expcessioo>---------·------------------------------->

I
I
I
I
I

I
I

D

+-><intemal
->+
attributes>

IB

I
IF

+-><editing
->+
attributes>

><data ->+
name>

+-->mDEFINITI<»l
+->QP->+

The paths of this syntax diagram are explained below:

Explanatioo

Path
A

Take this path to define the value of the data itan by an
<expressioo>.
For every logical recotd proceaeed, a value is
calculated for the <expressioo> and assignacl as the value of the
Itan Desc.

Exauple:
OJER-IlJE IS

SDClY-~IXJE

'!he value of OJER-OOE is the
B

+ NINI'n'-MD-IllE.

8\8

of two data itans.

If a vocabulary data item to be reported has a name identical to
that of a REI?ORl'ER III functicm, take this path to define an
identical item with a different name. '!be &trived data itan has
the same value arX1 internal attributes as the itan referenced.
Editing-attributes are also the same if nat given explicitly.

4 - 174

Exanple:

ACCr-1GE IS REDEF OF ACXXXJNT-AGE
ACCr-AGE

reM

references

the

same

infonnation

as

does

ACXXXJNT-AGE •

c

Take
this path to assign
attributes> to the item.

appropriate

Default <internal attributes>
fom of the <expressioo>:

default

are detennined

<internal

by the type and

1.

If the <expression> is a data nane, the default
internal attributes are identical to the intemal
attributes of the referenced data item.

2.

If the <expression> is a REI:oRl'ER III functicn (for
exanple, the <AGE functioo», the default internal
attributes are the attributes of the value returned by
the function (the internal attribute returned for the
<AGE functioo> is a 5-digit signed integer).

3.

is other than a data nane or
the
value
of
the
<expression>
is
numeric,
:IN'l'mER-SlZE
and
FRACTICN-SlZE
are
used
to set
the
<internal
attributes> for a signed numeric item (refer to the
Process-q>tion SEl' statement in this section).
If

the <expression>

REPORl'ER III function and

4.

If the <expression> is a string, the length of the
striI¥J is used to set the <internal attributes> for
the string item.

5.

If the <expression> is Boolean, an unsigned digit (0 =
= TRUE) is used internally to store the value
of the Boolean item.
FALSE, 1

D

Take this path to specify explicitly <internal attributes> for
the item. The specified type of the item must match the type of
the <expression>, but the item size can be set to any value.
Exanple: ("CLlmr" )
OVER-lXJE IS SIX'lY-DAYS-OOE

+ NINE'lY-lY\YS-IXlE

NUMERIC(5,2)
'Ihe underlined portion specifies that OVER-IXJE is to reference a
7-digit unsignoo numeric item. Five digits are integers, am
two digits are fractions.

4 - 175

E

Take this· path to assign appropriate <editing attributes> to the
item.
If path B was taken, the default editing attri.butes are
identical to tbose of the item being redefined.
If path A was
taken, the default editing picture is detexm:i.ned by the intemal
item attribltes with the follari.ng two except.ions:
1.

If the <expressioo> is a data name and path C ws
taken, the default editir¥J picture is the editing
picture of the referenced data item.

2.

If the <express ioo> is a REPORl'ER III statistical
functicn
other than CXXlN'l' or ~
and
path C was taken, the default editing picture is the
expanded editing picture of the data item being
s\.mDaI'ized.

editing picture is based en the DBXiDun 'lOrAL-R>PUIATIal of
data structures specified in the INPl1l' stataaent.
(Refer
also to the Repart-opticm 8m' statement in this section.)

'!be
the

tOrE

A Boolean item is reported as TlIJE or FAISE
with a default editir¥J picture of X(S).

Bunple: ( "lNV!N1''' )

This statement creates an INVDllORr-VAUE item whim is
identical. in value and attributes to the INVDlT-OOLtAR-VAUE
item.
F

Take

this path to specify a radefault

editing picture for the

item.
Exanple: ("CLI!Nl'")

~~

"$Z(4)9.99 t1 •

underlined portial specifies an editing picture to be used
for the value of OJER-OOE.

'1he

4 - 176

If the vocabulary being used has the option
DECIMAL-POINT IS C(l.t1MA set, then the picture
must reflect this option to ensure the
proper decimal-point alignment.
Example:
WITH PIC IZ.ZZ9,99".

4 - 177

ITEM SIZE
Item Size is used to specify the nondefault size of intermediate values
resulting from calculation.
The syntax for Item Size is as follows:
A

D

----->INTEGER-SIZE---------------------> <integer>
I

I

I B

I

1

I-->FRACTION-SIZE->I 1
I
I+->
1 C

I

1-> TO ->1

1

= -->+

I

+-->STRING-SIZE--->+
The paths of this syntax diagram are explained below:
Path
A

Explanation
Take this path to specify the number of digits to be maintained
in the integer portion of intermediate result values.
The
number specified must be between 1 and. 18 for B 1000 systems,
and must be between 1 and 23 for A Series and B 2000/B 3000/
B 4000 systems.
The default is 12. In addition, INTEGER-SIZE
plus FRACTION-SIZE must not be greater than 18 digits for
B 1000 systems, and must not be greater than 23 digits for
A Series and B 2000/B 3000/B 4000 systems.
Example:
SRI' INTEGER-SIZE 'ID 10.

B

Take this path to specify the nuIriber of digits to be maintained
in the fractional portion of intermediate result values. Thus,
all intermediate results are truncated to this number of
fractional digits. The number specified must be between 0 and
18 for B 1000 systems, and must be between 0 and. 23 for
A Series and B 2000/B 3000/B 4000 systems.
The default is 5.
In addition, INTEGER-SIZE plus FRACTION-SIZE must not be greater
than 18 digits for B 1000 systems, and must not be greater than
23 digits for A Series and B 2000/B 3000/B 4000 systems.
Example:
SEr FRACTION-SIZE TO O.

4 - 178

C

Take this path to specify the number of characters to be
maintained for intermediate string results. Where intermediate
results are required for string manipulations, strings are
truncated to the right of this number of characters. When
using vocabularies created with software releases earlier than
2.50, this path also specifies the size of referenced groups.
The default is 30.
Example:
SEl' S'IRING-SlZE TO 20.

D

Take this path to specify the integer value to be assigned with
respect to path A, 13, or C, whichever was taken. Specify this
integer in terms of characters or digits, whichever
is
applicable.

4 - 179

1177185-003

LITERAlS

A <literal> represents a data item which has a value identical to the
value being described.
There are two classes of literals: numeric
literals, or <number>s, and nonnumeric literals, or <string>s.
NUMBERS.

A <number> is defined as an element composed of characters chosen from
the digits 0 through 9, a plus sign (+) or the minus sign (-), and the
decimal point (.) or comma (,) if the vocabulary being used has the
option DEC]MAL-POINT IS COMMA set. The rules for the formation of a
<number> are the following:
1.

A <number> can contain only one sign character and one

decimal

point.
2.

A <number> must contain at least one digit.

3.

The sign of a <number> must appear as the left-most character.
If a sign is not present, the <number> is defined as a positive
value.

4.

A <number> cannot exceed 18 characters for the B 1000 and B
2000/8 3000/8 4000 Series of systems and 22 for the A Series of
systems, including the optional sign (+ or -) character.

5.

The decimal point cannot appear as the right-most character of
the <number>.
The absence of a decimal point denotes an
<integer>.
NOIE

The form 25. is incorrect, but either
25.0 or 25 is a correct representation
for a <number>.
6.

A <number> cannot contain more than six characters to the right
of the decimal point.

4 - 180

The following are example numbers:
Without

With

DECIMAL POINT

DEX.::IMAL POINT

IS CClvMA Set

IS CClvMA Set
13247
,005
+1,808
-,0968
7894,64
10

132470
.005
+1.808
-.0968
7894.64
10

An

<integer> is a number which contains no decimal point.

STRINGS
A <string> can contain any allowable character with the exception of the
quotation mark.
The beginning and end of the <string> is denoted by a
quotation mark. Any character enclosed by the quotation marks is a part
of the <string>. A maximum of 55 characters can be used in a <string>.
Examples:
A SAMPLE STRING -/$."
SALES FIGURE"
"-1234.567"

"THIS IS

"ACIUAL

4 - 181

MEMJRY SIZE
The process statement SET MEMORY SIZE allows you to increase the amount
of memory used by the generated report program while it is executing.
This option is only necessary when very large report specifications have
been developed or a large amount of data is to be sorted. The type of
system plays a factor in how the extra memory is used.
The syntax for the MEMORY SIZE option is as follows:
A
--)MEMJRY-----------------)<integer)---------------------------~-----)

I

I

+-)SIZE TO->+

Path
A

I

I

+-~CTERS-)+

Explanation
Take this path to specify the amount of memory to be used by
the object program created by the REPORTER III system. The
actual amount of memory used depends on the system type.
The
maximum value allowed for <integer) is 999999.
A Series systems use the MEMJRY SIZE option in conjunction with
the sorting of input data. If SORT has been suppressed, this
statement has no effect. If no memory size is spec if ied, a
default of 12,000 words (72,000 characters) is used by the
COBOL compiler. Increasing the default memory used by the
sorting process can possibly increase performance. Specifying
a number less than 72000 will not decrease the memory used for
sorting.
For V Series systems, increasing the memory size allows large
report programs to be compiled. The use of the MEIvDRY SIZE
option might be required for report specifications that contain
many multiple reports,
that use the PRINT statement
extensively, and that use multiple files or a large data base.
If the syntax error "MEM)RY SIZE >= 300K DIGITS REtUIRED" is
received during the compilation of a report program, enter "SET
MEIDRY SIZE TO 15000" to allow the compilation. Increasing the
memory size when not required causes excessive memory to be
used.
However, this excessive memory can be an advantage when
large amounts of data are sorted.

1177185-003

4 - 182

For B 1000 systems, increasing the memory size increases the
amount of dynamic memory used by the report program. In some
cases this increase can improve the performance of the report
program.
For additional information, refer to the appropriate ANSI-74 or
ANSI-85 COBOL reference manual for your system.

4 - 182A

1177185-003

r-rnSTATISTICAL EXPRESSICN

nonstatistical expression is an expression which does not contain any
statistical functions or statistical data items.
A nonstatistical
expression can be of the type arithmetic, string, or Boolean.

A

Example:
QUANTITY

* UNIT-COST

AGE (FRQ\1 ORDER-DA'IE 'IO DA'IE)

1177185-002

4 -

> 30

182B

wu., SPE
-Null Spec is used to specify a 1'Oldefault value for null items.

'!be syntax for Rlll Spec is as follows:
D

A

>~I------'------>

---->~C-~-----------

I
I
I
I
I
Is

I

I

I

I

1-> ro ->1

+-> - ->+

E

->WLL-S'l'RD&-ITDIS,------->SPACES,---->

I

I I

1-> 'ro ->1 IF
I
1 I->~

+-> - ->+ 1 -

>

IG

1->UJmR-lDH&->

1

IH

1->UPPER-lDH&->

I
I

I

1->a.orES->
1

IJ

+->ALL <string>->+
K
~------------>~~------->

J

1 I

1-> 'JD -> I l L
I
I +->TRUE----->+
+-> - ->+
'!be paths of this syntax diagram are explained below:

A

Take this path to specify the V"alue to be assigned to NUlL
runeric data items for p.1l'POSeS of reportiD3 arxi processing.
'!be default value is ZElU).

4 - 183

B

Take this· path to specify the value to be assigned to NULL
striBJ items for pw:poses of repJrting and processinJ.
The
default value is SPACES.

C

Take this path to specify the value to be assigned to NUlL
Boolean items for pw:poses of reporting and processiBJ.
The
default value is ~.
lCrE

'Ibis ~al (path
Series of Systems.

D

C)

awlies

Take this path to specify the default

ally

to A

~C-I'I'fltf

value of

zero.
Exanple:
SET

E

~C-I'l'Dt)

'10 ZER>S.

Take this path to specify the default NtlLlJ-S'l'RIl'ITfH value of
all blanks.

Exanple:

F

Take this path to specify
NllIL-S'I'RIRrIT!M value.

G

Take this path to specify that the lowest value allCWlb1e within
the usage of the data item be used as the NULtt-S'1'RI1G-I'l'f.)J
value.

that character

4 - 184

zeros be used as the

H

Take this path to specify that the highest value alloeble
within
the
usage
of the data
item be used as the
NULlr-STRING-1~ value.

Exanple:
SEl' NUUr-STRING 'ro UPPER-8JUNDS.

I

Take this path to specify that a character string ccnsisting of
all quotes (II) be used as the WIL-S'l'RIlG-I'ftH value.
Exanple:
SET NULlr-S'I'RIN3-1'1'&1 'ro (JDl'ES.

J

Take

this path to specify that the given string be used as the
The striB3 is repeated as many times as
is necessary to fill the data item.
'lbe maxi.nun rudler of
characters allowed in the striB3 is 51.

NUUrSTRING-1TEM value.

Exanple:
SET NULlr-STRING

= AIL

II . . . .

striBJ of asterisks

in

Take this path to specify that the value FALSE be assigned
the NUUr-OOOU'AN-lTEM value. The default value is FALSE.

as

Any null string items are printed
the generated report program.
K

as a

Exanple:
SET NUUr-BDLEAN-1TEM 'ro FALSE.
L

Take this path to specify that the value TIIJE be assigned as the
NULL-axlLEAN-lTEM value.
Exarrple:
SET NUUr-BX>LFAN 'ro TRUE.

4 - 185

'lhe ORDER staterrent specifies 00w logical records are to be ordered
based on one or nore orderiBJ keys. '!be ordering is aubominate to a
cxntrol-break grouping specified elsNlere and nust be consistent with
any ordering described elsewhere (for exanple, the ordering described in
a REPORl' statement).

ORDER BY ENPYE-t«>.

This statement specifies that reported infomation is to be ordered by
enployee number in' ascending sequence.
'!be syntax for the ORDER statement is as follows:

+<-,--------, <-------....
J
pJ
I

A

C

I

G

->amER sy.------><data n a m e > - - - - - - - - - - - - ) .

I
Is
+-> <extension>->+

The paths of this syntax diagram are explained below:
~

A

Explanation
Take this path to specify that ordering be baaed <Xl the item
referenced by <data name> •
The itan referenced RUSt be a
nonstatistical data item.

Exarcple:

( "Vcx:EMP" )

ORDER BY ENPYE-NJ.
ENPYE-oo references a nonstatistical data item.

4 - 186

B

Take this 12th to define an <extension> and specify that
orderirg be based on the derivai data item. The itan must be
nonstatistical.
Example:

(IISHIPVII )

ORDER BY mY-oF-WEEK WHICH IS
-1 * AGE (F.RQ.1 DATE-oF-BILLIID '10
YYDDD 00001) IDD 7 + 1.

Transactions are ordered such that DAY-oF-WEEK increases fran 1
(f.t:>nday) to 7 (Sunday).

C

Take

this

12th to specify

the default

ordering

sequence

of

ASCENDIN3.

D

Take this path to specify ascending sequence.
Example:

("VOCASI''')

ORDER BY ASSE:l'-NO ASCENDIN3.

E

Take this path to specify descending sequence.
Exanple:

("CLIENT")

ORDER BY TOTAL-AMOtNI' DESC.

Invoices
anount.
F

are ordered

in descending

sequence

of total invoice

Take this path as many times as necessary to specify nultiple
orderin3 keys. If ITOre than one ordering key is specified, the
first key given is the major key; subsequent keys given are
subordinate minor keys.
Minor keys are used to order logical
records whenever a major key has duplicate values. A maximum of
9 keys can be specified.
Exanple:
ORDER BY lAST-NAME, FIRST-NAME.

Records are ordered by FIRST-NAME when lAST-NAMEs are identical.
G

Take this path when all ordering keys are specified.

4 - 187

peN 1177185-002

PASSWORD STATEMENT
The PASS\ORD statement supplies the password which enables the specified
vocabulary to be referenced.
'lhis statement is required ally if a
passworo was establishErl for the vocabulary by RP3VOC.
The passworo
must be given here exactly as it was provided in the RP3VOC run which
created the vocabulary.
A passworo can be either a <word> or <string>
specification.
If the statement is required and you do not enter the
passworo correctly, the REPORrER III Report Language Analysis Program
will tenninate abnonnally when it is run.
Exanples:
PASSWORD
PASSWORD

= "00sv".
= HELID.

The syntax for the PASSWORD statement is as follows:
->PA$~RD--------><lNOrd>---->

•

1
1 1
1
1-> IS ->1 +-><string>->+

1
+->

1

= ->+

peN 1177185-002

4 - 188

Boolean expressioo that is part of the PRESEtFCr clause specifies a
ooodi.tioo to be evaluated as true or false.
As an INPUl' statement
oontainiB3 a PRESEf·Fcr clause is executed, a data structure is accessed
am each record is checked against the PRESEtFCr Boolean expressioo. If
a record does meet the PRESEI.FCl' ooodi.tioo, the record is passed to the
logical record used to generate a report.

The

The PRFSEI..EX!r Boolean expressioo can be sinple, basic, or CCIIplex, arxi
is similar to the Boolean expressions explained under "Expressions" in
this sectioo. ~ver, RP3REP does ooly minimal syntax checking, 80 the
user nust be sure to use a PRESET.fCl' Boolean expressioo Wich is a valid

OOOOL74 ooodi.tional expressioo that includes valid relational operators.
Refer to the (DOOL74 Reference Manual for additicaal informatioo.
Altematively I REOORl'ER III relational operators can be used, as shown
in the list of valid operators appearing later in this subsectioo.

sinple Boolean expression is a cxnditioo name or a IJ6I1 data name
whim is of type Bcx>lean. When a cxnditioo name is used in a p~
clause, it cannot be equated to a data name.
A

followir¥J two report. specificatioos show the difference between
using a cxndition name in a SELEX:T statement and using ale in a
PR&SEI',fY!I' clause.

The

Exanple: ( "Vcx::EMP" )
Use in a SELEX:T Statement:
lNPl1I' ~-FILE.
SELEX:T SEX = MAlE.
REPORI'

~-NAME

ASC, EDJeATION-LEVEL, SAlARY.

Use in a PRESETFCr Clause:
INPUT ~-FIIE PRFSEI..EX!r MALE;.
REroRT ~-NAME ASC, EWCATION-LEVEL, SAlARY.

4 - 189

BASIC

~ CXH'LEX

BOOLEAN EXPRESSlCES

A basic Boolean expressioo carpares two data items or specifies a
oooditioo to be met. Cklly data items of the same type can be cx:upared.
cx:nplex Boolean expressioo describes logical qleratioos to be
performed 00 sinple or basic Boolean expressioos. 'lhe logical operators

A

are RlT, AND and OR.
a basic or oatplex Boolean expressioo is used in
clause, either the left or right operand can be a data name,
name, a string literal, or a ll\lllt)er.
An cparand 'Iilich is
nust be taken fran a previously referenced data structure or
data item. '!be data name cannot be a derived data item.
When

a PRFSE:rIi'Ct'

a oooditial
a data name
an acceptec1

'lhe following are exanples of basic Boolean expressioos:

can

> 1000.00

or
1000.00 <

can

'!be class tests 'l'RIJE, FALSE, am RltL cannot be used in basic and and
CCIIplex PRES'PaFCr Boolean expressions.
1bIeVer, the following cl.aa8
tests can be used:

•
•
•

'lbe following CD'lventicns
Boolean expressions:

also awly to basic

arXl CXIIplex

PRESPJI'Ct

1.

Pattern matching is not allOlMd in the PRESETlICr Boolean
expression, although it is allowed in the SEl'ICl' statement.

2.

'!he optional words IS, '10, and '!HAN are ignored if they appear

in the

PRES~

Boolean expreasioo.

4 - 190

Parentheses can be used to ensure the proper sequence of

3.

operations •
Valid Operators

The following table lists the arithmetic, relatiooal, and logical
operators that are valid for use in basic am OCIlplex PRESET.ECl' boolean
expressions.
'!be ql8rators KD and DIV canrx:>t be used in a p~
Boolean expression.
Operator

+

*
/
**

Additioo
Subtraction
Klltiplicatioo
Divisioo
Expcnentiatioo
Equal to

<
I.E.SS

less than

LT
LS5

>
GRFATER
GTR

Greater than

less than or equal to: equivalent
to WI' GRFATER THAN

Greater than or equal to: equivalent
to WI' LESS '!BAN
NEe

Not equal

RJl'
AND
OR

Negation
ConjlUlction
DisjlUlction

4 - 191

'l'he
pRfSEl'JOC!l'
clause is an option that can be used with the
data-structure clause to specify a selection condition in the INPUl'
statement of a report specification.

Read

the follCMing pages carefully before usiD3 the

p~ clause.
Inproper use oould adversely
affect the results of the INPU1' statement.

PRESEC:err clause can be used llDSt advantageously with nultiple data
structures that are related to each other. Exarcples are data structures
that are accessed in a ooe-to-many manner, am a data structure that
bears a key into a related data structure that is being accessed.
'l'he

Using the pRm'jEl:rrcr clause reduces the Il\lIIi:)er of data-structure accesses
that have to be done, thereby reduciD3 the I/O time used.
'l'tle syntax for the PRESET.fX'!l' clause is as follo.oJS:
(1)
----'------------------>
I
I I
I

1- RECORDS -I 1- WHERE -I

( 1 » - - - <PRESF:r1'Cr Boolean expression> - - ;

----

'lhe PpESEl.JiPr clause includes the PRESEI...EX:T Boolean expressioo, ~ch
yields a true or false ooOOition.
If the Boolean expressioo is true,
then the selected record is input to the logical record. '!be record is
passed to either the Report Sectioo or the Input Section, deperxii.ng at
whether the ORDER statement is present ard/or any oontrol breaks are
referenced.
If the Bcx>lean expressioo is false, the logical record is
discarded.
When the ~ clause is used with nultiple data structures, the
physical records of all the data struC1 'res will only be noved to the
logical record 'When the PRESEI...EX:T Bool m expression yields a true
cxmditioo.
If the cxmditioo is fal&~, the nonnal left-tcrright
accessing of the data structure stops at the data structure just read,
and the next record is accessed fran the leftnDst data structure at that

4 - 192

level.
use.

See "PRESELECI' Boolean expression"

for nore infonnation

00

cptional 1NOrds RECORDS and WHERE are used merely to render
PR&SEI'.fX":l' clause nore like English in the report specificaticn.

'!he

its

the

can be used in the INPUr statement of a report
specification when accessil¥3 a single data structure such as a. file, a
data set, or a dat:.a base. Using the PRES~ clause in a single data
structure can help to prevent data such as invalid numbers or dates with
zero values fran being }?Cissed to the report program, ~ere exceptions
can
occur.
(For llOre infonnaticn
on data structures, see the
Data-structure Clause in this section.)
After

the report program reads a record fran the data structure, it
checks the result of the PRESELEX...'"T Boolean expression. If the condition

is true, the requestErl data itans fran the data structure are passErl
fran
the Plysical
record to the logical record for subsequent
processing.
If the condition is false, the next record is accessed and
the PRESELECT Boolean result is again Checked. This process continues
until the end of the data structure is reaChed.
Only those physical
records 'Abich caused a PRESELECr Boolean condition of true are used to
create the logical record for the report.
C1m-'ID-Qm mTA-STRUCTURE ACCESS

The PRESEI.fPl' clause can be used in the INPUr staten¥mt of a report
specificatioo to indicate one-to-one access of a data structure.
In
this kind of access, one record of a data structure is accessed for each
record of a related or unrelated data structure.
Using the PRESELECI' clause in one-to-one accesses can reduce the number
of physical records accessed if the access of eaCh stucture is based on
the access of a previous structure. 'lhis one-to-one dependency is shown
in. the two exanples that follow.
Exanple 1:
A report that lists managers and their phone n\.lIt'bers is needed.
The
names of all enployees, their enployee numbers, arx1 their ranks are kept
in a single data structure called EMPIDYEE. '!he phone nl.lIIt>ers are kept

4 - 193

in an indexed system file called i'tmE-FILE, with &1P1DYEE NlJmER as the
primary key. For this report, the follOtling report specificaticn COlld
be used:

=

INPl1r EMPlOYEE, PI-Dm-FILE AT KEY
EMP-NUM.
SELECT a.tPlOYEE-RANK > 9. % MANAGERS ARE 10 AND AOOVE
REOORr EMPIDYEE-NAME A9, "NAME OF MANAGER" ASC, PI-Dm-NUMBER.

This report specifi,catioo causes a read of the PiDm-FILE for each read
of the EMPIDYEE data structure. I f the report specificaticm is changed
to include the PRESELECT clause in the INPl1r statement, the report
specificatioo might look like the following:

INPtJr EMPIDYEE PRESET.ECl' EMPIDYEE-RANK > 9;
, I?H();.JE-FILE AT ~ = EMP-NUM.

REroRr

EMPIDYEE-NAME AS "lWm OF MANAGER" ASC, PfDm-NUMBER.

Use of the PRES~"T clause will cause a read of the PI01E-FIIE to occur
only When the EMPIDYEE data structure I s DJPIDYEE-RANK field is greater
than 9, thereby reducing the number of accesses to the PI01E-FIIE data
structure.

Exanple 2:
Using the same entities as in the previous Exanple 1, assume that
PiDm-FIU: is a ~II data structure. The report specificatiCXl without
the PRESETFCr clause might look like the following:

INPtJr EMPIDYEE, PI-Dm-FILE

~

EMPIDYEE VIA DtP-lU+-SEl'
AT PfWE-EMP-NUM = EMP-NUM.
SELECT EMPIDYEE-RANK > 9;
REPORt' EMPIDYEE-NAME PS "NAME OF MANAGER" ASC, PiDm-NUMBER.

UsiBJ the PRESELECT clause to reduce the accesses
report specifcation oould be written as follows:

to PlDm-FILE,

PRESELECT EMPIDYEE-RANK > 9;
I?H();.JE-FlLE FIQ.1 EMPLOYEE VIA EMP-NUM-SEl'
AT PHCNE-FMP-NUM = EMP-NUM.
REPORl' EMPLOYEE-NAME AS "NAME OF MANAGER" ASC, PfWE-NUMBER.
INPt1l' EMPIDYEE

4 - 194

the

Exarcple 3:
The

PRESET~

the

SELECl'

clause may be used to produce a result similar to that of
statement, with better I/O time am fewer data-structure
accesses.
H:Jwever, you nust be careful in oalStructing the PRfSEl·.JtCl'
clause so a SELECl' statement is not CXlnverted incorrectly.

This exanple shows the use of a SELECl' statement, the (X)%'I'ect use of the
PRESETfX'!T clause, ani an incorrect CCI'lversioo to the PRESELECl' clause.
The exanple involves four data structures ~ch are accessed in the
one-to-one marmer with 00 structure depeo:ll.ng en a structure to its
left.
These data structures are named A, a, C, and D, and they contain
the fields A-1, B-1, C-l, and 0..1 respectively. Data structures A amC
each contain three records havin;:J the values A-l-l through A-1-3 and
C-l-1 through C-1-3 respectively. Data structures a and D eadl caltain
four records having the values 8-1-1 through 8-1-4 and 0..1-1 through
0-1-4 respectively.
Specifying One-to-One Access
The
following
report specificaticn
contains an INPl1l' statement
indicatiD3 that a ane-t.o-ale access of the A, a, C, and D data
structures will occur:
INPl1I' A, a, C, D.
REX:-<DUNT IS H.JNNIN3-<XXlm'.
REPORt' A-l, B-1, C-l, 0-1, REC-<DUNT.

The report generated fran the precec:li.r¥J
contain the follcwiD3 records:

report

specification

A-I

B-1

C-l

0-1

REC-cnJNl'

A-l-1
A-1-2
A-1-3

8-1-1
8-1-2
B-1-3
B-l-4

C-1-l
C-1-2
C-1-3

0-1-1
D-1-2
D-1-3
D-1-4

1
2
3

~ld

4

The generated program accesses the data structures fran left to right.
When data structures A and C have 00 records remaining, null values are
placed into the logical record instead of the values A-l-4 . and C-l-4
respectively.
This process continues until all of the data structures

4 - 195

are out of records. '!he INPUT statement used in the exanple results in
all data structures beirq at the same level, which is expressed as level

1.
Using

:!:!!! ml'Cr

statement

If the report needs cnl.y informatioo that meets the ccnditialS A-l =
HA-1-2" and e-l - Me-1-2M, the foll0wiD3 SEt..&::.r statement CXJUld be added

to the report specificatioo:
INlVl' A, B, e, D.
SEt.FX:T A-l - "A-1-2 H AND C-l - tlC-1-2'1.
JE-aufJ.' IS lIHJItG-(XJJNJ..
REPQRl' A-l, B-1, C-l, 1>-1, REX!-<XllNT.

'1hia report. specificatial causes all the recoms in the data structures
A, B, C, and D to be passed into the logical record before the selectioo
cxmditi<X18 are awlied. '1'he foll0wiD3 record appears in the report:

-A-l

-B-1

-C-l

-1>-1

A-1-2

8-1-2

e-1-2

1>-1-2

1

achieve the same result as the INPUT statement cootaining the
statement, the report. specificatioo aha1ld be written as follows:

'1'0

D1PU'l' A, S,

e,

~

D PRfSEI.pJ;T A-1 - tlA-1-2" AND

e-l - "C-1-2";.
1E-aufJ.' IS 1IHmG-CXlJNl'.
R£EIORT A-l, B-1, C-l, D-l, mx:-<DJNT.

'lhie is not a highly efficient. use of ·the PRESEt Fer clause; hoirIever I the
report prcduceCl will loolc identical to the cne prcxiuced using the
statement.

4 - 196

~

Incorrect Conversion Using the PRESETiFCr Clause

should be exercised When usiB3 the PRfSEI''I1Cr clause to cx:nvert a
statement. '!he following infonnation explains how an atteapt to
convert the SETFPl' statement into PRESF:r.fX'!l' clauses calld result in the
incorrect. INPl1r statement that follows.

Care

~

INPl1r A PRFSELECl' RECDRm WHERE A-l = "A-1-2";,
B, C PRFSEr.FPl' C-l
"C-1-2 11 ; , D.
REC-a:x.Nl' IS RlJNNIlG-OOtJm'.

=

REPORr A-I, B-1, C-l, D-l,

~-<DtNl'.

The selectioo conditions specifiEd by the PRESET.FCl' clauses are the same
as the ooes specified by the ~ statement.
ftJwever, the placement
of the selecticn coOOitians within the INPl1r statement skews the reading
of the files, so that the desired record is never found. Instead, this
INPl1r statement causes the generated report program to read the physical
records and form the logical records as shc:Mn in the following dlart.:
A

B

C

A-l-l
A-1-2
A-1-3

B-l-l

C-l-l

B-1-2
B-1-3
B-1-4

C-l-2
C-l-3

lOOICAL REXDRD

D

(IX) logical record fonned)
(IX) logical record formed)
(IX) logical reoom formed)

D-l-l

NULL

D-1-2
D-1-3
D-1-4

(IX) logical record fomed)
NUlL 8-1-4 WLL D-1-2
NUIL NUIL NUlL 0-1-3
NUIL WIL WLL 0-1-4

~1-2

C-1-2 D-1-1

The logical records sbJwn in the dlart. are catpletely different f~ the
logical records that tNQlld result fran the SEL.!Cr statement.
'!be
following list describes in detail the actioos caused by the INPl11'
statement cxntaining the PRESET.fY!l' clauses:

1.

Data structure A walld be accessed.

2.

The data fran A-I would be checked against the PRJi&:IFCr
Boolean expressial and 'WOUld cause a false conditioo.

3.

'!he false result causes the next. record fran data structure A
to be accesse1 and checked.
This time the result of the
PRESELECT Boolean check is true.

4 - 197

acceaaed.

4.

The next data stucture, named B in this exanple, is

5.

CcxltinuinJ fran left to right, data stucture C is accessed and
the PRESET·FPr Boolean CDldition is false.

6.

'!he false result causes a retum to the leftDalt structure of
the level.
In this case, all structures. are at level 1, 80
the left.m:>st structure is data structure A.

7.

Data

8.

The next access of A finds A exhausted of records.

9.

With

10.

The data fran C is checked against the PRfSEI'.pr:r
expression am results in a true oonditioo.

11.

The

12.

'!he canpletion of access to D results in the first logical
record bein3 built, with a null value added for the A data
structure.

13.

rata structure B is a<""Cessed, then C. '!be data fran C results
in a false conditioo when checked against the PRESaECl'
Boolean expression.

14.

'!he false result causes a return to the left so that the next
record in B is accessed. C is found exhausted of records, 80
D is accessed and the next logical record is formed with null
values for A and C.

15.

'Dle next access of B finds it exhausted of records.
SO D is
accessed am the next logical record is formed with null
values for the A, B, am C data structures.

16.

D is accesse1 am another logical record is formed.

17.

'Dle next access finds all of the data structures
records, so accessing is disccntinued.

structure A is accessed and a check of the PRFSP!tBCT
Boolean expression results in a false CXXlditicn.

00

records in A, B is accessed, then C.

true CDlditicn allows the left-to-right
cx:ntinue to data structure D.

4 - 198

Boolean

acoe&sinJ

to

exhausted of

The report produced loo1ca carplately different than the ale specified
and produced using the ~ atataaent..
The foll.ow.i.DJ illuatrat.icXl
shows the report. produced using the INPl1l' statement ccntaining the
PRESEI'FCr clauses.

A-I

B-1

C-l

D-l

~-cnm

8-1-2
B-1-4

C-1-2

D-1-1
1>-1-2
D-1-3
D-1-4

1
2
3
4

PRES~ clause can be used in the INPUr statement of a report
specificatial to indicate ooe-to-many access. In this kind of access,
ale
record of a data structure is accessed for each record of a related
or unrelated data structure.

The

following exanples explain how the ~ statement am the
clause can be used in an INPU1' statEment that specifies
ooe-to-many access of three data structures called A, B, and C. '1hese
data structures contain the fields A-I, B-1, and C-l respectively. Each
of the data structures ccntains three records with the values A-l-I
through
A-1-3,
B-l-l throogh
B-1-3,
and C-l-l tbroogh
C-1-3
respectively.
The

PRES~

Exanple:
following report specificatioo
data structures A, B, and C.

indicates Q'le-to-manyaccess of the

The

INPl1l' A(B( C) ) •

REC-a:x1Nr IS RI.JNNItG-(]){J (C-l) •
REPORI' A-I, B-1, C-l, REC-<DlNl'.

4 - 199

The report generated by the preceding report specificatiCXl woold ocntain
the foll0wi.B3 infoxmati.on:

A-I

B-1

C-l

REC-a:x.JNl'

A-I-1
A-1-1
A-1-1
A-1-1
A-1-1
A-l-l
A-l-l
A-l-l
A-1-1
A-1-2
A-1-2

8-1-1
8-1-1
8-1-1
8-1-2
8-1-2
8-1-2
8-1-3
8-1-3
8-1-3
8-1-1
8-1-1

C-l-I
C-I-2
C-1-3
C-I-l
C-1-2
C-1-3
C-l-l
C-1-2
C-1-3
C-l-l
C-1-2

1
2
3

•
•

•
•

•
•

A-1-3
A-1-3

8-1-3
8-1-3

C-1-2
C-1-3

4
5
6
7
8
9

10
11
•

26
27

'!he INPUl' statement "INPU1' A(B( C) )" results in data structure A being at
levell, B at level 2, and C at level 3. Level 3 is CCXlSidered the
imermoat level because it provides DDre inplt to the report than either
of the other levels used in the exauple.
Level 1 is CCXlSidered to be
the cutemDat level.
The generated program accesses the data structures fran left to right.
'!he first time through, data stucture A is accessed, then B, then C.
'!his results in the fomatiCXl of the first logical record. cne-to-many
access cans. the next read fran the leftmJet structure of the innermost
level.
In this exanple, level 3 is both the innenoost level and the
leftDcat structure at that level.
data structures in outer levels ue r¥X. accessed.
'1hi.s read of
level 3 foDnI the next logical reoord.
ibe inneJl1Dlt level will
ccnti.nue to be accessed, foJ:ming logical recmds until the data

'lhe

structure is exhauatad of recmds.
the.innernalt level is exhausted of records, the generated program
accaaaes the next recoJ:d f~ the next outer level. '!be innemcst level
is restored to the first recoJ:d am that recoJ:d is accessed, forming the
next logical. recoJ:d. As each level runs pUt of recmds, the next record
£:ran the next outer level is accessed until levell, the outeInDSt
level, is exhausted.
\'hen

4 - 200

In this exanple, data structure A would input three racoJ:da, B wculd
input three records three times, and C WQlld input three rec:x:Kda nine
times.
Using

~ S~

statement

needs ool.y infoxmatia'l that meets the cxn:1i.tials A-l"A-1-2" and B-1 = ltB-l-l", then the foll.owi.DJ ~ statement c::Dlld be
added to the replrt specificatia'l:

If the report

INPt1l' A(B(D» •
A-I = "A-1-2" AND B-1 = liB-I-lit.
REC-a:xJNl' IS ~.
REPORl' A-I, B-1, C-l, 1>-1, RB:-<lXNI'.
~

'!his SETJOC:l'
fonned.
It
structures.
the PRES~

statement is tested ally after each logical. re<X)m is
does not reduce the 1'lUI1ber of accesses to the data
fiJwever, the nunber of accesses oould be reduced by usin3
clause.

'!he INPt1l' statement containing the PRESJ.".JOC:l' clause oould be written as
follows:
INPt1l' A PRESErFCr REXDROS \tiERE A-l
(B PRES~ B-1 = liB-I-I":

= "A-l-2":

(C» •
mx:-a:xJNl' IS ~.
REPORl' A-I, B-1, C-l, 1>-1, RB:-<lXNI'.

'Ibis statement would cause the following actiCXlS' to occur:
1.

Data structure A is accessed.

2.

'!he data fran field A-I is checked against the PRESET FCr
Boolean expressioo am causes a false cxn:1i.tia'l.

3.

'!he false result causes the next record fran data stucture A
to be accessed and checked. This time the cxn:1i.ticn is true.

4.

'!he true result causes the generated program to advance to the
next data structure to the right, .~ch is B in this exanple.

4 - 201

5.

'!be PRESELECl' Boolean check
causes a true oondition.

6.

'!be true result causes data structure C to be read, and the
first logical record to be formed. The logical record 'MCUld
appear as follows:

7.

A-I

B-1

C-l

A-1-2

B-l-1

C-l-I

of data fran data structure

B

1

After data structure C is exhausted of reoords,
recx>rd fran data structure B is accessed
Boolean check yields a false result.

the next
and the PRmnPCr

8.

'!be false oonditioo causes the next record in data s"t.mcture B
to be accessed.
'!hat record also yields a false result W\en
checked.

9.

'!be next access of B finds the file exhausted
the next record in A is accessed.

10.

'!be PRESETFCr Boolean check for A yields a false result.

11.

The false result causes the next access of A, wilic:h finds the
data structure exhausted.
'!he logical record created 101ld

of records,

so

contain the folloang infomation:

A-I

B-1

C-1

A-1-2
A-1-2
A-1-2

B-1-1
B-l-l
B-1-1

C-l-2
C-I-3

C-I-I

1
2
3

following chart cxmpares the Ptysical records accessed in this
exanple with the logical records that are fonned.

The

A

B

C

A-l-l
A-1-2

8-1-1

C-l-1
C-1-2
C-I-3

IOOICAL REXDRD

A-1-2 8-1-1 C-l-l
A-l-2 B-l-l C-1-2
A-l-2 8-1-1 C-l-3

8-1-2
8-1-3

A-1-3
'!he preceding exartple shows that using the PRESET.FCl' clause reduoes the
l'Ultler of data-structure accesses required to create the correct logical

record.

4 - 202

PRINT EXCEPl'I<ES

Print Exceptions is used to specify that fOIm overflow ard/or
overflow are to be noted as errors or exceptions.

line

'!he syntax for Print Exceptions is as follows:

+<
I
I

-AND<------+

ci
I

A

D

-----!T7->FORM-o\1ERFI.Ql--->

I
I

B

of--

I
I

!T7-> LINE-<N.ERFLCJtl->+

'!be paths of this syntax diagram are explained below:
Path
A

Explanation
If you take this path, fonn overflow results in an error or
exceptioo.
Fonn overflow results when a print specificatial
other than a NEW FORM specification causes printing to overflow
a fonn.
Example:
PRINI' oorroo ro~-oVERFI.DW rUR EACH FORM HFADER
["C U S TOM ERA C T I V I T y"]
AT LINE 4 FOSITICN 14,
["PAGE"] AT 55,

Fbnm
overflow occurs when the print specification causes
printing to go beyond the last printable line of the fonn.

4 - 203

B

If ya.t take this path, line overflCM results in an error or
Line overflew occurs when a print specificatioo
other than a NDi FOR4, NEW LINE, or BI.ANK LINE specificatioo
caw].ea printing to overflCM a line.

exceptioo.

Exanple:
PRINT AS POI.1(MS tUrING LINE~:
FOR FACH EMPIDYEE-NO B£.ANK LINE,
[DJPIDYEE-NAME] , 2 BL:
FOR EAai RECDRD 2 SPACFS, (PREV-SUPERVISOR].
Each logical record ccntains infonnatioo 00 an Eltployee' s
previQ1S job within the ccnp:my.
If an enployee has had rrore
than six previous jobs within the ccnp:my, a line overflew
exceptial occurs as a result of the above PRINl' statement.
(Default IDR++lII1I'H is 132, am PREV-suPERVIS>R references a
name which is 20 characters in leD,;Jth.)

C

Take

this path

overflow are
D

to specify that both form overflew
to be noted as errors or exceptions.

and line

Take this path after you have specified all print exceptions.

4 - 204

Print Specific:atiala are used to specify wIlere
to be printecl.

am/or

hew information is

'DMI syntax for Print Specificat.i.a18 is as follows:

+,---------------------, <----------------------~I
I
sl
I

I

A

T

-------->~~~----------------------------------->

I
I
I +->NP----->+
I
18

I->cinaert>------------------>

I
Ie

D

--->
.. ~~--------------------------------->
I I
I
I

+->!!:~-->+

I

I

E

+-->QF <expressial>-------> I

I

I

+->CDft'IGlDB->+
I
P G
_________________

I

H

I
I

+->cint.egar>->+
J

>~~J,DQS~~~------------

__ >

-

+->BL~--->+

K

------------------>~~-------------------->

I
IL

+-><integer>->+

M H

Q

- - - - - - - - - > <strirxj>----------->

I
101
1-> <i.nteger>-> I
I
I
I p
I
+->Cdata naJDe>->+
R

+--> <cxn:litiooal print specificatialS>-------->+

4 - 205

The paths of this syntax diagram are explained below:

!!!:h
A

Explanatial
POR4, or l~, specifies that printing
(new page). Appropriate £Om headers and
specified are printed. '!be next available
If printing already begins on a new fom as
print specifications, no fonn is skipped
specification.
~

begins al a new form
footnotes which you
print positioo is 1.
a result of previouS
as a result of this

Exartple:

The above print specifications do oot result in a form skip.

Exanple:
NF, BU\NK LINES, NF

The above print specifications result in a form Mlich is blank
except for ~riate fcmn headers and footnotes \CUdl are
specified.
B

<insert> specifies the printing of an item, a constant
string, a fonn nurrIler, a page nunber, a date, or a time. The
entity inserted nust rxJt overflow a line. If the entity does
not fit properly on the line, an error or exceptial results.

An

next available print positioo
followiI¥] the insert.

The

Exanple:

("CLIJ:Nl'")

The above print specification
inserted properly on the tonn.
C

is the position inmediately

causes

the custaner

NEW LINE, or NL, specifies that printing begins
The next available print pJSitioo is 1.

4 - 206

Q'l

name to be

a new line.

D

Take

this path if a series of' adjoining (oc:ntiguous) lines CXl
same fonn need not. be assured.
If printiBJ already begins
CXl a new line as a result of previous print specificatialS,
no
line is skipped as a result of this specificatioo.
the

AWropriate fonn headers am footJx)tes Which were specified' are
printed if printiD3 1lIlst be ocntinued onto a new fonn.
'!his occurs when LINE-NUMBER >
allocated for fom footi1otes).
Exanple:

FO~-ux;rm

- (nuni:>er of lines

( I'VeCAST" )

PRINl' AS FOIUH):
FOR EACH mIDRD NL, [ASSET-IFSC], [CDST]
AT 40, [ASSET-LIFE] AT 59: •••

'!he above PRINl' statement
logical record is to begin

E

specifies that infonnatioo
a new line.

for each

(Xl

Take path E if a series of adjoinirVj (ccntiguous) lines 00 the
same foon is required. '!he <expression> specifies the number of
adjoinirVj lines; it RUSt be numeric am is truncated, if
necessary, to an integer value.
If printing already begins (Xl a Deli line as a result of previous
print specificatialS am if the specified rumi,)er of adjoinil'¥3
lines are available al the current foon, 00 fonn is skipped as a
result of this specification.
AR>ropriate fonn headers am footJx)tes Which were specified are
printed if printil'¥3 must be ocntinued onto a new fonn.
This
occurs When there are less than <expressioo> blank lines left CD
the foon before any footnotes.
Exanple:

( .. INVENl''' )

PRINT AS FOLUH;:

...

FOR FAaI DEPARIMfl.ll' SUM NL OF 3, BL,
tlTOl'AL QUANl'I'lY _tl, (rorAL( QUANl'IT'l) ], NL,
tlrorAL VAIlJE
- II ,
(rorAL( INVENl'-OOUAR-VAUJE) ]

In the above statement, the "NL OF 3" specification assures that
the department sUlIllaIY is never split across fonns.

4 - 207

P

Take this path to specify the printing of ale or DDre blank
lines.
Foll~ this specification,
the next available print
position is 1.
If printing IIIlSt be cxntinued alto a new fonn as a result of
this specificaticn, appropriate £onn headers and footnotes which
were specified are printed. Specified blank lines ~ch cannot
be printed at the botton of a fom because of overflcM are
suwressed When printing continues at the top of the overflow
:fcmn.

Exanple:
PRINT AS R>U.DWS:
FOR E10I R!XDRD BlANK LINE, [NAL.JE], [AGE] AT
35, [SAIARY] AT 45: •••

above PRINl' statement specifies that two lines are printed
for each enployee record; the first line is blank. If the BLANK
LINE specificatioo causes fonn overflow, printing CO'ltinues en
the next form, and the blank line is not printed.
'!be

G

Take this path to specify

B

Take this path to specify <integer> blank lines.

I

BIANK LINES am BL

J

ale

blank line.

are syncnyncus.

this path to specify the prin'tiBJ of ale or mre spaces,
at the available print poaitial. '!be next. available
print positicn follOlrli.r¥J this specificaticn is the positien
inmediately foll~ the last space printed.
Talce

begi.nni.ng

If nece&saIY, printiB] continues onto a new l~ as a result of
this specl.ficaticn.
Additiooal printing of spaces at the
overflew line is suppressed, and the next available print
positioo is 1. If printinj nust centinue ooto a new foxm,
apprcpriate fom headers am footnotes which are specified are
printed.
Exanple:

( 1tINVENl'1t )

PRINT(R>lIt-wII1lH .. 32, R>~-UHIl'H - 8): NF, BL,

8 S, "PARI' INPOII9.TICl'l", •••

above statement specifies that PARI' INFOlI9.TI~ aJ::.Pears en
the secxni line of the form, eight spaces fran the left.

The

4 - 208

It

Talce this path to specify one space.

L

Take this path to specify <integer> spaces.

M

Take
this path to specify the print.iol of a string of
c::ilaracters, beginning at the next available print p:lSitial. 'lbe
next available print positioo following this specificatial is
th8 positioo inmedi.ately following the last printed character.

Print.iol ocntinues onto a new line if necessaxy to print all
specified characters.
If print.iol IIllSt cxntinue alto a new
form, appropriate fom headers and footnotes which are specified
are printed.

If

yal

take this path, the specified <string> is printed cnoe.

ExaDple:
PRINl'(iOiM-wImH = 32, EO~-I.aGTH = 8): NF, BL,
8 S, II~ IN!t>~IOO", •••
lNF()a.tATIa~ is printed an the secood line of the fonn.
next available print positioo is positioo 25 of line 2.

PARI'

o

If you take this
<integer> times.
ExaDp1e:

path,

the

specified

<string>

'!be

is repeated

( 'IVOCA8I"I )

PRIN1' AS !OIUH):

R>R FINAL SUlfiARY NL, 35 SPACES,

14~, NL,

[rorAL(cmT)] IN 15 AT 35.

'!be underlined portioo of the above
col\ml of figures ~ch is totaled.

4 -

209

statement

urxlerlines

a

P

If yol take this path, the value of the referenced data item
specifies the number of times the <string> is repeated.
The
data item nust be numeric aId is truncated, if necessary, to an
integer value.
Exanple:

( ''V0CEM1t )

GIOJP BY R1aJES OF &SPm-AGE FRQrl 20 BY 5 'lO 70
AS AGE-lW.-GE.
lO-OF-DrfPWYEES IS CXXJNl'(POR EACH 1aE-IW«m).
REtATIVE-VAUJE IS (NO-OF-H'IDYEES/
MAX(oo-oF-~»

*

SO.

PRINl' ~ FOLI.£KS: •••
FOR FNll AGE RAtE ~y NL, (AGE-IWGE) ,
2 S, (oo-oF-~],
2 S, REI.ATIVE-VAIJJE ".".

'!be

type
age.
Q

R

above PRINl' statement results in a histogram, or bar graph,
report.
Fran 0 to SO "·"8 are printed for each range of

this path to specify the string of characters
appear al the fonn.

Take

..ru.ch

is to

Take this path to describe the layoot of a segment of the report
accordiBJ to a stated condition.

wudl varies
Exanple:

PRINI':

...

fOR EACH R!XDRD NL, [NAME], 5 SPItaS,

IF SAlARY < 2000

THEN ([SAIARY-'--mro 10 POSITIOOS)
EtSE (10 SPA£ES),5 SPACES,
[AGE];-: ••

'lhe <oorX1itional print specificatial> in the above statement
causes suppressioo of salaries within the report which are 2,000
dollars or over.

4 - 210

Exanp1e:

( 1SHIP\1" )

REPIACE PRINT-P-O-S( I)

BY IF EOmrs-oP-sHIPMBlfl'(I)
NfXl 0 (NL, [POlN'l'S-G'-sHIPMD1T[I]]!!! 15) I •
•
•

...

PRINT:
R>R FJ\Qf R!XDRD NL, [lUEER OF BIIL],
[POmrs-oP-sHIPM!Nl'[l] ]
AT 15, [POINT~-IDTINM'ItI1] AT 30,
PRINT-P-O-S( 2) ,
PRINT-P-O-S(3) ,
PRINT-P-O-S ("): ••• •
IlBCXO
PRINT-P-<>-S
repreaent.s
a <ccnditi.alal
print
8peCificatioo> •
The macro is used three times in the above
PRINT statement to provide for the p:88ib1e pr~ of three
additional points of shipnent. 'D1e report awears as follows:

The

lUmER

5mPMml'

JESTINATICB

mIN1'S

Specifications for
header not given

00010211

02399110 02399350
02398112

RfXDRD1

00010212

02397766 02397660

RllDRD2

00010213

02391000 11396770
02398113
02391177
02391203

R!XI)R>3

•
•

•
•
•

•

•
•

S

Take this path to give additicnal print specifications.

T

Take this path after all print specificaticnl for the partial of·
the report are 9iven.

4 - 211

PRINl' statement specifies how informatiCXl is to be printed alto
fonns.
'!be statement facilitates the printing of special fcmns such as
ccnfinnatial letters, mailiB3 labels, or Bun:oughs Mailer Sets. The
statement also provides a very flexible means
to specify a
user-fonnatted report -ru.ch is printed 00 a stama:rd form or displayed
en a teJ:minal device. For this latter use, a page or a screen is sinply
treated as a single form.

The

structure of .the PRINT statement allows the definitioo of the £om
to be given within the statement or conveniently specified via a macro
and merely referenced within the statement.

'lbe

ExaDple:

( "CLI!Nl'" )

PRINT MP-l AS R>LUM3:

FOR EAaf RJ:XDRD NEH

PO~,

2 BIANK LINES,
[QJS'lOER-NME] ,
NEH LINE, (Sl'REE'l'-AIl>RESS],
tmf LINE, [CIft'-S'l'A'l'E],
NEH LINE, [ZIP-<DIE] •

'!'he above statement specifies the printing of standard Burroughs 1-up
miling
labels.
MP-l references
a macro wuch
defines
the
dlaracteristics of themailil¥Jlabels.CD!mailJnj label is printed as
described for each reported logical record or custaner.
'!be stat.anent
cculd be specified in a DOre abbreviated manner as follows:
PRINT MP-l: NF, 2 BL, [alS'l'aER-NAME], NL,
[Sl"REEtl'-ADDRESS], NL, [CI'lY-BrATE], NL,

[ZIP-CDIE] •

4 - 212

Banplel

( "a..I!Nl'" )

PRml'~:

!at EAQI RECDRD NESf Milt,
[CIBlO£R-NAME] AT LINE 1 1Q)ITICB 1,

[S'.l'REel'-AIDR] AT LINE 3 IQ;ITICB 1,
[CI'lY-BrA'l'E] AT 5 1,
[ZIP-<DE] AT 7 1,
["03/31/77"J AT 15 2,
["MR. JaW OOE, VICE PRESIDENl'''] AT 24 1,
['I'1t7l'AL BA.LANCE DUE - II] AT 26 4,
[JW:Ata-00E] AT 26 24,
["XYZ SAv:n«;S & UlaWI ' ] AT 28 1,
["702 MAIN"] AT 30 1,
["IRVINE, C\LIF. 92714"] AT 32 1.
above statement Specifies the printing of negative CDlfi.11aatial
letters.
N!GA.TIVE-<Xm'Ilft references a macro Wdch definea both
attributes and text of a nu1tipurpoae negative ccnfimatial.
a.
confimatial letter is printed as described for ach logical record.

'!he

•
•

•
PRDll' AS !OI.UI6:
!t)R

FAaf 8IN-R) HrAIER 2 BLANK LINES,
..... BIN H, [SIN-RlJ, 1 BLANK LINE:

lOR EACH RECDRD 6 SPACES, [PARl'-t«>J.

A. report of the type shewn in Figure 4-4 is requi.recl.
.. ·PRINT statement formats the report exactly as required.
default fonn is used.

4 - 213

The atx:MI
A stardaxd

••• a'il 001
013221
013005
001322

053111
030052
554411

532100
411002

711300
110555

773116

881100

117755

077731
,'7001

899100
336600

877766

123456
777811

175123
000888

177775
431122

332117
332180

176631
187766

866631
311000

ltl8000
226601

110000

001330

222111

007777

"611

337703

821150

••• alII 002
111000

••• alII 003
000556
001320

Figure 4-4.

A User-Formatted Report

'!he syntax for the PRD1T atataaent. is as follows:
A

- > P I W f ! ' - - - - - - - - - - - - - - - - - - - - - - - > (1)

IB
+->PCRt->+ +->

I
I

«foJ:m attribJtes> )->+

c

E

(1)---------------------->(2)

I

D

I
I I

I
I

F

+->!!m!:!E «text> )->+ ...... >!!m! PNnEAN «text> )->+
G

(2)---------------------->(3)

I

IH

+->AS->+ +->ItJI..UItB->+ +->RJl'IN3 <print
except.icms>

4 - 214

->+ +-> : ->+

+<

(5)

; <

I
I

J

(3)

I
II

....

/T7

>(4)

K
)~

I
IL
I
I
1M
I
I
Is

/T7->,!!g! R!XDRD

>

>,!!g! <c-b name> HEAIER->
>,!!g! <c-b name>

1-/T7->FINAL

I

~->

&UfW{y.

-

.

10
1-/T7->FIRST P<R4 HFAIER

I

--

>
>

Ip

1-/T7->FIRST ~ POOllOl'E-->

I

--

IQ
1-/T7->EAQI l'tRt HFAlER

>

1-/T7->EAQI IOlI4 IOC7ftm'S

>

1-fT7->cmmR ItR6 HFAIER

>

I
la

I
Is

---

---

I
IT

-

1-fT7->C7lHER ItR6 1'OC7.lH71'E->

I

-

Iu
1-fT7->CNBWlDII IOlIt HrAIBl->

I
Iv

---

-t--fT7-~ POlII ~>+

+

(5)<

w

xl
I

y

>.

(4)-><print apecificatiCX18>

4 - 215

'!be paths of this syntax diagram are explained bela.':

!!!:!!
A

Explanatioo
Take this path if no change in default fonn attributes is
required.
The followilX} default form attributes are assumed.
Refer to R>1f.t ATTRIBtJrES in this section for a oatplete
explanatioo of these attributes.
Defaults:
132
54

FORM-WIDIH
FOm+-UHmi
S'l'ARI'-EOINl'
VERl'ICAL-SPACIN:;
FORM-T.iPE

B

1
CHANNEL 1
Sl'ANIWm

this path to change ale or nDre default fOI1l\ attributes.
Any attribute which is Itt given explicitly is assumed to have
its default value.
Take

Exanple:
PRINl' roRM (STARl'-POINr = 10,
FO~-wIOrH = 65,
FO~-'lYPE =

sP.EcrAL) •••

The above attributes are given to describe the £onn suitable for
1/2 x 11 inctl confinnatial letters.
Inplicit
attributes are PORM-I.iEHlI'H = 54 and VERl'ICAL-SPACIlIi = CHANNEL

printiB:J 8

1.
C

Take this path when the desired standard text is preprinted al
eadl fonn or when no standard text is desired for each fonn. In
the latter case, all text printed alto a form is supplied via
the <print specifications>.

D

Take this path to specify a standard text for each fonn.
SpecifyiBJ standard text for a fonn is similar to designing a
preprinted fonn; the given text is preprinted as described ooto
each fOIm by the generated rep:>rt program.
Figure 4-5 shows the use of this feature for the CXltpOSitioo of
a canfir.matioo form letter.

4 - 216

PRINl' FO~(STARr-roINT=lO, FORM-wrom=65, FORM-TYPE=S~IAL)
TEXT (
10 "DFAR SIR: II ,
12 "ClJR AUDITORS ARE MAI<Il'G THEIR RmUIAR EXAMINATlCE OF 00"

wrm

"R
IN RmARD 'ID '!HAT EXAMINATlCE, YOUR ACXXXJNT ••
llHAS BEI!N
"SEI.ECTED FOR CXNFlRo1ATlOO. PLFASE CXJt1PARE '!HE INR>m.tAT"
"ICE STATED
llBEUJtl TO YOUR RECDRIS AS OF
• TRANSACl'IWS SIN"
liCE '.tHAT
"IP.TE ARE 00l' ':to BE a:NSIDERED. IF THE INEU~IOO IS Nit
"or IN
"AGREEMENl' WITH YOUR RECDROS, PLEASE srATE '!HE DIFFEm»C"
liE W THE
"R!.VERSE SIIE AND RE'IURN THIS FORM DIRECl'LY TO OOR AUDIT"
"ORS.
IIIF OORREX:T, N) REPLY IS NEX:!ESSARY. II ,

13 "ACXXXJNl'S.
14
15

16
17
18

",
,

II

I',
II

,

",
II

,

II

,

20
22 ''VERY TRULY YOORS,"
) AS FQLUH;: FOR FACH REXDRD NEW R>BM,
[a.JS'IQER-l'W£] AT 1 1, [STREET-ADDRFSS] AT 3 1, [CI'lY-STATE] AT
5 1, [ZIP-<DDE] AT 7 1, ["03/31/83"] AT 15 29,
["MR. JOfti DOE, VICE PRESIDmr"] AT 24 1, ["TOrAL BAIAta: DUE - II
] AT 26 4, [lW..ANCE-lXJE] AT 26 24, [''XYZ SAVm:;S & I£WJII] AT 28
1, ["702 MAIN"] AT 30 1, ["IRVINE, CALIF.
92714"] AT 32 1.

Figure 4-5.

PRINT Statenent (with Specified Text)
for Confinnation Fonn Letter

E

Take this path when no fonn pattern is to be defined.

F

Take this path "men a fom pattern is to be defined.
A form
pattern is a dumny-fonn image that is printed before the actual
printin3 of foms to help yoo detennine proper alignnent of the
fol:ms <Xl the printer. '!be number of t.ines this fonn pattern is
printed is given in the SEl' FOR+-PA'rl'ERNS specification. If SET
R:>R-1-PATl'ERNS is not specified and pattern text is given, 00
pattern printin3 occurs. If SET FOIM-PA'lTERNS is specified. am
pattern text is not given, an error results.

4 - 217

G

Take this path if line ard/or foon overflow resulting fran
subsequent <print specifications> in path I is not to be flaggEd
as errors or exceptions.
Subsequent <print specifications>
describe printiD:J in a top-dcwn, left-to-right manner. When
print specifications result in printing beyaXl the right-most
positioo of the fonn, printi:D3 continues 00 position 1 of the
next line. When print specifications result in printing beyaXl
the last available line 00 the fom, printing oontinues 00
position 1 of the next available line oc the top of the next
fonn.
In
nany cases, the type of <print specifications> given
guarantees that line overflow and fom overflow cannot occur.

H

Take this path to specify that line and/or foon overflow is to
detectEd as an error or noted as an exception.
In many
cases, overflow can be detected by an analysis of the PRINl'
statement and flagged as an error. If overflow results in a
run-time exception, printir¥3 is disCCXltinued.

be

I

Take this path to specify bJw ale
user-fonnatted report are to appear.
Exanple:

or IIDre

portions

of the

( 1tCLI.ENI''' )

PRINl' MP-l AS EOLtOIlS:
FOR FACll REXDRD NE.W roRM, 2 BlANK LINES,

--

[~-NAME],

NEW LINE, [STREET-ADDRESS] ,
Nb"W LINE, [CI'IY-STATE],

NE.W LINE, [ZIP-<DIE].

In

the above statement, the portion of the report corresporni.r¥J
each logical record is the only portion specified.
As
specified, this portioo always begins (Xl a new fonn am
oorrespalds to a single fonn.
to

Exanple:

( "INVENr" )

PRINI' AS FOLtOIlS:
FOR FACli BIN-OO HEADER 2 BlANK LINES ,
- - I I • • • BIN ",
[BIN-N01~ 1 BlANK LINE;
FUR FACliREooRb 6 SPACES,-[PARr-NO].

The above PRINT statement specifies the printing of a report
consisting of two portions: a control-break header for each bin,
and a portion for each logical record or part. ('lbe specified
report is sho,m in Figure 4-5.)

4 - 218

J

Take this path (or path K) to describe bJw infonnation is to
appear for each logical record reported.
Path J inplicitly
specifies a "EOR EAai REXDRD" clause arxl cannot be taken if the
"!OR FAQi REOORD" option (path K) was taken previously.
Exanple:

(tla..:IEtn'tI)

PRINT MP-l: NF, 2 BL, [a..5'IQ£R-NAME] I NL,
[STREET-ADDRFSS] I NL, [CI'lY-STATE] I NL,
[ZIP-<X>DE].

print specifications given in the above PRINl' statement are
assumed applicable to each logical record.

The

K

Take this path (or path J) to describe bJw information is to
appear for each logical record reported.
Path K explicitly
specifies a "PUR FACli REXDRD" clause am cannot be taken i f the
inplicit "FOR FAQi REXDRD" cptioo (path J) was taken previously.
Exanple:

("~")

PRIm' MP-1: EOR FAQi RECDRD l~ I 2 BL,
[CUSlO1ER NAMEr,NL, [srREEr-ADDRESS], NL,
[CI'lY-STATE], NL, [ZIP CDDE].
'lbe above PRINl' statement is identical in
statement given in the exanple for path J.

L

meaI'liB3 to

the PRINl'

Take this path to specify the printing of a header ccntaining
infonnatic:n related to a control-break item. <c-b name> nust
reference a previously defined centrol-break item.
'!be
specified
<c-b name> defines
statistical
functioos specified in
specificatioos>.

All

the
the

default

scope for
<print

subsequent

items printed via the <print specifications> for the header
be sumnary items related to the specified control-break
item.
lblstatistical items printed in the header are declared
inplicitly as sumnary items.

J'CI.lst

4 - 219

__

e;

14'v:::n,.r\l
.~

(

II ~'tv
TlI.'ft ~,."II
)
J;A.'t.A.

PRINT AS R>LI.DWS:
EOR FAai BIN-NJ HEADER 2 BL, u • •
-(BIN-NO] I BL;
EOR EACH REXX>RD 6 S, [PARl'-NO].

*

BIN

II I

A 4-line header is specifie:! for each bin IlJ..Uti:)er in the above
PRINT stateroont (see Figure 4-4).
M

this path to specify the printing of sumnary infonnatial
related to a control-break item. <c-b name> nust reference a
previously define:! control-break item.
Take

The
~cified
<c-b name> defines the
statistical
functions specified in the

default scope £Or
subsequent
<print

~ifications>.

sumnary is printed after the last logical record related to
value of the control-break item is printe:!, and after all
sumnaries for any lONer-level control breaks are printed.

The

eadl

Each item printed via the <print specificatialS> far the sumnary
nust be a sumnary item related to the specified CXXltrol-break
item.
Nonstatistical items printed in the sunmary are declared
inplicitly as sumnary items.
Using the <c-b name>. in the
surrmary is stroD31y discouraged: the value cx:.ntained in the <c-b
name> can change before the surrmary is printed.

PRINT:
RlR FACH INV-a.JST-N:>

~ ~

LINE,

-"'IOI'AL It, 30 SPACES, ['lUl'AL (AK1JN'1'-PAID)]
IN 10;
RlR F.ACH REXDRD:

NEW LINE, [INVOICE-OO],

24 SPACES, [AK1JN'1'-PAID]

m 10; •••

In

the alxwe PRINT statement, a l-line sumnary is specified for
custaner IlJ..Uti:)er. The line eontains the total anomt paid
for
all listed invoices
placed appropriately
under the
ancunt-paid column.
each

N

Take this path to specify the printing of a surrmary for all
reported infonnation.
The sumnary is printed after the last
logical record is printed and after any specified control-break
sumnaries are printed.

4 -

220

All items printed via the <print specifications> for the FINAL
s\mlllry IIUSt be s\lDIIIMy items· related to all informatioo
leported. Nalstatistical items printed in the FINAL sunmary are
declared inplicitly as sunmary items.
ExaDple:

("INVENl''')

PRIlfl' AS PULIJ:MS:

FOR FINALSUl+2AR.Y NF, 11 S, "QUANTITY", 3 S,
-ItIXlLIAR VAIlJE", BL, ItTOl'AI"", 4 S,
['lOl'AL(QUANl'ITY)] IN 9, 1 S,
('lOI'AL( INVENl'-OOLIAR-VALUE)] IN 15, BL,
"Av:E:RAGE It , 2 S, AVERAGE (QUANl'ITY) ] IN 9,

[Av:E:RAGE(INVENr)-OOLIAR-VALUE)] IN 15.
In the above PRINl' statement, a final sunmary is specified Which
appears 00 the last fom as follows:

o

51662

317721.06

13

71.28

Take this path to describe the printiD1 of a header for the
first £onn. '!be FIRST FOR-t HEADER always begins at the top of
the first fonn: a N&l FOR-t print specificatioo is inplicit am
DUSt· not be given.
You cannot take this path if the FACH POiM
HEAlER cptial was specified previously.
header cannot CXXltinue ooto a new fonn. 'Dlat is, the <print
specificatials> for the header cannot cause £onn overflow, am
it cannot oontain a NE,W LINE specificatioo or a NEW FQRe1
specificatial which 'MOUld continue the header alto another form.

A

values of any items which appear in the header are dJtai.ned
fxan the first reported logical record.

'lbe

Exanple:

( "INVENl'1t )

PRlNI':

PUR FIRST EOR-t HFAD 52 S, "LIsr OF
-PARI' NtH3ERS~BIN", 3 BL; •••

'!be above PRINl' statement. specifies· a report
centered at the top of the first page.

4 - 221

title Which is

P

Take this path to specify a footnote for the first form. '!he
footnote appears 00 the very botton lines of the first fonn.
You canoot take this path if the FACli RR4 ROI'NOl'E option was
specified previwsly.

footnote always begins 00 a new line; a NDl LINE print
specificatiat is iDplicit and need not be given.
<print
specifications> for a footnote canoot ccntain any of the

A

foll~:

1.

N!X POaI specificatioo.

2.

NEH

3.

<Data name> <strir¥J> specificatioo.

4.

<Qmdi.tional print specificatioo>.

LINE specificaticm
footnote alto a new foIm.

~ch

woold

oontinue

the

'!be footnote begins 00 LINE-NtJmER = R>lM-LlHn'H - (rutber of
lines specified for the footnote) + 1, and it continues to the
last position on the fonn.

values of ~ items wich cq:pear in the footnote are taken
fran the logical record beiD.:J printed at the time a print
specification or form overflow causes the fom footnote to be
printed.
'!be

Exanple:

( "CLI!Nl''' )

PRINl':
R>R FIRST R>a.t POOl' ". - •RISK RATDG'
INDICATES" tt'lHE ~ amlIT RISK (1 IS
IDtl RISK, It "5 IS HIGH RISK)";... •

above PRINl' statement specifies a l-line
ClfP88Is at the last line of the first fonn.

The

4 - 222

foot.:ing

~Ch

Q

Take this path to describe the printing of a header for each
form.
'!be FAQf EOIf4 HEADER always begins at the top of each
form: a Nmtl R>m.t print specification is inplicit and need not be
given.
You cannot take this path if the FIRST FO~ HFADER
optioo or 0l'HER roR-tS HEADER optioo was specified previously.
A header cannot continue onto a new fonn. That is, the <print
specificatioos> for the header cannot cause fonn overflow, and
it cannot contain a N!W LINE specification or a NEW FO~ print
specificatioo ~ch would exntinue the header ooto another fonn.
The values of arJ¥ data names, extensioos, am so forth, which
appear in the fonn header reflect the values contained in the
logical record \1Ithich caused a new fonn to be started (they
reflect the values used in the last logical record in the

previOUS fonn).
Exanple:

( II INVml'" )

PRINT:
FOR Ea\Qf FOR-! HEAD 52 5, IILIST OF PART NUMBERS

BY sn~", 3 BL: •••

The above PRINT statement
the tq> of each page.

R

specifies a report. title centered

00

Take this path to specify a footnote for each fonn.
'!he
fOJtnote appears 00 the very bottan lines of each fonn. You
cannot take this path if the FIRST :roR-t EOO1NOrE option or 0l'HER
R>IMS RX1l'1Cl'E optioo was specified previously.
footnote always begins 00 a new line: a NEW LINE print
specificatioo is inplicit and neal not be given.
<print
specificatioos> for a footnote cannot exntain any of the
fo110wi.r¥3:

A

1.

NEW roRM specification.

2.

NEW

3.

<Data

4.

<Candi tional print specification>.

LINE specification
'lAUch \«)\lld
footnote onto another fonn.

name> <string> specification.

4 - 223

continue

the

The footnote begins 00 LINE-NUMBER = EOlI4-LF.N:n'H - ( ...aber of
lines specified for the footnote) + 1, and cootinues to the la8t
positioo (Xl the form.

values of any items which appear in the footnote are taken
fran the logical record beiBJ printed at the time a print
specification or fonn overflOW' causes the fotm footnote to be
printed.

The

Exanple:

("CLIENl'")

PRINl':

• •• FOR FACH PO~ POOl' ". - •RISK RA.TIR:;'
INDICATES" "'!HE aJS?lJtER omIT RISK (1 IS
I.Otl RISK," II 5 IS HIGH RISK) It: •••
The above PRINT statement specifies a I-line footing
line of each fonn.

(Xl

the last

Take this path to describe the print.i.BJ of a header for each
fonn other tban the first. The C1.lHER iOlM9 header always begins
at the top of a form: a NEW :ro~ print specificatioo is iDplicit
am nust oot be given. 'ltds path cannot. be taken if the BAal
POlItt HEAlER qJt:ion was specified previcusly.
header cannot. ccntinue alto a new foml. '!bat is, the <print.
specificatioos> for the header cannot cause foml overflow, ani
it cannot. ccntain a NEW PUR-t print specification or a NIIf LDE
specificatioo which walld caltinue the header onto another fom.

A

values of any data names, extensiaw, and 80 forth, "'-ich
appear in the fonn header reflect. the values CXXItained in the
logical record \\bich caused a new:fonn to be started (th8y
reflect. the values used in the last logical reaxd in the
previous -fonn)-. ' .
The

("~")

...
fOR C1.lHER PUBMS HEADER 52 S, "LIST OF PARr

NUMBERS BY BIN" I NL, 60 S I

II

(CXlfl'INUD)

II I

3 BL: •••

The

above PRINl' statement

specifies a report title centered at

the Up of each page other than the first.

4 - 224

T

Take this path to specify a f<X)tnote for each form other than
the first. The f<X)tnote appears on the very bottom lines of the
form.
You cannot take this path if the EACH FORM FOOINarE
option was taken previously.
A f<X)tnote always begins on a new line; a NEW LINE print
specification is implicit and need not be given.
<print
specifications> for a footnote cannot contain any of the
following:
1.

NEW FORM specification.

2.

NEW LINE specification
Which would continue
f<X)tnote LINE specification onto another form.

3.

<Data name> <string> specification.

4.

<Conditional print specification>.

the

The f<X)tnote begins on LINE-NUMBER = FORM-LENGTH - (nurriber of
lines specified for the f<X)tnote) + I, and continues to the last
position on the form.
The value of any items which appear in the footnote are taken
from the logical record being printed at the time a print
specification or form overflow causes the form footnote to be
printed.
U

Take this path to specify a header for each form onto which
overflow
is continued.
A form overflows
when a print
specification other than an unconditional NEW FORM specification
causes printing to overflow the form and continue at the top of
the next form.
The header resulting from the OVERFLOW FORM
HEADER
specification appears immediately after any header
resulting from a FIRST FORM HEADER, EACH FORM HEADER, or arHER
FORMS HEADER specification at the top of the form onto which
printing is continued.
A form header cannot continue onto a new form. That is, the
<print specifications> for the form header cannot cause form
overflow, and it cannot contain a NEW FORM specification or a
NEW LINE specification Which would continue the header onto
another form.

4 - 225

The values of any items which appear in the header are obtained
from the logical record which is being printed at the time a NE,W
FORM print specification or form overflow causes the header to
be printed.
Example:
PRINT

("CLIENT")
("UNPIRM-STATEMENT AS FOI.JJ::MS:

FOR EACH CUSTOMER-NUMBER HEAD NEW FORM, ••• ;
FOR EACH RECORD NEW LINE, ••• ;
FOR OVERF FORM FOOT "ACCOUNT INVOICES
CONTINUED" liON ATTACHED STATEMENT";
FOR OVERF FORM HFJ.\D "INVOICE NUMBER", 2 S,
--IIDUE DATE II , 2 S, "TOTAL AMJUNT", 2 S,
"AMOUNT PAID", 2 S, "lAST PAYMENT II , 1 BL.

The above PRINT statement is identical to the PRINT statement
given in the example for the OVERFI.Oil FORM FOOTNarE option (path
V) except for the specification of an overflow form header. The
header supplies detail column headers which are printed on any
attached statements (overflow form).
V

Take this path to specify a footnote for each form which
overflows.
A form overflows when a print specification other
than an unconditional NEW FORM specification causes printing to
overflow the form and continue at the top of the next form. The
footnote resulting from the OVERFI.Oil FORM FOOTNOTE specification
appears on the very bottom lines of the form containing the
overflow before any footnote resulting from a FIRST FORM
FCX)'!N(Jl'E,
EACH FORM FOOTNarE,
or aI'HER FORMS
FOOTNarE
specification.
A footnote always begins on a new line; a NEW LINE print
specification is implicit and need not be given.
<print
specifications> for a footnote cannot contain any of the
following:
1.

NEW FORM specification.

2.

NEW LINE specification which would
footnote onto another form.

3.

(Data name> <string> specification.

4.

<Conditional print specification>.

4 - 226

continue

the

footnote begins on LINE-NUMBER = iORM-Im1l'H - (m.mi;)er of
lines specified for the footJx)te) - (nuni)ers of lines specified
for any footJx)te resulting fran a FIRST iOBM RXY.IH:11'E, EACH :roRM
RXY.IH:11'E, or arHER iORti POODDrE specification) + 1.
The
Il\lIti)er of lines required to print all appropriate footJx)tes are
pre-allocated en each form.
The

values of any items which a~ in the footJx)te are taken
fran the logical reoord bei.n3 printed at the time a print
specification or fom overflow causes the form footnote to be
printed.

The

Exanple:
PRINl'

(11CLIENl'tI)
CXNFIRM-5TA~

AS EOII.aB:

FOR EACH a.JSIa.1ER-NUMBER HEAD NEW EORM, ••• :
EOR F.Aai REXDRD Nla'W LINE, ••• :
EOR OVERF FURM FCXJl' IIACXXXJNl' INVOICES
-CXJ:lrINUED" IIQI A'rI'ACHED STAT&JENl'tI.

'lhe above PRINT statement specifies the printing of a positive
CXJnfinnatioo letter which includes a listir¥3 of account balance
details.
~l~STAm.{ENl'
references a macro which provides
the attributes arx:i standard text of the form letter. Space is
provided 00 the last half of the fom letter for a detail
listing.
en occasion, details are exntinued onto a separate
fonn.
When this occurs I the specified 0VERFI.atl R>RM POODDrE
provides a proper notice to the custaner.
W

<print specifications> describe, in a top-down, left-to-right,
abbreviate:} manner, What infonnatiCXl is to be placed cnto
the foon and how it should ~.
A portioo of the report is
descru.! '4IIhidl is printed just cnce (FIRST :ro~ HFADER) or is
printed a nlll'Cber of times dependir¥J en the n\Jlli:)er of logical
reoords reported ard/or the CXXltrol breaks specified (for
exanple, <c-b name> HFADER or RECDRD display).
and

4 -

227

Exanple:

( "CLIENT" )

PRINT MP-l

~

roUDWS:

FOR FAOi RECDRD NEW ro~, 2 BlANK LINFS,
-(CUsro£R NAME],
NE,W LINE, [b'TRml'-ADDRESS] ,
Nfl~ LINE, [ CITY-STATE] ,
~ LINE, tZIP-<DDE].

The above <print specifications> describe how a portion of the
report appears for each logical record reported.
This partioo
is
repeated
once for each logical record re~ted;
it
correspcnds to onemailinglabelform.an:i appears as slDwn in
Figure 4-6. (MP-l references a macro Which sets Sl'ARl'-POINl' =
11, rolM-WIIJI'H

= 30,

ro~-~

JOHN c. OOE
107 S. MAIN
IRVINE, CA.
92714

Figure 4-6.

X

Take

this path to give

= 8,

and roR-1-~E

= SPECIAL.)

sr

Semple Mailing label

<print

specificatioos>

for additional

segments of the report.
Y

Take

this path after all portions of the user-fonnatted

have been described.
Exanple:

( "INVEl~" )

N:J::EPr PARl'-NUMBER. INPUT PARlMF USIOO PARI'AM AT
PARl'-NO = PARl'-NtImER.

PRINT (POR+1amH = 32, m~-~ = 8) :
.NF, BL, 8 5, "PARI' INRlRMATlc:N", 1 BL,-"iESc:":" [PARl'-DESC], NL,
- "(JJANTITY c:N HAND: ", [cjjAirI'lY], NL,
"BIN NtJmER: ii, [BIN-NOJ•

4 - 228

report

'!'he above PRINT statement specifies the desired laycut. far a
'1'1)730 screen. ·cne screen displaya infomatial CD a particular

part as shown in Figure 4-7.
PART INFORW'IW

!ESC:

1977 C U BtI4PER GRD
QIAm'I'lY W HAND: 00021
BIN NlImER: 017

Figure 4-7.
Exaap1e:

Sanp1e TD 730 0Utplt

( ''VeCAsT1t )

PRIltl' AS !OLI.a6:

lOR F1tQi POat HFADER 25 S, It_It, [PAGE~l
IN 4, 3 S, "_", BL;
FOR EAaI R!XDRD NL, [J\SSEl'-DESC], [crsr] AT
AO, [ASSET-LIFE] AT 59:
FOR EACH IlEE'r-J)D HEAD NF, 19 S, "1EPARlMBRl'
lIIEER", [IEPT-W], 2 BL, "J\SSEl' 1ESe",
[1CXlS'l'"] AT 46, ("LIFE"] AT 57, BL:
!at OVERF FOBM HEAlER "J\SSEl' D.&SC", [ "aJST"]
AT 46, ("LIFE"] AT 57, BL:
lOR FINAL &JItfARY NL, [".
"] AT 36,
NL, ('lOl'AL(cmT)] IN 15 AT 35.

'Ihe above PRINT statement specifies a report ocmsiating of five
distinct portions (see Figure 4-8).

4 - 229

-

1

-

JEPAR1MENl' NUMBER 1112

•

L1~"E

ASSET DESC

<-FACH EORM
HEAlER

<-FAai DEPl'-R>
HEAlER

'1'YPDIRI'l'ER SERIAL g). 77-3845
CAUlJIA'lOR 00. 7112-36602
ADDIR; MAanNE

$
$
$

282.70
310.00
205.00

10
10
12

mxx>RD
<-FACll REXDRD
<-FAa{ REXDRD

<-FAa{

•

-

2

-

<-EACH EOR-t
HFADER
a:sT

LIFE

$
$

151.83
210.11

20
20

<-FAQi RECDRD

$
$

4.95
78.95

5

10

<-FACE RBDRD
<-FACi RECX>RD

ASSET DESC

<-cNERFI.Oil

EOBM HEADER

STEEL InJ< ~ 00. 8231
2 DRAWER DESK

$

Figure 4-8.

18771.28

PortiCXlS of a UserFoxmatted Report

4 - 230

<-FAClI RBDRD

• <-FINAL SJt+lARY

'!be Processing tbie clause is used to change the default prcx.'e88ing noie
of the generated report program. The default values are detennined as
follows:

1.

'lhe generated report program is to be run as an
independent batch program. Batch JtCde is the default Whenever
the Report Language Analysis Program is run fran the card
reader or throlgh the operator display tenninal. (CDr or sro).

2.

cn-line.

Batch.

'!be generated report. program is to be run under the
of en-Line RERlRIER III. Ql-line JlDde is the default
..nenever the Report Language Analysis Program is run fran a
t.emdnal via Ckl-Line REPORl'ER III.
oootrol

In either batch or oo-line ncde, the report listings or £oms list.ir¥Js
can be sent to printer, printer backup, or tenninal. backup. In al-l.ine
1IIlde. the report. list.ir¥Js or foms listings can also be sent to the
temdnal.
'!be excerA:icms listing can be sent to printer, printer
backup, or tenninal backup in either roode.

A tenninal backup file is a disk file that is auy
accessible via On-Line REPORl'ER III. Yoo can view
it at a terminal or print it 00 a line printer using
On-Line REPORl'ER III.

'!be syntax for the Processing

~e

clause is as follows:
A

---------------->MXE:--------·------>ON-~>

I
1
1
B
1
1-> 'ro ->1
1
1 -t-->BA.'roi-->+

+-> = ->+

4 -

23.1

'!he paths of this syntax diagram are explained below:

A

Take this path to specify that the process~ m:xie of the
generated report program is oo-line.
'!be default haJ:dware
device for the report llstiDls, the fol:ms listiBJs, and the
excepticms listiBJ is texminal backup. You can override these
defaults with the appropriate Report-qJtion Statement(s).

ExaDple:

report program is

exeaJticm of the generated
cxntrollec1 by Ql-Line REPORI'ER III.

The

B

to be

Take this path to specify that the processing DDde of the
generated report proglam is batch. tft1e default haJ:dware device
for the report, foms, or excepticms listiBJ is the printer.

ExaDple:
SET K'IE - 1Wl'CH.

'!he generated report proglaIU is
pro:;p:am.

to be

4 - 232

an independent batch

Yoo can use the Process-qJticm ASSlQi statement for either of the
following p.u:poees: to specify explicitly the source for i.nplt of
accepted data to a particular generated report proglaml to specify
explicitly tbe ootput device/neans to be used for the except:.icms listing
pxoduced by a particular generated report program.
'.l'he syntax for the P1'OCe&s-qJticm ASSIGN statement is as
A

foll~:

B
>~~------>CI7r-------->.

I

I 1 I

I

I 1

I

1-> ~ ->1 1 I->~>+

+-> = ->+ l e i
l->RFADER-> 1

I

I

1D

I

I->TAPE->I

I
I

-

I
I
l->TERMINAL-> I
1FI
E

+<--------------+

I

+->DISK------------------------->

-I
GI

+->Wl'1H.-----> <external ->+

-

I

file name>

+->lWm->+
H

I

+->EXLZPtICH; ------->BACl<UP'------>
I
I I
~
1-> 'lO -> I I J

I

+->

I I->TERMINAL BACWP'-->
I -

= ->+

IK

L

+-->PRINTER------>+

I

Ml

I
I

+->BACWP->+

4 -

233

The paths of this syntax diagram are explained belON:
~

A

Explanation
The ASSIGN ACCEPrED-DATA' statement specifies the source for
input of accepted data to the generated report program.
All
accepted data is free-foon with each field separated by one or
nore spaces. Data described to be a string must be enclosed in
quotes (").
This statement is valid only when used with an
ACCEPr statement.
The de fau 1t device for assigning accepted
data is RFADER if PRJCESSIN3 MJDE is BATQi, and TfB.UNAL if
PRCX.:ESSIm K:>DE is OO-LINE.
(Refer to Process-q>tioo SET
statement in this section.)
Exanple:
ASSIGN ACCEPrED-DATA

ro om.

The accepted data for the required
through the operator display tenninal.
B

report

is to oe entered

Take

this path to specify that the operator display tenninal
be the hardware device for accepted data. This device is
also ~ as the console printer (SJ?O). You can use either ODl'
or SPO in this specification.
All accepted data is illplt via
the
qJerator display tenninal keyOOard.
'Ib specify the
end-of-data ccniition, enter <mix#>AX mID.
(oor)

C

Take this path to specify that the accepted data·be input via
the card reader. The first card must have an invalid character
in oolumn 1, follOlried by the \<JOrds DATA RP3DM'. 'lbe last card
must have an invalid character in oolumn 1, followed by the word
END.
Exanple:
ASSIGN ACCEPrED-Di\TA

D

= RFADER.

Take this path the specify that the accepted data be input via a
tape drive.
ASSIGN ACCEPrED-DATA 'ro TAPE.

4 - 234

E

Take this path to specify that the accepted data be entered fran
a temdnal.
Use of this path is valid ally if the processing
m::de is CE-LINE.

F

Take this path when the accepted data is to be input fran a disk
or disk pack file. '!his file DUSt be an 8O-character DATA type
file.
Other file types, such as CANOE sequence or (DOOL, 1NOUld
input the sequence nunbers as part of the accepted data am
thereby ~ld result in errors.

G

Take this path to specify an <external file name> for the
accepted data file assigned to disk. If this path is l'X)t taken,
the default file name will be RP3D1\T an disk.
Exanple:
ASSIGN ALX::EPl'ED-MTA DISK WI'lH NAME "PGMAXD"
PACK 1tUSER3 It •

H

'!be ASSIGN EXCEPTICNS LISTIR; statement causes the exceptions
listinJ produced by the generated report program to be assigned
to the specified output device/rreans.
Exanple:
ASSIGN EXCEPTIONS LISl'IN3

'It)

BAC<1JP.

I

Take this path to assign the exceptioos listir¥3 to backup. The
type of backup is depeOOent 00 the processing node.
If the
processin:] m::xie is BATQI, BAC<UP means printer backup. If the
processing node is W-LINE, BACl<UP means tenninal backup.

J

Take this path to assign the exceptioos
tenninal backup.
When processing is
texminal backup is the default.

lis~

specifically to
in the OO-LINE node,

Exanple:
ASSIGN EXCEPTIONS LIST 'ID 'l'l:"»1 BACXUP.

K

Take this path if you desire to specify that the exceptions
listing be assigned to the printer or to printer backup.

4 - 235

L

Take this· path to specify that the exceptions listing be
assigned to the printer.
It is a functioo of the system
software to determine ..nether the listing is sent to the printer
or to printer backup.
When processiD1 in the IWl'Qi mode,
printer is the default.
ExaDple:
ASSIGN

M

!XCEPl'Ia~

LIST PRINl'ER.

Take this path to specify
assigned to printer backup.

that

the

exceptions

Exanple:
ASSIGN !XCEPl'IONS

LISTI~

= PRINTER BACKUP.

4 - 236

listing

be

You can use the Proceas-q»tioo ~VE statement to cause certain files to
be saved and stared en disk. Yoo optionally can specify <external file
nama>s far these files.

'!he syntax for the Process-q»tion SAVE statement is as follows,

+<-AND<-+

I

1

1

I

1<- , <-I

+<-----------------------------------------+.
1
1,1
I

->MW

-

I

+<

+

I

HIM

A

/T7->SJi'!CFICM'ICE---------->.

I
I B

-

I
II

I 1-/T7->pAlW£1'ERS-> +->AS <external ->+
file name>
I
Ie

+->BEPtRr->+

1-/T7->CDPJJL

I
1
I
I
I

>

+<----+

I

+->~>+

ID

1-rT7->OBJ!X:T
>
I
IE
1-rT7->EXCEPl'I(H) - >
I
LIS'l'DG
I
I I'
1-/T7->EX'l'RACl'-VCCAL ->+
I
SJi'!CFICATIcm
I
-

IG

+<

I
+->!!

J

+-/T7->EX'l'RACl'-VOCABt.llARY--------->+
I
I
KI
I
I
I

<external file name> ~ <external file name>->+

The paths of this syntax diagram are explained below.

4 - 237

Path

Explanation

A

Take this path to specify that all subsEquent statements in th~
specification be saved on disk. All statements follCMing this
statement in the specification are (re)sequenced and saved.
This file can be referenced in subsequent report specifications
with a CXl1BINE statement.
If this path is not taken, the
specificatioIl disk file will not be cr~ated.
Example:

SAVE SPECIFICATIONS.
B

Take this path to specify that the parameters proouced by the
Report Language Analysis Program be saved on disk. Nonnally
this parameter file is renoved after being processed by the
Report Program Generator.
By saving the parameter file arxl
suppressing GENERATION, the Report Program Generator can be run
independently of the RefX)rt Language Analysis Program. (Refer
to the appropriate discussion in Section 6 for details.)

C

Take this path to specify that the generated CDBOL source report
program be saved on disk in a state ready for subsequent use.
If this option is not specified, the CDBOL source file remains
on disk after compilation, but it is not resequenced.
Exanple:
SAVE CDBOL.

D

Take this path to specify that the report program created by
cc:npiling the generated CDOOL source program be saved on disk.
If this option is not specified, the canpiled program is renoved
by default.
Example:
SAVE

E

O~.

Take this path in conjunction with path I to assign an external
file name to the exceptions listing p~uced b¥ the generated
report program. Exceptions are run-time errors which can occur
duriI'XJ the input, processing, and output of data for a report.
The exceptions listing will be produced When at least one
exception error occurs.

4 -

238

Assigning an extemal file name to the exceptions listing will
have 00 effect on the operation of the report program while the
internal file is assigned to the printer.
Reassigning the
exceptions listing to another hardware device, such as disk:
through a system file equate statenv.mt gives nore neaning to
this optioo.
'!his option is primarily used When the processing node is set to
on-line. Using this path in podljunction with the process-optioo
A$IGN statement (ASSIGN EXCEPl'IONS LISl'IN3 'ID TERMINAL BACKUP)
allONS the user to assign a meaningful file name to the
exceptions listing accessible through the on-Line REroRTER III
product.
Using this path without taking path I is meaningless.
Exarrple:
SAVE EXCEPrIWSLIsrIl:l:; AS IIEXCPOl li •

The exceptions listing file is assigned an external file name of
EXCPOl.

If the exceptions listing had been assigned to TERMINAL
the file EXCPOl would be accessible through the On-Line
REPORl'ER III product.
BACKUP,

F

Take this path to specify that the vocabulary specifications
generated for files extracted "WI'IH VOCABUlARY" (refer to
EXTRACI' Statement in this section) be saved on disk. If this
option is not specified, the vocabulary specifications are
removed by default.
Exanple:
SAVE EXTRACr-VOCAL SPECIFICATIOOS.

G

Take this path to specify that the vocabulary files created by
the
RP3VOC program based on theEXTRACI' WItH VOCABUIARY
statenents be saved on disk.
Since these files are saved by
default, this path is used primarily in cor,junction with path K
to name the files.
Exanple:
SAVE EXTRACr-VOCABUlARY AS "NEWVOC" AND "NEWVC2".

H

Take this path to specify that for paths A thru F the default
<external file name> is satisfactory (refer to Appendix B:
DEFAULTS AND LIMITS).

4 -

239

I

Take this path to specify explicitly the <external file name>
for the file to be saved.
BlOOD system users must not use a
period as part of the <external file name> of a SAVE OBJEX!T ~
<extemal file name> statement.

Exanples:
SAVE

spa:

AS "RP3SPC".

The remaining specifications
saved in the disk file AUDSPC.

in the deck are resequenced

and

SAVE O~ AS "RP30BJ".

The generated
RP3OBJ.
J

report

program is saved

as a disk

file named

Take this path if ycu desire default external file names for the
extract vocabulary files selected in path E (refer to ~
B: LIMITS AND DEFAULTS).

K

Take this path to specify two nondefault
to identify the extract vocabulary files.

<external file name>s

Exanple:
SAVE mcrRACT-VOCAB AS _
"RP3VCl"
"RP3VC2".
_ _ _ -AND ---.;---.0----

The extracted vocabulary files are saved as "RP3VCl"
"RP3VC2" • The name of the VCX2bulary is "RP3VCl".

L

Take

this

path

to specify

additiooal

qX.ions

in

the

and

same

statenent.

Exanples:
SAVE SP~ AS "RP3SPC" O~ AS "RP3OBJ".
SAVE CDBlL AS "RP3CDB", 0PJECl' AS ItRPJOBJ", spa:
AS "RP3SPC" AND mcrRACT-VOCAL AS "RP3VOC".

second exanple above assumes the presence
statement in the report~ification.

The

M

Take this path after all desired
are specified.

of an mcrRACT

cpt.ioos in the same statement

4 - 240

PROCESS-OPrICN SEl' STATEMENT
The Process-option SET statement enables you to assign nondefault values
to certain processing attributes.
If the default values are
satisfactory, this statement is not needed.
The syntax for the Process-option SET statement is as follows:
+-<-AND(--+

I
I
1-<- , <--I
I
I

+-<------------+---------+--------------+

I

II

I

A

I

I
I

B

I
I

I
I

c

I
I

I
I

D

I
I

I
I

E

I
I

I
I

F

I
I

I
I

G

I
I

I
I

H

I
I

J

-->SET---+------><item size)---------------------+------>.
+------><null spec>------------------)--+

+------)<processing mode)------------)--+

+------)<total population)-----------)--+
+------)<base date)------------------>--+

+------)<abbreviated month)----------)--+
+------><full length month)----------)--+

+------)<memory size>----------------)--+

The paths of this syntax diagram are explained below:
Path
A

Explanation
Take this path to change the default size of intermediate
values resulting from the calculation of expressions and
statistics within the generated report program.
The size of
the
intermediate result values affects the accuracy of
intermediate,
4 - 241

1177185-002

and therefore final results: it also provides a default size
for derived and accepted data items.
If the size specified for intermediate values is not large
enough for the integer portion of the result of a calculation,
an exception is noted by 'the generated report program; if it is
not large enough for the fractional portion, truncation of
least significant digits occurs.
B

Take this path to change the default values of null items for
purposes of reporting or processing. Null-valued items result
from certain retrievals as specified in the INPUT statement, or
from exceptional data processing (for example, dividing by zero
causes an exception to be noted and a null-valued result).

C

Take this path to change the default processing mode of the
generated report program. This path must not be taken unless
On-Line REPORTER III is being used.

D

Take this path to provide an estimate of the maximum number of
logical records which are initially selected and/or sampled for
reporting. This estimate is useful in determining an optimal
field size for the printing of certain statistical values.

E

Take this path to change the default base date.

F

Take this path to change the default month abbreviations from
English to another language. The month abbreviations are used
in the TITLE statement, the PRINT insert clause, and the date
format DfM\1.\1YY-DATE.

G

Take this path to change the default month names from English
to another language.
The month names are used in the TITLE
statement and the PRINT insert clause.

H

Take this path to increase the memory size for the generated
COBOL program object code. This clause is necessary only for
very large report specifications or where a large amount of
information is being sorted.

1177185-003

4 - 242

I

this pa:th to specify any additional process SET options in
same statement.
The same option should not be specified
nore than once in the same report specification: however I if
this occurs I the last specification is used by REPORl'ER III.
Take
the

J

Take this path after all desired process SEI' options in the same
statement are specified.

4 -

242A

peN 1177185-002

The process optioos enable you to vary the default operatioo of the
REPORrER III &"ystem. '!be basic default qleratioo of REPOR1'ER III (Xl the
A Series Systems,
the B 2oo0/B 3OOO/B 4000 System, am the B 1000

System,

respectively,

is described

under

the

appropriate

~IC

PRCCIDURE headi1'¥; in Section 6.

Exanple:
SUPPRESS crMPlLE.

This speclficatioo
program.

halts

the autanatic

COlpilatial of the generated

'!he syntax for the Process-option statement is as follows:
A

-><process-option SAVE statement>

I
I B

1

1-><CXlMBINE statement>-

I
I

>

I
>1

I
I

C

1-> <prc:x.~ss-option ASSIGN statement>-> I

I
I

I
I

D

I--><process-option SUPPRESS statement>->I

I
I

E

+--> <process-option SEI' statement>

I
I
>+

The paths of this syntax diagram are explained below:

Path

A

Explanatioo
Take this path be name explicitly and/or save certain
files, intermediate result files, and output files.
Exanple:
SAVE OBJECI' AS IIMYPlm".

4 -

243

work

This statement specifies that the catpiled, generated program is
to be saved 00 disk as the file uMYPROG II •
B

Take
this
path
to specify
the nerging
of
specificaticns with existinJ report specifications.

subsequent

Exanple:
CXJomINE WITH "ARSPEC".

In this case, the specification input is taken as patches to be
merged with the report specifications in the disk file ··ARSPEX:".
C

Take this path to specify that accepted data be taken fran a
different device than the caJ:d reader, or that the exceptioo
listing is to go to a particular hardware device.

Exanple:
ASSIGN ACCEP1-ED-DA.TA 'ro SPO.
In this case, the accepted data
printer instead of the card reader.

D

is taken

fran

the COlSOle

this path to alter the autanatic initiatioo of the various
processes of the REEORrER III System, or to suppress various
'rake

listiBJs.

Exanple:
SUPPRESS GENERATIOO.
In this case, the specificatia'lS are scanned ao:i syntax-checked,
but no program is generated.

E

Take
this path to dlange the default values of various
processirvJ parameters.

Exanple:
SET NUI.L-S'rRlK:i 'lO AIL "* II •

In this case, null string-data items are filled with asterisks
instead of the default spaces (blanks).

4 - 244

The Process-qJt.i.cn SUPPRm;s statement enables selective aupprea8:ial of
\JrIIIIIiUlted actions during and after the Report Language Analysis Program
executicn. Hale of the actions are suppressed by default.

'!be syntax for the Process-cpticn SUPPRESS statement is as follows I

+<-AND<-+

I

I

I

I

1<- , <-I
+<

t

I
I

LI
I

A

->SUPPRESS

/T7->SPF.cr.FICATlrBS

>.

I
Is
1-/T7->GENERATICB

>

1-/T7->cntPILE

>

I
Ie

-

I
ID
1-/T7->aJOOL

>

I

IE

1-/T7->EXEXl11'IOO

>

I
IF

G

1-/T7->EK.CEPl'IOOS->LIST:ml-->

I
I
I
I

I
I

I
I

H

+->DETAII.S->+
I

1-/T7->EXl'RACl'-VOCAL GmERATICE->

1
IJ

-

1-/T7->EXl'RACl'-VOCAL EXEXl11'ICE->

I

-

IK
+--/T7->!!!!, SlI+JARY--

>+

The paths of this syntax diagram are explained bela-r.

4 -

M

245

Explanation

Path

A

Take this path to specify the suppression of SPEClFlCATlOOS (the
listing of report statements and diagnostics).
Example:
SUPPRESS SPEC.

B

Take this path to specify the suppression of GEl'JERATlCE (the
report program generation).
This option is useful for a
syntax-only check of the report specification.
Subsequent
action, if desired, is done manually. Refer to the appropriate
portion of Section 6 for infonnation en executing the Report
Program Generator.
Example:
SUPPRESS GEl'JERATIW.

C

Take this
carpilation
appropriate
carpilation

to specify the suppression of ~ILE ( the
of the generated rep:>rt program) •
Refer to the
portion of Section 6 for infonnation 00 manual
of the generated report.

path

Example:
SUPPRESS a:MPILE.
D

Take this path to specify the suppression of CDOOL (the listing
of the generated program produced during the carpile).
Example:
SUPPRESS <DOOL.

E

Take this path to specify the suppression of EXEXl1l'I~ (the
suppressioo of executioo of the catpiled generated report
program).
'!he program is not saved by default.
If the
generated report program is to be executed at a future time, yw
nust
also specify
a SAVE OBJEX:T
statement
(refer
to
Process-option SAVE statement in this sectioo).
Exarrple:
SUPPRESS EXFXl1I'IW.

4 - 246

F

Take this path if all .or part of the infoonaticn in the
exceptions listiB3 is to be suppressed.
An exceptioos listiBJ
cxnt.ai.ris detailed informaticn related to irxiividual exceptions.
It also contains a oount of the total n\llli)er of exceptions
encountered •

G

Take this path if the entire exceptions listing is to be
suppressed. Exceptions checking is dooe in the generated report
program, but no exceptioos report is prcxluced. A count of the
n\llli)er of exceptions is given in the run sumnary report if the
run sumnary is not suppressed. If this path is taken, an ASSIGN
EXCEPl'IONS LISTING or SAVE EXCEPTIONS LISTING specificatioo is
ignored.
Exaltple:
SUPPRFSS EXCEPl'IOOS LISTIR;.

H

Take this path if the detail infonnaticn
listing is to be suppressed.
CDly a count
exceptioos is reported.

in the exceptions
of the llL1Il'ber of

Exanple:
SUPPRESS EXCEPl'IOOS IETAILS.

I

Take this path to specify the suppressicn of EXTRACT-VOC'AL
GENERATIW (the creation of new vocabulary specifications for.
extract files) • This path is used ally in conjunctioo with the
EXTRACI' WI'lH VOCABUI.ARY specification.
Exaltple:
SUPPRFSS EXTRACT-VOCAL GEN.

J

Take this path to specify the suppressicn of EXTRACl'-VOCAL
EXB:l1l'IOO (the autanatically initiated execution of the RP3VOC
Program).
'lbis path is used ally in conjunction with the.
EKTRACI' wrnI VOCABULARY specificaticn.
It allows the RP3VOC
specification deck for the extract vocabulary to be built 00
disk
but prevents
the executioo
of this deck.
These
specifications can be executed subsequently with the proper file
equation.
Exanple:
SUPPRESS EXTRAcr-VOCAL EXEX::.

4 - 247

K

path to specify the suppressioo of all run-sunmary
If this path is not taken, a run- S\mlllary is reported
as usual for each report section at the end of the REPORl'
LISTDG RL<nnrr>.. A:run sunmary includes the nuni)er of records
processed by the input sectioo and report section, and the
ll\lIli)er of exceptiCXlS detected.

Take

this

reports.

Exanple:
SUPPRESS RUN

~.

If both exceptions listing am. run sunmary
are suppressed, the user is not notified of
any exceptioos that might invalidate the
reports.
L

Take

this path to specify additicmal.

suppress

cpt.ions in the

same statEment.
SUPPRESS

M

~ICATI<ES

EXEXVI'ION.

Take this path after all desired
statement have been specified.

suppress

4 - 248

cpt.ialS in the same

'!he RaOOan-sanple Desc is used to describe a randan sanple.
'!he syntax for the Rai¥ian-sanple Desc is as follows:
A

D

B

---><integer>-->OOT OF-><integer>

>(1)

I
--I
II
II
I
c
I E
I +-> R!XX>RDS->+ I
I +-><acpt data ->+
+-><acpt data ->+
+<-+
I
name>
name>
I
iF
G
I

+->APPRlXIHATELY-><integer>---->PERCENr--------->I

I

I

IH

+-> <acpt data ->+
name>
I

(1)--------------------------------------------------->
J

K

+

>~><integer>--------->+

+->WI'IB->+

-I
I L

+-> <acpt data name>->+

'lbe paths of this syntax diagram ~e explained below:
~

A

Explanaticn
~e

this path to specify the . exact sanple size or llUIliler of
records to be sanpled randanly out of a krlown strata pop1laticn.

Exanple:
SAMPLE RANIX.»-tLY 100 c:JJr OF 5107

ImJ:)~.

This sanp1e. calSists of 100 records taken randallly
predetennined population of 5107 records.

4 -

249

out of a

B-<:

'lbe sanple size can be specified by an <integer> (path B) or an
accepted data item (path C). It must be a positive integer less
than or equal to the strata population.

D-E

The

strata populatioo can be specified by an <integer> (path D)
or an accepted data item (path E). It nust be a positive
integer. It DUst be predetennined and supplied as accurately as
possible to assure a resulting semple which is truly randan. If
unknc:wn, the strata pop..1laticn can be detennined by appropriate
repoct specifications.
Exanple:
ACCEPl' SAMPLE-SIZE NUM(5).

SAMPLE CREDIT-ACCTS RANIXHX SAMPIE-SIZE an' OF
10564 RECDRnS.

F

Take this path to specify an aRlroximate semple size as a
percentage of all records in the strata. 'lbe percent specified
actually represents the probability of any one reoord in the
strata being selected for the sanple.
Exanple:

--

SAMPLE RANIXHX APPRlXIMATELY 5 PERCENl' c:F AIL

-

REXDRDS.

'!he sanple oonsists of awroximately 5 percent of all records in
the strata.
Each record has a 5 percent chance of being
selected.
G-H

'!he

awroximate

percentage

of records

specified

as an <integer>

(path H).

It nust be a positive integer.

(path

4 -

G)

250

to be sanpled

can

or an accepted data

be

item

I

Take this path if a seed is not to be specified for the REPORl'ER
III randan Il\lII'ber generator.
A default seed is used ~ch is
randanly generated by the report program for each run (and for
each set of accepted data when supplied). '!his seed is printed
in the run sunmary.
Exanple:
SAMPlE R.ANJ:X:HN APPRlX 2 PEICPNl'.
A default seed is generated for each run of the generated report

program.

'lberefore,

a different

sanple is produced

for each

run.
J

Take this path to specify a seed.
'Ihe re~ program then
produces the same sanp1e each time it is run.

Exanple:
SAMPLE RANJ:XJo1LY 100 CX1l' OF 827 WITH SEED 123.

-----

The specified seed of 123 is always used by the generated report
program.
K-L

'!he seed can be specified
accepted data item (path L).

an <integer> (path K) or an
It IIIlSt be a positive integer.

by

4 - 251

RANGE-BREAK-ITEM DESC
The Range-break-itern Desc i..::i used to categorize infonna.tion. You use it
stipulating value ranges (range breaks or control breaks) for a
prrticular data i tern, referred to as a ranged i tern. You then can obtain
the item values of logical records in the stipulated ranges.

by

The
Range-break-item
Desc
defines
a
range-break
item.
The
range-break-item is a .string that denotes the lower and upper range
'limits of a ranged data item (for example, where age is the ranged item,
age values are organized into range-break groups: 20-29, 30-39, and so
forth) Once defined, the range-break item is referenced by <c-b nane> in
other report lCIDJUage statements.
Ranges must be specified in increasing sequence value, and they need not
oontiguous or of equal intervals.
Specified range groups always
include the lower limit and exclude the upper limit value.

be

Exarcple:

1000 'ID 6000
6000 'ID 10000

The first group contains all numbers fran 1000 up to but not including
6000.
The value 6000 as the upper limi t is excluded fran the first
group, but is included in the second group as the lower limi t. Thus the
seccnl group includes numbers fran 6000 up to but not including the
upper limit 10000.
You

specify

the range limits

in numbers,

strings,

or accepted

data

names, correspondirg to the type of ranged item. The ranges appear on
reports in edited fonnat, separated by a hYti1en, and preceded and
followed by a blank.
Exarcple: ("CLI.ENI''')

RANGE BY CREDIT-LIMIT

1000 BY 1000 'ID 10000
------ --- ---- -- FR(I.1

'!he values of CREDIT-LIMIT are used to organize the logical records
(aCCOlUlts) into nine range-break groups (accounts having limits of 1000
to 2000, 2000 to 3000, 3000 to 4000, ••• 9000 to 10000). These groups
can be used to gather and report statistical summaries.

4 - 252

'Dle syntax for Range-break-item Dese is as £o11a.IB:

+<
A

- I><data

---------(2)

1
I

c

name>--->!!!!.""~--> <IlUII'iJer>----------> (1)

1

1

1B I D

1

1-> <string>----> I

+-> <extensioo>->+

I
I
l E I
+--> <acpt. data name>->+

(2)<-------------------- , <--~-------------------~I
F

01

1 P

J

(1)-------------------------------------------------->
H

G

K

+-->BY-> <IlUIIiler >

-I

1I

L

->+ +-->'.ro----> <rn.mber>

>+

-I

I

1M

1

1
IN

1

1-> <string>-> I

+-> <acpt. data ->+
name>

1
+--> <acpt data ->+
name>

The paths of this syntax diagram are explained below:
Path

Explanaticn

A

Take this path to specify a <data name> item to be ranged. '!be
<data
name> IlIlst reference
a ncnstatistical
data itan.
Specified values of the item are organized into range- or
control-break groupin:.;Js.
Unless suppressed, information is ordered in ascerxling sequence
based 00 the ranged item. 'Ibis orderin:.;J is subordinate to any
higher level control-break ordering.
Exanple: ( ltCL..IENI'u )
RAN:;E

BY CREDIT-LIMIT FRCJ.1 1000 BY 1000 'ro 10000.

4 - 253

CREDIT-LIMIT refers to a data item whose values
into nine range-break groupings, each of which
$1000 span in CREDIT-LrMIT.
B

are organized
represents a

Take this path When range- or CX>l1trol-break groupings are based
the value ranges of a derived data item (extension).
The
extension that you define here nust be IlCXlStatistical.

00

Unless
suppressed,
information is ordered into ascending
sequence based on the ranged item. nus ordering is subordinate
to any higher-level control-break ordering.
~le:

(1CLIENl'" )

RANGE BY CREDIT-<DDE IS CREDIT-LIMIT/lOOO
FRCJ.1 I BY 5 ro 99.-

'!he values of CREDIT-<DDE, which are QlE[)IT-LIMIT/lOOO, are used
to organize the accounts bein3 reported into 20 range-break
groups.
C

Take
this path to specify a numeric lower limit for a
range-break grouping.
Numeric limits can be used ally if the
ranged item is a nUIreric data item.

D

Take

this path to assign a string lower l:imi.t for a range-break
String limits can be used only with a string data

grouping.
item.

Exanple: ("CLIENT")
RANGE BY a.JS'.IaoiER-NAME FRCJ-1 "AII 'IO "FII ,
~ "F" ro "J", FR:Jo1 "J" 'It) "N",
FR::f1 "N" ro uR", FlU-1 uR" 'IO "V",
FRCJ.1 "I'I;JIr TO "Z I • •

'!he first range group consists of all cust.aner names fran the
lowest value itA ••• ", through the highest value nE ••• • (i.e, to
the value "F n but oot including it) • "Fit is the lower limit
included in next. group, "F" ro "J".
I

E

Take this path to reference an accepted data i tern as a lower
limit.
It must be the same type, striBJ or numeric, as the
ranged i tern.

4 - 254

F

Take this path to specify string limits ('Aben you have taken
path D), or if all numeric limits are not equal spans or are not
oontiguous •

G

Use

this path as a shorthand way to set. numeric range limits.
The value of the integer in the BY option is added repeatedly to
the lower-limit value to fom successive ranges. Since range
groops include the lower limit value and exclude the upper limit
value, one nurcber can be the upper limit of one group and the
lower limit of another.

Example: ("CLImr")
GRXJP BY RAOOES OF CREDIT-LIMIT FlD1 1000 BY 5000
'ro 21000 ~ CREDIT-LIMITS.
- --

'!be statement generates the follOfling four range-break groups:
1.
2.
3.
4.
J

1000 to 6000
6000 to 11000
11000 to 16000
16000 to 21000

'!he highest value for the llg)er limit is set when you take this
path.
'!he grouping includes all values of the ranged item fran
the lower limit up to am includiD3 the max..iItun value that can
fit into the storage picture (internal size) for the ranged
item.
Example: ("CLIENI'" )
~

BY CREDIT-LIMIT FRa-1 0 BY 1000

'Ibis instruction provides 100 groupings, since the internal size
for
CREDIT-LIMIT
is five digits (0-1000, 1000-2000,
98000-99000, 99000-99999+ ) •
'!he last grouping contains the
value 99999.
K

Take this path to specify an upper limit for a range grouping.

L

Take this path to specify a numeric upper limit when the ranged
item is numeric.
Exanple: ("CLm'lI'")
~E

BY CREDIT-LIMIT FRa-1 1000 'IO 3000,
- --

FRCM 3000 'IO 5000

4 - 255

This specifies range groups based on CREDIT-LIMIT.
Accounts
havin3 credit limits of 3000 are not included in the first
grouping, but are included in the seoond.
M

Take this path to designate
ranged item.
ExaIrple:

a string

upper limit for a string

("~It)

RAtGE BY aJS"ltJ.1ER-NAME FID1 "A" 'IO uF",
FlOo1 "Fit 'ID ItJu, FRCJ-1 uJ 'ID ItNIt , - FR(I.1 "N" TO uRu, FID1 uR u 'IO "V",
FRQt1 "V" TO ~.
--

All accounts for custarer names beginning with A through E are
included in the first range group: F tbroogh I are included in
the second, and so forth.
N

Take this path to reference an accepted data item as the upper
limit.
'!he type of the item, striD3 or numeric, must match the
ranged item.

o

Take this path as many times as necessary to specify all range
limits; any I1\.JrIber of limi ts can be used. Range limits must be
specified in increasing value. You can use the BY' clause as a
shortharxl rnet.}x)d of denoting two or nore contiguous ranges. The
raB1e limits yoo assign in each FRCM-BY-TO option need not be
oontiguous; the raBJes between the ones yoo specify are inplied,
and all ranges will be identified in the report.
Exanple: ( "CLIENl''' )

Accounts above are organized into five CXIltiguous range groups
based 00 the custaner name limits supplied. Four categories are
specified, and ooe is inp1ied ("U" to highest value).
Exanp1e: ( "CLImr" )
RAtGE BY CREDIT-LIMIT FK:M 1000 'ro 3000,
!!!!! 3000 'ro 5000, FIQ1 7000 'ro 10000,

4 - 256

portion actually describes six numeric range
credit limit.
Since the ranges are not
CXJlltiguous, the range limits before, between, and after the
specified limits are inplied ( 0 'ro 1000, 5000 'ro 7000, 10000 'ro
highest value).
Values of ~IT-LIMIT within these inplied
range limits also will appear a l the printed report.
The

underlined

groups based

en

Exanple: ( "CLIENl'" )
RAWE BY BAIANCE-OOE FRa-1 0 'ro 5000.00,
FIO-1 5000.00 BY lOOO:OO-roSOOOO.OO,

-:ma-1 50000:00.

-

in the above exanple are ranged based en balance-due
into 48 categories: 47 are specified, and ale is implied
(50000.00 to highest value).

Accounts

P

Take this path When all range limits have been specified.

4 -

257

RARE statenent is used to define a range-break item as the cnly
control-break item. Ranges for the particular data item are specified.
so that infonnation can be grouped as required for reports am
summaries.
The defined range-break item is referenced in other
statements by a <c-b nane> or RAN3E •

The

. Exanple:

REPORl' FOR FACH RARE:

CDUNT, 'IUl'AL( SALARY) •

Infonnaticn alxlut each age range is grooped together.
Statistics are
calculated and printed for each age range.
(Refer to the REPORl'
statement in this sectioo.)
'ftle syntax for the RARE statement is as follows:

->RAN3E BY <range-break-item desc>.

4 -

258

REIATICIiAL OPERATat

A Relatiooal Operator specifies the criteria for CCI'lplri&al.
'!be syntax for Relational Operator is as folla.e:

A

+<

- - - - OR < - - - - + t

I
I

c

----------->

I

IB

+-> IS->+ +-->lCl'->+

pi
I

Q

= ---------->

I
I D
I
->EOJALS-> I
I

I
I
I->'ro--> I
I
I

+->'lHAN->+

E

->FlJ

>

F

-> < - >
G

->LESS->
H

->LT

>

I

-->LSS - >
J

-> > - - >
h

->GREA'l'ER->

4 - 259

t.'NO string values of· unequal length are
carpared, the smaller is extended with spaces (for
pll:poses· of carparison only) until its length is
equal to the larger.

When

'!be paths of this syntax diagram are explained below:
~

Explanation

A

Take this path if the subsequently
tested.

B

lOl'

specified relation is to be

is specified if the cpposite of the subsequently
relation is to be tested.

specified

C-E

Take one of these paths to specify an equal relation.

F-I

Take ooe of these paths to specify a less-than relation.

J-L

Take one of these paths to specify a greater-than

r~lation.

M

Take this path to specify a less-than-or-equal relaticn.

N

Take this path to specify a greater-than-or-equal relation.

o

Take this path to specify a not-equal relatioo.

P

Take this path to specify an alternate relation.

4 -

260

Q

Take this path

w.n

the re1atial is fully specified.

EDnp1es:

-

4 - 261

'!be REPI.I\CE statement is used to define a name that represents a p::>rt.ion
of language text consisting of characters, words, or pu-ases. 'Ibis name
can then be used to reference the text at anyapprcpriate p:>int within
the specification.
'Ibis provides a convenient shorthand technique for
expanding a REPORrER III report laD3uage statement.

Exalrple:

'l'his defines WRITE as a text replacement name. All occurrences of the
word WRITE are replaced by the };hrase "EXl'RACl' Wl'IH VOCABlJI.ARY".
If
"WRITE A,B,C to EF-FILE. It is specified, the Report I..a1'¥;Uage Analysis
Program reads "EXl'RACI' WI'lH VOCABUIARY A,B,C 'It) EF-FILEII.
Thus a new
cxmnand called WRITE has been created for use within the specificatioo.

'!he syntax for the REPI.I\CE statement is as follows:
-->~~--------------------------------->(l)

I

+<----------------------- , <-----

,---------+

J

I A

B
(l)-><name>----

I
I
I
I
cl

G

---->BY <text>

+<-r97<- , <--+

I

ID

EI
IF

I
I
I
I
I

+-> ( -><parameter>--> ) ->+

4 -

262

HI
I

I

t -->.

'!he paths of this syntax diagram are explained below:

Path
A

Explanatioo

Take this path to define a <name> to represent the <text> of the
REPlACE statement. You then can use this <name> subsequently to
reference the <text>. The <name>, sanetimes referred to as a
macro name, nust not be the same as another macro naIl'e. (Macro
names defined in one Report Section can be identical to macro
names defined in other ~port Sections.)
Example: ( II INVfNl'" )
REPIACE AIL CXXl.JRRmCES OF TIMES BY

* •.

'Ibis defines TIMES to represent the text
statement can be specified:

II.".

NoIJI the foll.owiD:.:J

'lUl'AL-Q)S'l' IS QUANTITY TIMES UNIT-<XlST.

'nlis is interpreted by the Report Lim3Uage Analysis Program as
if "rorAL-Q)S'l' IS WANTI'lY • UNIT-<XlST" was specified.
B

Take this path if the text which is to replace the macro name at
every occurrence of the macro narre is to be una!tered. In this

case, the same text replaces all occurrences of the macro name
as the language statements are scarmed. '!he exanple given for
path A s~ this path choice: "." replaces "TIMES" Wherever
"TIl-JES occurs.
II

C

Take this path if the text represented by the macro name is to
be nodified each time it replaces the macro name. In this case,
the text is nodified as specified before it replaces an
occurrence of the macro name.
Example:
REPlACE AGED (X) BY AGE (IN WEEKS .FRQ.1
X 'ro DM'E)

L 4#.

--

4 -

263

text associated with "AGED" is altered eaCh time "AGED" is
referenced. For instance, if

The

REPORl' BIJ:LIm-AGE IS AGED ( INVOICE-DATE) •

is specified, REroRrER III reads:
REPORl' BII.L:ItG-AGE IS J\GE (IN WEEKS FRCM
nM?ICE-mTE 'ro Il1\TE )

L4.

--

The macro as defined here perfonns as a new function definition.
D

'!be mec:banism which you use to specify l¥:w the text is to be
mxlified ocnsists of fonnal parameters associated with the macro
name. A fonnal parameter is a word that is a place holder for
an actual parameter. The actual parameter is the text yoo enter
in a subsequent l.ar¥Juage statement(s) as a substitute for the
fonnal parameter. Take path D to specify the fonnal parameter.
YQ1 can use the fonnal parameter one or nore times in the tody
of the text associated with the macro name.

At the time the macro name is referenced, the actual parameter
(the desired text) replaces the formal parameter. When the text
replaces the macro name, the supplied actual parameter replaces
the fonnal parameter.
Exanple:
REPlACE TWEl(N) BY N WHERE 'M'E

the macro name 'NPE1
ITUSt be supplied for N.

When

= 1'.

is referenced,

an actual

parameter

REPORl' NAME, ~El(YEAR), 'lYPEl(NAME OF SUPR).

Th..is statanent is expanded to:
REroRr NAME, YFAR WHERE '!WE
WHERE 'lYPE 1.

=

E

= b.. ~ OF

SUPR

Take this path up to nine times to specify a max.i.rtum of ten
fonnal parameters for the macro name. When the macro name is
referenced in a subsequent language statement (s) , the actual
parameters (Which yoo sug>ly) are assigned to the fonnal
parameters in a left to right manner.
You nust specify ooe
actual parameter for each fonnal parameter each time the macro
name is referenced.

4 - 264

Exanple:
REPLACE TAX(INC-RATE,CAP-GAIN-R) BY SAIARY
INC-RATE + CAP-GAIN-R * CAPITAL-GAIN I.

*

If TAX is referenced subsequently as
RERlR1' INCDtE-TAX IS TAX( .15, .0500

* VALUE) ,NAME •

• 15 replaces INC-RATE, am .0500 * VALUE replaces
'lbe following equivalent statement results:
REPORl' INCDtE-TAX IS SAIARY • .15

VALUE

*

+

.0500

CAP-GUN-R.

*

CAPITAL-GAIN, NAME.

The sarce macro could be referenced elsewhere as follcws:

Aa:EPl'VALUE-l, VALUE-2.
SET.FCl' (TAX(VALUE-I, VAUJE-2»

> 500.00.

In this case, VAUJE-I replaces INC-RATE and VAUJE-2
CAP-GAIN-R. The ~ statement is expaOOed to:
SEIFCr (SAIARY * VALUE-I + VALUE-2
CAPITAL-GAIN) > 500.00.

REPIACES

*

F

Take this path after you have specified all fonnal parameters.

G

Take this path to define the <text> that is to replace the macro
The <text> consists of all characters after "ayet before
the teIminating
'Ihe <text> cannot oc:ntain a
'!be •• , ••
is reseIVed for indicatiBl' the end of the <text.>.
No syntax
checking is perfonned (Xl the <text> as the REPlACE statement is
scanned.
Syntax cbeckin3 occurs as the <text> replaces each
occurrence of a macro name.

.name.

It.It .

It.".

The text can <.:XJntain references to the fonnal. parameters defined

in path D.
'!be actual parameters (Which yw specify in
subsequent language statements) replace the oorresponding fonnal
parameters When the text replaces the macro name.
text also can aJOtain references to other macro names.
These macro name references are not expaOOed into the associated
text at the time the REPlACE statement is scarmed, rut they are
expaOOed at the time the macro name is referenced.
Macros can
be nested up to 10 deep.
'!be following exanple illustrates
nested macros. (SiIrple am parameterized macro texts have been
illustrated previously.)
'!he

4 - 265

Exanple: (nested macros)

REPIACE A BY B + C #.
REPlACE B BY D * E#.
REPlACE C BY F / G #.
If

you specify uREPORt' T IS A,X, Y.·' after specifying

the above

macros, the following replacement steps are taken:
REPORT T IS
REPORl' T IS
REPORI' T IS
REPORl' T IS

A,X,Y.
B + C,X,Y.
D * E + C,X,Y.
D * E + F / G,X,Y.

Thus the original REPORl' statement is equivalent to:
REPORl' T IS D

*

E + F / G,X,y.

Macro names cannot reference themselvee.
Specificatioos such as those shown in the
exanples below nust be avoided because they
result in an infinite series of references.
Exanples:

REPlACE A BY A + Bt.
'!he above statement is flagged ".nen A is encountered in the text
of the macro. Such a REPLACE statement IIIlSt be avoided.

REPlACE A BY at.
REPlACE B BY A'.

If the above statements are specified, an error is flagged if
either A or B is referenced because the limit of 10 nested
macros is exceeded. SUch REPlACE statements RUSt be avoided.

", .. in a
statement, prab1ans can arise if,
~en you subsequently reference the macro
name, you use a period after the macro name.
If

a period appears before the

REPlACE

4 - 266

Example:

em:

BY 1. t .
SELECl' CDST > CEE.

REPI..ACE

Using the aOOve

~

statement results in

SET ECI' CDS'!' > 1 ••
and thus causes an error.

H

Take this path as many times as necessary to define additiooal
macro names in the same REPlACE statement as you require. (YOl
qn:ianally can define eadl macro name in a separate REI?I.ACE
statement. )

Example:
REPI..ACE PllJS BY +#, INl'ERVAL (X, y) BY
AGE(IN mys FRCM X TO Y) /301.

In this case, two macros, PliJS and INTERVAL, are defined.
I

Take this path after you have ccnpleted all macro definitions.

4 - 267

REPORl'-IT&1 l-DD

The

Report-item t-t:xi is used to
ccntrol-break headiD3s ani columns.

specify

nondefault

printing of

The syntax for Report-item t-b:i is as follows:
+<-

I
I

-----------+

--_.

K
A

---rn->AS
<str~>------I

I
I

L

------------>

I
I

B

I---rn->PREFIXED----------><string>---------------->I

I
I
I c

-

I

I

.

I
I
I
-----> I

+->BY->+

1-{T7->SUFFIXED
I
-

I
I
ID

--><string>
1
+->SY->+

I

I
I
I

E
G
+--rn->WHERE-------------------->+

I
FI

I I
I I

I
I
+-><expression>->+ I->~-> I
I
I
I I
I
1-> DEClmASES-> 1
H

I

I

I J

1

+-->OIANGES->+

The paths of this syntax diagram are explained below:

A

Take this path to give a naldefault identifier, or heading, for
a data i tern. The <string> given IlUlst be 30 Characters or less.
If a specified heading is larger than the oolurm size, an
attenpt:. is made to separate the heading 00 space boundaries to
form a IlUlltiple-line heading.

4 -

268

ExaDple:

( IIINV!Nl'1I )

REPORl' PARl'-R:> AS IIpARI' ,", UNIT-<DST AS
.. ~ PER UNIT".
-.
-

In this exanple, b«) c:x>lumns are specified. 'lhe first is headed
The sec:x:md is headed by "CXlST PER UNIT".

by "PARI' '".
B-C

'lhese paths are used to place characters next to a data value in
the list.ir¥J witlolt any interveniD.:J spaces. PREFIXm places the
<striBj> in £rent of the data value, Wile SUFFIXED places the

<string>

belliOO

the data value.
or less.

In both cases,

the <strir¥l>

ID.lSt be 30 characters

Exanple:
REPORl' ORDER-tI) PREFIXED BY ",'', AM1Nl'

SUFFIXED BY

II

LBS."

-

-

'!his produces the fOllowir¥J report:
ORDER
W

D

10021
jOl17

38 LBS.

• 0235

582 LBS •

4 LBS.

Take this path to suppress print.ir¥J of certain data values urner
specified cxnii.tioos.
The data value is printed '4I4lenever the
cxnii.tial specified by the fOllowir¥J paths is met.
If the
oanditioo is rx:Jt met, blanks are printed instead of data value.
Exanple:
REPORl' NAME, SAlARY WHERE SAlARY < 20000.

this case, two columns are printed as in the followirxj
listir¥l.
NAME is always printed, but the correspc:niiI¥J SAlARY
entry is left blank if the salary is greater than or equal to
$20,000.
In

4 -

269

E

JOE a.o:TH
OOB ADAMS

$12111.00

JANE PHIILIPS
JIM TAYI.DR
MARY JENKINS

$18000.00

$13500.00

This path is a soorthand method for specifyir¥3 inplicitly an
<expression> which is equal to the value of the data item
reported in this clause. Yoo nust use path H, I, or J with this
path.
Exanple:

(1IaJS'I'V''')

'!be colunn for ClJS'I'-iW-m CCXl.tains a custaDer name ally When the
custaner name for a remittance differs fran the custaDer name
for the previoos remittance; that is, duplicate custaDer names
other than the first are suppressed.
F

Take this path to specify an <expression> Which defines the
ccn:tition under ~ch data items are to be printed.
'Ihe
<expression> can be a Boolean, numeric, or string value. If the
<express ioo > is Boolean (the result is either true or false),
path G must be taken.
If the <expression> is a numeric or
strin3 value, path G is illegal, am the <expressioo> nust be
sug>lemented by paths H, I, or J. 'Ihe <expression> can consist
of any type of data items.

G

Take this path if the <expression> 9iven in path F above
Boolean, and therefore detennines the printing condition.
Exanple:

is

('~")

REroRl' ASSET-DFSC, ASSET-LIFE WHERE
ASSET-LIFE < 70, a>ST.

In this case, three oolurms are printed. '!be ASSET-LIFE colunn
is blank when ASSET-LIFE is greater than or equal to 70.

4 - 270

H

Take this path to specify printing only when the value of the
<expression> given in path F or implied by path E increases from
the previous value. The <expression> must be either a numeric
or string value.

I

Take this path to specify printing only when the value of the
<expression> given in path F or implied by path E decreases from
the previous value. The <expression> must be either a numeric
or string value.

J

Take this path to specify printing only when the value of the
<expression> given in path F or implied in path E differs from
the previous value. The <expression> must be either a numeric
or string value.

K

Take this path as many times as necessary to specify all
nondefault options. The options can be used in any combination
independent of one another.

L

Take this path after all options are specified.

4 - 271

REPORT-oPI'ION SET STATEMENT
The Report-option SET statement enables certain formatting attributes to
assigned nondefault values. These formatting attributes only apply
to the REPORl' statement. If the default values are satisfactory, this
statement is not necessary.

be

The syntax for the Report-option SET statement is as follows:

+<-- , <--+

I

I

I

I

+<--AND<--+
+<-----------------------------------------------------(3)

I
I

A
-->SET-------;-r-!-->PAGE~IDTH------------------------------->(1)

-

I

IB
I--;-r-!-->PAGE-LENGTH---------------->

I
Ic

I--;-r-!-->COLUMN-SPACING------------->

I
In

--;-r-!-->VERTICAL-SPACING----------->
E

--;-r-!--> IOOICAL-PAGE-FlLE BlOCKING->
F

--;-r-!-->TOP-oF-FORM-cHANNEL------->
G

--;-r-!-->FORM-PATTERNS-------------->+
I

J

+--;-r-!-->PAGE-oVERFLOW--------------->TRUE------> (2)

I

I

I

--

i

I->TO-->I I K
I
I
I +->FALSE->+
+-> = ->+

4 - 272

.

(3)<--------

LI
H
(1)------,

1 M

><integer>------>.

I
I
1-> rro -> I

1
I
I
I
I
+-> = -->+
I
I
I
(2) ----,---->+
The paths of this syntax diagram are explained

bel~:

Path

Explanation

A

'!his path is taken to specify a nandefault PAGE-wIIYl'H, the
Il\ll'd:)er of horizontal print posi ticns allocated for the report.
'!he default value is 132. The minimum PAGE-WIDl'H that ney be
specified is 32.

Exanple:
SET PAGE-wmrH '10 80.

The generated report listing is 80 dlaracters across.
B

Take this path to specify the maximum number of printed lines
per page for the report. The default value is 54.

Exanple:
SET

PAGE-UNGTH '10 72.

The generated report listing contains up to 72 lines per page.
C

Take

this path to specify a oondefault CDWMN-SPACING, the
Il\.lIt'ber of print p:>sitions between columns of a reIX>rt.
If this Il\.lIt'ber of positions cannot be achieved on a page, line
or page overflow results. The default value is 1.

minimum

Exanple:
SEI' CDllJMN-SPACING TO 5.

The minimum nll1li:>er of spaces between columns of infonnation
the generated report is 5.
4 - 273

in

D

Take

this path to specify a nondefault VERTICAL-SPACING, the
of lines advanced before printing the next line. This
pertains only to the lines of a column listing.
The default
value is 1 (single spacin]) if line overflCM does not occur; it
is 2 (double spacing) if line overflow does occur in the report.
The ally allowable values are 1, 2, or 3.
Il\lIIi)er

Exanple:
SEI' VERl'ICAL-SPACIl'G

The

ro 2.

infonnation listed in the colUIll'lS
is doUble-spaced.

for the report in this

e~le

E

Take ~s path to specify the blocking factor for the internal
logical page ~rk file: the path is meaningful ally if page
overflow ocCurs. '!be integer specifies the nunber of records in
a block. If this option is not specified, the value selected at
vocabulary creation time is used.

Exanple:
SET

F

lOOICAL-P~-FILE

BI.OCI<Im 'IO 6.

This option is given to override the VERrlCAL-SPACIOO fom
attribute, either given or defaulted in the PRIll1' statement.
'!he
<integer>
given provides
the dlannel
IllJIlt)er which
oorresponds to the first printable line on a fonn.

'nle TOP-QF-~1).RM-QiANNEL option provides a convenient means to
specify the appropriate channel n\lltber when VERl'ICAL-SPACIW was
inappropriately given in a maCDD.

Exanple:
SEl' 'IDP-oF-R>If.1-ai

'Ih.is
statement
tcp-of-fonn.
G

ro

3.

specifies

that

channel

3

corresponds

to

If this option is given, a form pattern mus~ be defined through
the WI'lH PA'I'I'ERN specification wi thin a pRINT statement.
At
this p:>int, <integer> fonn patterns are printed for operator
alignment before the printing of actual fonns begins.
Example:
SET EU~-PATrERNS

ro

10.

PRINT •••• WI'lH PATl'ERN ••••

4 -

274

Ten fonm patterns are written to the forms file before the first
actual fonn is printed.
H

Take this path to specify the integer value for the previ.cusly
specified option. (Appendix B lists the acceptable values for
these options.)

I

path if yoo desire to specify whether
is to be
used
as
a foxmattinJ
PAGE-<JVERFl!M is a fonnatting method that can be used
width of the rep:>rt exceeds the width of a page.
exanples
given in the subsectiCXl titled Q)llmlll
difference in setting the qJtioo to TRUE or PAISE.

Take

this

pAGE-OVERFJ..(Jt

J

or not
JI8thcd..
Wlen the
See the
for the

Take this path to specify that PItGE-ovERFlOtl is to be used.

Exanple:
SE:l' PAGE-<J\1ERFI.LM

K

ro TRUE.

Take this path to specify explicitly that PHm-ovERFI.OJ is not.
to be used. Line overflow is used \\ben required.
'lbi.s is the

default.
L

Take

this path to specify additiooa.l

nc:niefault qJticms in the

same statement.

Exanples:
= 80,
PAGE-I.aInH = 72.
SEI' PAGE-I.aInH = SO,
SEl' PAGE-wImH

CDIJ.Iti-SPACnG = 10
AND VERl'ICAL-SPACIY:; 'ro 2.

M

Take
this
specified.

path

\1Itben

all

desired

4 -

275

report

SET

qJtions

are

Report.-qJt.ion. statement enables you to override
actioos unique to each report..

'1he

values

am

various default

Exanple:
SAVE LISTIlG AS tlJUDREP".

listing is labeled "JUDREP" instead of the default label "RLnnrr",
Where nn is an assigned report ID nuntJer, and rr is the report nurrber.

The

The syntax for the Report.-qJt.icn statement is as follows:
A

-><A9SIGN LISTIlG statement>

>

1

I

1B

I

1-> <report-qJt.iCXl SET statement>
>I
1
I
I
I c
1-> <repott-qJt.iCXl SUPPRES statanent>-> I
1
I
I D
I
+-> <aVE LIS'1'llG statement>
- >+
'1he paths of this syntax diagram are explained below:

!!!:!l
A

ExplanatiCXl

'ftds path allows the report or forme listing to be assigned to a
particular device.

Exanple:
ASSI~

LIS'1'llG ro PRINl'ER 1Wl<UP.

In this exanple, the generated
report en a printer backup file.

report

4 - 276

program produces

the

B

'Dds path allows various
ncndefanlt values.

foDIatting

limits to be eat

to

Z'. .Wu
SBT PMB-WIDl'H

'It)

60.

In thia e1C'a'Tle, the generated pro:p:am p:alucea a report. only 60
daract.eI:a wide.
C

Take thia path to 8\JA:U"e&8 the autaaatic generatial of page
nmhml in the report pmducad by the generated progL&A.
BDDplea

SUPPRESS

D

P~.

Take thia path to epacify a ncndefault .... for the report or
fo1:IIIB l.iat..1Dg p:alucad by the generated report program.

aVE LIS1'IIG AS

-J'tDmP-.

4 - 277

The

aaport-qJti.Ql SUPPRBSS atataaent SU(.Presses
page of the report.

nuni)ers at the top of each

ExaDple.
SUPPRESS PAGIHIIIERS.

--

->SUPPRBSS PAGIHIIIERS.
---.........

4 - 278

the printing of page

RERlRt' statement is used to specify the layoot of an autanatical1y
fonnatted report and the data items to be included in it.

'!be

ExaDp1e: (1-vocAST" )
REPORt' ASSE:l'-OO, ASSEl'-DFSC, lOC-<DDE, cn9l' •

In this exanp1e, the data itEIDS ASSET-NO, ASSE:l' IFSC, UJC-a:xz, and CDST
are printed as oo1U1mS of data with awropriate headings (see Figure

4-9).

ASSE:l'

ASSE:l'
00

ux:

J)&C;C

CDlE

003118
003119
002000
002180
005571

S1'EEL lDlK CASE 00. 5587
S1'EEL KXI< CASE 00. 6187
~

SERIAL 00. 77-3115

CAI.aJIATOR 00. 7112-36602

'riPlHUTm SERIAL

Figure 4-9.

77-3845

1«).

122113
122214
122113
112220
112214

151.83
210.11
322.05
310.00
282.70

$
$
$
$
$

Sanple Report OUtput

'!be syntax for the RER>Rl' statement is as follows:

A

E

- > R E R > R r - - - - - - - - - - - - - - - - > <ool\.1mS>-> •
C

+->LISTIOO->+

I
ID

B

+-> <control-break

I
I
I
I
I

------------------>+

headiD3s>

4 - 279

The paths of this syntax diagram are explained below:

Path

Explanation

A

Take this path to specify printing of only colurms of data in
the report, anittiB::J control-break headings. The infonnatiat in
the
report will not be printed in sections
grouped by
control-break headiB::Js.

B

this path if the report is to be printed in sections based
the
values of ale or llDre ex>ntrol-break items.
<cartrol-break headings> introduce the infonnation in each
section.
Yoo can specify one or llDre <control-break headiD3s>
for each section created \l'then a CCXltrol-break item changes. You
also have the optioo of printing associated infonnatioo with
each centrol-break item.
Take

at

Exanple:

('~II)

REPORl' BY DEPl'-R:> i BY ASSm'-'iYPE
LISTING ASSm'-OO:-ASSET DESC, IDC-<DDE, CDST.

'!he urnerlined portioo specifies ~ control breaks. Each tiIte
the value of ASSm'-'IYPE changes, a heading ca1taining this new
value is printed.
Each time the value of DEPl'-NO changes, a
heading caltain.in:] the new value of DEPl'-NO is printed am a
heading ccntaining the value of the first ASSm'-'IYPE for the new
1EPl'-R> is printed (see Figure 4-9).
C

After specifying <control-break headings>, take this path to
specify the content of the columns to be printed.
For each
value of the lCMest level control break, new oolumn headiD3s are
printed and new detail columns are started.
Exanple:

(''V~II)

REPORt' BY DEPl'-oo; BY ASSET-'IYPE
LI8I'IOO ASSm'-l:D, ASSgr-IESC, LOC-<DDE, a:>sT.

After

each CQ'ltrol-break heading for ASSgr-'IYPE, oolumns for
J\SSET-NO, ASSE:l'-DESC, IDC~DE, and <nsT are started (see Figure
4-10) •

4 - 280

Daft 110.

1122
01

USft ftPB.

ASSft DBSC

ASSft
80

cos,.

LOC

CODE

005571
002180
007130

ftPDfUftR SDIAL 80. 77-3845
CALCULA~R

RO. 7112-36602

ADDI_ MACRI. .

112214
112220
112271

$

$
,

282.70
310.00
205.00

02

AIlS1ft' ftPS.

A88ft
110

ASSft DBSC

<:oft

LOC

CODS
2 D~ DISK
8TBBL BOOK CASB 80. 8231

013335
017110

112266
112271

,
,

210.11
151.83

DBPI' BO. 1221
U8ft ftPJh 01
AI8ft

80

003118
002000

ua:r

USft DB8C
S~ BOOK
ftPBNRI~

LOC

CODS

CAB. 80. 5587

8BR%AL 110. 77-3115

COft

122113'
122113
,

151.83
322.05

02

ftPB.
A88ft

LOC

ABSft DB8C

013311
017711

122117
122117

2 D~ DESK
swrvBL CHAIR

Figure 4-10.

COST

CODB

110

Sanple Report Listing

4 - 281

$
,

210.11
51.17

D

Take this path if no oolunn listings are desired.

Exanple: ( ''VoC:AST'' )
REPORl' BY DEPI'-OO; BY ASSET-'lYPE.

This specifies a heading for each departnlent and a heading for
each asset type per department.
No colurms of detailed items
are produced (see Figure 4-11) •

•
DEPr 1«): 1122
ASSET TYPE: 01
ASSET 'lYPE: 02
ASSET m'E: 03
•

IEPl' 00: 1221
ASSET ft'P.!: 01
ASSf:r 'lYPE:
ASSET~:

Figure 4-11.
E

02
07

ListiB3 by Department Nurrber

'lbe <colUD"1lS) clause specifies the number and content of oolumns
to be printed. Headings for these colUllllS can be either iltplied

cc

~ifically

defined.

ExaDple: (''VoC:AST" )

Four oolUDllS are defined, each line of infonnaticn representil¥j
the values of the items ASSET-NO, ~SET-DESC, UlC-<DIE, and <DST
within one logical record (see Figure 4-9).

4 -

282

Desc defines the first column am specifies that each line of
columns represents sunmary infonnatioo related to a control-break item
value.
'!he referenced item is defined as a control-break item if
control breaks for the report have not been defined previously in
another statement.

Row

The syntax for the RaN Desc clause is as follCM3:
E

A

---><data name>---------------

,---->

IL
I
K I
I <..
I
I--><extensian>->I
I
I
I FI
I c
I
IG
I
I->RAOOE---> I
I--;-r-!-><repoct-item mod>-> I
I
I I
I
I
I
I D
I I H

I
I

I
I

B

+-><c-b narne>->+

I

+--fT7-->M)CEND~

1IJ

>+

+-> DESCENDING->+
The paths of this syntax diagram are explained below:
Path
A

E!Planation
Take this pith to specify that sunmary infonnatioo be printed
for each value of a data item referenced by <data name>.
The
item must be l'OlStatistical and is defined to be a control-break
item by its reference here. Control breaks must not have been
specified previously for the report in another statement.
If

any <c-b-headiD3 desc>s were specified previously in the
statement, the control-break item referenced by <data .
name> must be the lcwest-level control break.

REPORl'

Example:

( "Voc;.sr" )

REroRI' FOR EArn PSSET-'lYPE:

4 -

AVG ( CDST) NUM ( 6, 2) •

283

line in the listing consists of an asset type ani the
average asset cost for that asset type. '!he followiD3 . type of
listing ~ld be produced:

Each

ASSEt'

AVG

TYPE

(CDST)

01

88.71

02

17.33
62.80

03

B

Take this path to specify that sunmary information be printed
for each value of a data item defined by <extension>.
The
derived data item nust be nonstatistical.
'!he item is defined
to be a control-break item; caltrol breaks for the report must
not have been specified previously in al'X)ther statement.
If any <c-b-heading desc>s have been specified previously in the
statement, the control-break
item defined by the
<extension> must be the lowest-level control-break item.

REPORl'

Exartple:

( "vo:AST" )

REroRl' FOR FACli CDST-RANGE WHIQI IS
CX>ST/100 NUM( 6) RaJNDED:

CXXJNT:-

C

Take this path to specify that sunmary information be printErl
for each value of a range-break item defined previously by a
RANGE statement.
Exanple:

( II INVmr" )

RANGE BY INVmr-OOLlAR-VAIlJE FIOo1 0 BY 1000.

RER)Rl'

FUR FACli RANGE:

CDUNT I

'lUl'AL( INVENl'-OOLLAR-VAllJE) I
AVG (INVmr-OOLIAR-VAIJJE) •

4 -

284

The following report is produced:
a:x.m'

rorAL (INVml'
OOLIAR VALUE)

AVG (INVml'
OOLIAR VALUE)

24
12
10

11310.15
15960.00
21020.83

471.25
1330.00
2101.08

0.00 - 1000.00
1000.00 - 2000.00
2000.00 - 3000.00
•

D

this path to specify that sunmary infonnatioo be printed
each value of a cx:mtro1-break item previously defined in a
GR:lJP statement. <c-b name> nust reference this item.
Take

for

If
D:)
<c-b-headi.n3'
desc>s were specified in the REroR1'
statement,
<c-b name>
IIIlSt
reference
the highest-level
ccntro1-break item in the GR:lJP statement.
If any <c-b-lleadir¥J desc>s ~e specified previously in the
REPORT statement, <c-b name> IIIlSt reference the next lower-level
c:art.ro1-break item, based 00 the order in the GR:lJP statement
(all c:art.ro1 breaks higher than <c-b name> must have been used
as exntrol-break headin;s).
ExaDple: ( "V<X:EMP" )

•

REPORT BY' EWCATIC6-LEVEL LISTlOO FOR EAai
JOB-GRADE: AVG(SAIARY'), MAX(SAIARY'),
MIN(SAIARY) •

'!he following report. isprcxiuced:
mJeATlai LEVEL: 10
JOB
AVG
G1WE
(SAIARY')

01
02
03

$ 8711.80
$ 9500.50
$ 10111.71

MAX
(SAIARY')

MIN
(SAIARY')

$ 9830.00
$ 11800.80
$ 13170.00

$ 6520.00
$ 8005.70
$ 8123.80

4 - 285

E

Take
this path if path A or B was taken
and default
caltrol-break orderiD3 ani default printing of the control-break
item values is desired, or if path C or D was taken am default
printing of the control-break itan values is desired.
By
default, c:x:ntrol-break item values are sorted arxl printed in
ascen.ciiB:J sEqUence.
Each control-break item value or each value range agJeaI'S in the
first colunn. A default identifier based on the control-break
item or range-break item name supplies the colurm heading.

F

Take this path to specify ordering of infonnation based al the
oantrol-break item and/or to specify noodefault colurm printing.
'!he nondefault printing cptions are as follows:
<l1ange the oolumn heading.
Specify strings for prefixes and/or suffixes.
Specify suppression of certain values in the col\ml.

1.
2.
3.
G

Take this path to specify l1CXldefault colunn printir¥3.
above lists the nondefault cptialS available.
Exanple:

Path E

( '~0CASr" )

REPORl' R>R FACH RANGE
AS IIASS-er CDST LIMITS II: CXXJNT.

'!be

first

oolUlll'l

of the

listiB3

is headed

by

"ASSEl'

CX>ST

LIMITS" •
H

Take this path to specify explicitly the order in ,.ru.ch
control-break values are to be printed.
This path cannot. be
taken if path C was taken or if path D was taken am a
range-break item was referenced.

I

Take this path to specify explicitly that infonnation be ordered
in ascending sequence based en the control-break item.

J

Take this path to specify that infonnation be ordered
descendin:;J sequence based al the control-break item.
Exanple:

("VQCAST")

REroRT FOR FAQi ASSEl'-TYPE DESCflIDIN:;
AVG (CDST), CXXJNl'.

4 -

286

in

In this cue, tl1e rawB of 8\mDU'y informatial
that ueet type is in daeOKdi.DJ ~.

are printed such

K

Take this path to apecify both. explicit ordering and ncmdefault
printing of the collal.

L

Take this path after all ncndefault apecificat.icms are made.

4 - 287

The SAMPLE statement provides the capability of sanpling selected input
infonnatioo (that infonnatioo \CUch was input or selected fran inplt).
If a SAMPLE statement is specified, ally sanpled infcmnatial is reported
(grouped, ordered, sumnarized, printed, and/or extracted).
Sanpling can be done systematically or randanly based en logical records
or records of a particular data structure.
SanplinJ also can be
stratified by usiD3 a strata-defining Boolean expressioo in the semple
. descriptial.
If no SELECl' INPUT statement is specified, the sanple is
drawn fran the input infonnatioo.
If a SEI'.fX'!I' INPt1l' statement is
provided, the sanple is drawn fran the selected infoxmatim.

Exanple:

SAMPLE

~

10 REXDRDS.

The resulting sanple CXXl8ists of every tenth record
pcpllatioo of iqlut or selected irrp1t logical rec::Drds.

fran the total

'!he syntax for the SAMPLE statanent is as follows:
A
-->~~-------------------'-----'------------------->(l)

B

+--><data-structure name>->+ +-->REXDRIS->+
+<----------------------------------------------(2)

I
I

c

( 1 ) - - - - - - - - - - - - - - - - ·--><syatematic-sanple desc>-> (3)

I
I I
I +-->SYS'1D1ATICALLY->+
I
10

I
I
I
I

+->RANIXJ«,Y <ra.rxicm-sanple desc>-,----·,-->+

4 - 288

(2)<--------~---,

I K

E
(3)

<------.----++
JI

----------------------------->.

I
FI
+

G

I

I

->STRATA-'-'------->WHERE <Bool expr>->+

+->FIO+->+

I
HI

I
I

+-><name>->+
The paths of this syntax diagram are explained below:

A

Take this path if the sanpling is to be based an logical records
rather than one of a llUltber of data structures specified in the
INPUl' statement.
Exalrple:
SAMPlE EVERY 10 REXX>RIS.

'Ibis sanple consists of every tenth logical record.
B

Take this path if the sanpling is to be based 00 records
accessed fran a partiCUlar input data structure. 'Ibis path can
ally be taken i f the SAMPLE statement is given in the Input
Section of a multiple-report specification.
Exanple:
INPl11' BRANClIES (ACC.XXJNTS (INVOICES) ) •
SAMPlE ACC.XXJNTS SYSTEl-sATICAILY EVERY 10.

this exanple, every tenth ACXDUNl'S record accessed becanes
of the sanple. For each of the sanpled Acx:xxJl'lI'S records I
all related INVOICES are accessed arxi· the resul ting logical
rea>rds are included in the sanple.
In

part

C

Take this path if records are to be sanpled systematically.
<systematic-~le

desc> describes how the

taken.

4 -

289

The

~stematic ~le

is

Exanple:
SAMPLE E.VERY 10 RECDRDS.

Every tenth logical record is included in the semple.
D

Take this path if records are to be sanpled
<randan-sanple desc> describes 11c:M the randan
taken.

randanly.
The
sarcple is to be

Example:
SAMPLE RANIXl-1LY APPR:>X 10 PERCENl' OF AIL RECDROS.

The sample oonsists of approximately
records input or selected from input.

10 percent of all logical

E

Take this path if stratified sanpliB3 is not needed.
The
default strata from ~ch the sanple is drawn is assumed to be
all selected-input information. If path A was taken, the exact
population to be sanpled is the n\.ll'Cber of logical records which
were inplt or selected fran input via a SELECl' INPUT statement.
If path B was taken, the exact population to be sampled is the
number of records input and selected via a SELECl' INPUl'
statement fran tile specified data structure.

F

Take this path if stratified sanpling is desired. '!he strata
consists of all selected input infonnation satisfying the
defining
Boolean e~ression.
This strata is ~led as
described.
Qlly the sanpled infonnation is available for
reporting.
Example: ("VOCAST" )
SAMPLE E,VERY 10 RECDRIl:)
FR(lvt STRATA WHERE CX>ST > 5000.00.
Awroximately 10 percent of all assets
than 5000.00 dollars are sampled.

whose

cost is greater

G

'rake this path if the strata is not named.

H

Take this path to name the strata for later reference.
The
<name> specified then can be used to identify the sampled
infonnation (logical records) fran the strata. '!be <nane> can
be referenced as a data i tern which is 1 (TRUE) if the logical
record is in the strata or 0 (FALSE) if it is not in the strata.

4 - 290

Exarrp1e:
SAMPLE EVERY 100 RECDRDS FlU-1 STRATA
SMALL-ACXXXJNTS WHERE BAI.AtCE < 10000,
EVERY 10 RECDRllS FRCM STRATA BIG-ACXXXJNTS
WHERE BALANCE GF.D 10000.

SELEX:'l' SAMPLED INFOR-lATIW WHERE

SMALL-ACCDUNTS

= TRUE.

The above SELEX:I' statement selects only sanpled infOtmatiat fran
the strata SMALL-ACCDUNTS.
I

The <Boo1 expr> defines the strata to be sarrpled. If path B was
taken, the <Boo1 expr> can reference cnly accepted data itEms
and data i terns contained in the specified data structure.
'!be
Bc:x>lean expressial IIUlst be ncnstatistical.
Exarrp1e: ("CLIENI'")
SAMPLE ACCTS-RaV E.VERY 4 RECDRIS
STRATA WHERE NINETY-~YS-JlJE > 10000.00.
the strata ~]laticn
CXXl8ists of all
records satisfying the ccnii.tion that Ba\IRa N:INB'N
mYS DUE is over 10,000 dollars.
Every fourth such
is
included in the sample.

In

this

exanp1e,

ACCrS-RIOC..V

J

recom

Take this path to specify additional semple descript.i.alS and
strata specificatialS.
Infoxmatioo ~ch is not part of any
defined STRATA is not sanp1ed arxi therefore unavailable for
reporting.
Exarrple: ("CLImrtl)
SAMPLE SYSTEMATICAlLY EVERY 100 REXX>~ FIOt
STRATA WHERE lW:.AtCE-DUE < 5000,
RANIXMLY APPlVX 15 PERCENI' OF ALL REXl)fijE F1Q.1

STRATA WHERE BALANCE-DUE G&l 5000 AND

BAIANCE-DUE < 10000,
RANOCMLY 51 0t1l' OF 514 REOORDS FJQ.1 STRATA
WHERE BAIANCE-DUE Gm 10000.

4 - 291

'lhia . aanple exmaiata
of fJN8ry 100th account
for \ttbi.ch
~IXJE is 1 _ than 5000, approximately lS percent of all
accounts for Wdch IW.MXZ-IlE is greater than or equal to 5000
but. leu than 10000, and Sl out of 514 accounts for which
~IllE1a at last 10000.
J(

Take thia path When all desired aanple deacriptioos
are apec1fiad.

4 - 292

and strata

SAVELI~~
-.-.-

SAVE LIST:m3 statement canses the autanatically fonnatted or
user-:fcmnatted repxt listing produced by the generated repxt to be
named <external file name> if assigned to an appropriate har:dware
device. (Refer to the ASSIGN LISTIm statement in this section.)

'!be

ExaRple:
SAVE REPORl'

LI~

AS "DlPPAY".

The autanatically formatted rep:>rt listing is labeled IIEMPPAY".

The syntax for the SAVE

LI~

statement is as follows:

A
->~:--------->_LI_STnG_

I

I

_AS_ <external file name>.

B
I
J->REPORl'-> I

I
I
I c
I
+--->R>iMS-->+
The paths of this syntax diagram are explained below:

Path

Explanatioo
this path to identify the autanatically
listing.

formatted

report

A

Take

B

'lbis path is identical in

C

'!his path is taken to identify the user-fomatted report listing
am applies ally to reports specified with the PRINl' statement.

meani.r¥:J

to path A.

Exanple:
SAVE

mIlS

LIS'l'IR; AS ItEMLOl".

The user-fomatted. rep:>rt is labeled. "M..Ol".

4 - 293

The

SEI.aEX:'I' statement describes what information (logical records) is to
be reported.
If no SEI..tF.X:T statement is provided, all logical records
'ltbich were input and possibly sanpled are reported; no information is
suppressed.
The SEI.aEX:'I' statement should be contrasted to the action of the various
WHERE clauses in ~port-Item ~ (refer to REPORl'-ITEM K:>D in this
section).
The WHERE clauses suppress data items from a specific
application, While the SELECl' statement suppresses entire logical
records fran all applications.
The syntax for the SELECl' statement is as follows:
A

D

-->SEI.aEX:'I'---------,-----------------,-------------o--------·><Bool expr>.

I
I
I B
I +-> INFOR-1ATION->+ +->WHERE->+
1-->INPUT-> 1
I
l
I c
I
+->SAMPLED->+

The paths of this syntax diagram are explained below:
Path

Explanatial

A

Take this path to specify selection fran the informatial input.
Io3ical records suppressed by this optioo are not available for
sanpling, reporting, extracting, or sumnarizing.
Qlly ale
SET.ECl'
fran
input
infonnatioo
can be specifiEd in a
single-report specification, Input Secticin, or Report Section.
Example: ( ''V0CASr'' )
SET Fer a:>sT

> 100.00.

In this case, all logical records, or assets, Whose cost is less
than or equal to $100 are suppressed and are not sampled,
extracted, reported, or surrmarized.

4 -

294

B

Take this path to document the fact that selection is fran the
infonnatioo input.
The specification of INPUr here produces
exactly the same results as taking path A aOOve.
Qlly ale
SELEX::l' f:r-('4ll input infonnation can be given in a single-re};X)rt
specification, Input Section, or Report Section.
Exanple: ( "VOCAST" )
SELECI' INPl1r

This

INro~TION

WHERE OOST > 100.00.

exanple produces the same results ·as the exarrple in path A

above.
C

Take this path to specify selection fran the infonnation
sanpled; that is, specific informatioo is selected fran the
sanple taken. Logical records suppressed by this optioo are l'X)t
availat>le for reportiBJ, extractiBJ, or sunmarizing.
Qlly one
SELECl'
fran sampled infonnation
can be specified
in a
single-report specificatioo, Inplt Sectioo, or Report Sectioo.
a SAMPLE statement is not specified, this path specifies the
same selection as paths A and B.

If

Exanple: ( "Vcx:ASr" )
SELECT SAMPLED

INFO~TICN

WHERE <DST > 100.00.

In this case, all sanpled assets whose cost is less than or
equal to $100 are suppressed ani are l'X)t extracted, reported, or
sumnarized.

D

This path specifies the Boolean expression ~ch defines the
selectiCXl criteria. The expression can be canp::lSed of any data
i tern
or CQ'lStant
(striBJs or nurriJers) ,
rut RUSt be a
nonstatistical Boolean expression. '!be expressioo is evaluated
for each logical record, am the result (TRUE or FALSE)
determines if the logical record is to be selected.
Examples: ( "VOCASr" )

=

SELECT ASSET-'IYPE
23.
SELECI' (ACQUISITION-YR > 74) OR

(COST > 5000.00).
The above are legal nonstatistical Boolean expressions.

4 -

295

ExaDplea ("D1\1D1T-)

mJX:T SAMPL1: maE (JPBl'I'lY IS GRFATER 'lHMJ 10
MlD·YR-smD IS LESS 'lHMT 75. --

-

---.---

4 - 296

SORI' BLOCKING STATEMENI'
-SET - ---- ----

SEl' SORI' ~ statement is used to change the default blocking
factor for the internal sort file. '!he integer is the nllIli:ler of records
in a block. If you do not specify this option, the blockin1 factor is
the value as defaulted or specified by RP3VOC.
If a sort is rx>t
required, this statement is meaningless.

The

The
SET s)Rr BI.DCKING statement
processing-option statement.
~

The syntax for the SErr' EDRl'

is

a

Data-

statement is as follows:

->SEI' SORr-FILE BlDCKING----> <integer> .
--1
1

1->
I

+->

'10

->1
1

= ->+

4 - 297

peN 1177185-002

SEr SORI' SIZE SI'ATEMENr
----------

The SEI' SORr SIZE statement is used to change the default size of the
internal sort file. If you do not use this option, the size is supplied
by RP3VOC, either as given in RP3VOC or as defaulted. If a sort is not
required, this statement is meaningless.
NOTE

The SEI' SORr SIZE
option statement.
The syntax for the SEl'

s)RI'

statement

is a Data-processing-

SIZE statement is as follows:

-->SET SORT-FILE SIZE------------->(l)

---

--I
1->

TO

1
->1

1
1
+-> = ->+
A

C

(l) ----------------------------> <integer >----------.-->.

1

1

1

1 B

1

+-> REroRDS-> +

1

+--><integer>---->BY->+

I

1-

+->AREAS->+

The paths of this syntax diagram are explained belaw:
Path

Explanation

A

Take this ,Path to specify the sort-file size in terms of records
only; only one area is allocated.

B

Take

this,Path to specify the sort-file size in terms of areas
records. The <integer> specifies the nUIriber of areas to be
allocated.
It is advisable that you take this ,Path if you
anticipate that the sort file is large, or if the anount of
available disk is limited.
arrl

peN 1177185-002

4 -

298

C

If you have taken path A, the <integer> DUSt specify, as a
min.im..Jm, the total rurber of records to be sorted. If yoo have
taken path B, the <integer> specifies the nuni:)er of records in
each area. 'Ibis integer sha11d be a nultiple of the blockirq
factor (refer to the SET 9JR1' BUX:I<IW statement in this
section) •

Exanple:
SE:l' SlRl'-FILE SIZE

ro

300 R!XX)IQI.

One area sufficient in size for 300 records is allocated for the

sort file.

Exanple:
SEl' &lRT SIZE 'It)

!QQ. !!!

100.

This specifies that the sort file can acxuiiaodate, at JlDBt,
10,000 records. Space is allocated in chunks of 100 records at
a time.

4 -

299

statistical expreaaial is an expr.sicn ~c:h contains CXl8 or rrcre
statistical functialll am/or statistical data items.
A statistical
apre88ial can be of the type arithmetic, string, or Boolean.

A

Exanple:
'1OI'AL (S1tl.ARY) / 12
MAX (AGE)
CXXJNl' > 25

Exanp1e:
'lOl'AL-PAYlDIL
'lOl'AL-PAYlDIL + rorAtt-JB)EFITS
'roI'AL-PAnaL / 12

'1'he
precediD:J expressia18 are statistical if TOl'AL-PAYlaL am
'lOl'AL-BBNEFITS reference derived data itatIB defined as £o11a. (refer to
EX'l'D1SIW in this aecticn) I
'lOl'AL-PAnaL IS 'rol'AL(SAtARY)
'lOl'AL-BDJEFI'l'S IS 'rol'AL( BENEFITS)

4 - 300

STATISTICAL FUNCl'Ial

A Statistical F\mctioo is used to describe a statistical item which
sunmarizes a group of logical records which \1Mre input. and possibly
extended, selected fran iqput, sanpled, and/or selected fran the sanple.
A statistic may be specified as a count, running count, total, running
total, average, maxilDlll, mi.niJIun, sum of squares, mean square, variance,
or standard deviatioo.
'!be scope of a Statistical Functioo is the group of information (logical
records) to be sunmarized.
Statistics can s\mDarize all informatial
being reported or sumnarize the infonnaticm related to each value of a
ccnt.l'Ol-break item. '!he scope of ·the statistic is specified explicitly
in the Statistical Functi.CXl or is inferred by the context in ~ch the

function

~rs.

Exanple:

GRAND-'lUl' IS 'lOl'AL(AaDtlf.t'-BMAta) NlM(S, 2) •
SEl'l"Cr lEPARDell' > 10.
REPORT BY lEPARDBlI' I.IS'l'lD] S'lUtEtll'-NAME,
~-IN-SCHXlL, ACCXDll'-BAIAla.
SlMWUZE PUR FAQf IEPAImCfi'
JJEP1'-Ilt7l' IS T01'AL (ACCXDll'-BAIAla) NlJt1( 5,2) ,
~-GlWm-'lUl' IS (lEPT-'lUl' /
GRAND-IIUl'
1(0) ~(2,l),
GRAND-IIUl' ;

*

In this exanple, GRANDJlUl' aaears between the INPUl' statement arx1 the
RERRl' statanent.
The scope of GRAND-'lUl' will be all of the selected
records.
NUle DEPI'-'1t7l' uses the same data name (AaXXm'-BMAta) as
GRANDJlUl', the scope of lEPT-'lUl' is cnly all the records associated with
a particular department.

4 - 301

1EPARDBft'.

30

D'AR
IN
SQIXI.,

4
3

21.00
13.00

lEP1' '1t11'.1
34.00
PERCENl' OF GlW1D 'rol': 42.8
GRAND '1t11'
79.44

Independent

of acxpt,

statistics can be ccrditicmal,

basad

at

specified Boolean expre8aicn.
Exanple: ( ''VCQST'' )
TC71'AL( <Dn')
The preceding Statistical Functiat represents the total coat. of assets.

'lbe syntax for the Statistical Functicm follows.

4 - 302

a

A

+->CXXJNT-->+

I
I
I B
I
M
1->RI.JNNIm-<DUtll,------------->+
I
I
I
I
HI
I
I c
v 0
I
->'lUl'AL

) (

<stat~)

) -)

I
I D
I
1->Rl.JNNllD-'lUl')
J

E

->AVERAGE

>

F

->AVG

>

G

->MAXIMlIt--->
H

->MINIlOJ

>

I

->SUM-SQUARES-> I

I

J
I
->MF.J\N-S(J.JARES-> I

I
I
->VARIAta--> I
I
L
I
K

+-->S1'D-l1VIATICU->+

'lbe paths of this syntax diagram are explained below,
Path

Explanat.icm

A

Use CXXJNT to specify the nunber of logical records or the nunber
of values far the specified data item within the logical
records.
'lbe value retumed
is an unsigned integer of

lNl'mER-SlZE.

4 - 303

Exanple: ( "VOC'AST 11 )

preceding statistical
selected assets.

The

B

USe

RUNNIRl-<XXJNl'

functioo

to provide a

can specify the nunber of

~

count of logical reoords

or values for the specified data itan within the logical
reconis.
The
INT&iER-8IZE.

value

returned

is

an unsigned

integer

of

Example: ( ''VOCAST tI )

above statistical funct.ioo can be Used to provide a unique
nun'ber for each selected asset.

The

C

'1Ol'AL to specify the sum of values for the specified data
itan within the logical reaxds. '!be value returned is a signed
numeric of INImER-SlZE and FRACl'Itti-SlZE.

USe

Exanple: ( "VOC'AST 11 )
'lOl'AL (asr)

'!be

above

statistical

function

specifies

the total

cost of

assets.
D

USe ~ to provide a running total for the specified
data itan within the logical records.
The value retumed is a
signed numeric of INImER-SlZE am FRACTlCE-8IZE.

Exanple: ( I'VOCAST'I)
IIJNNI1G-'1Ul'AL (asr)

The

above statistical

functioo specifies

the rwming total or

acam.tlatioo of selected asset cost.
B-F

Take ale of these paths to specify the average ('rorAL/CDt.NI') of
values for the specified data item within the logical records.
'!be value returned is a signed numeric of INTmER-SlZE and
FRACl'IC6-SIZE.

4 - 304

Exanple: ( "vcx::AST" )
AVERAGE (<DST)

'!he above statistical
assets.
G

functioo

specifies

the average cost of

Use MAXIMUM to specify the largest value of the specified data
item within the logical records.
The attrihltes of the value
returned are identical to the specified data item.
Exanple: ( "VOCASTtI )
MAXIMlI-1 (<Db~)

a.bove statistical function specifies the maximum oost of an
asset.

The

H

Use MINIMtI-t to specify the smallest value of the specified data
item within the logical records.
'!he attrihltes of the value
returned are identical for the specified data item.
Exanple: ( ''VOCAST ti )
MINIMtJ.1 (cnsT)

above statistical function specifies the mininun cost of an
asset.

The

I

Use Stl+-SOJARES to specify the sum of the squared values of the
specified data item within the logical records.
'!he value
ret.urned is a signed numeric of :IN'ImER-SlZE and FRACI'IOO-SIZE.

Exanple: ( '''VOC:AST ti )
SUM-SQUARES (CDS'l')

'lhe above statistical functioo specifies the sum of the squared
cos·t of assets.
J

Use MFAN-SOJARES to specify the average of the sum of squared
values (SlM-SOJARES/CXXJNT) of the specified data item within the
logical records.
The value returned is a signed numeric of
INTmER-SlZE and FRAcrION-SlZE.

Exanple: ("VOCASr")
MFAN-SOOARES (CDST)

4 - 305

The above statistical
of assets.
K

Use
data

function specifies the mean squares cost

VARIANCE to specify the variance values for the specified
i tern within the logical records, for exanple, MEAN-SQUARES

(AVERAGE

** 2).

The value returned

is a signed numeric of

INrmER-SlZE and FRACrION-SlZE.
Example: (tt'VOC.ASr lt )
VARIANCE (<DST)

The preceding statistical
of assets.
L

function specifies the cost variance

Use STD-DEVIATION to specify the standa:t'd deviation (the square
root of VARIANCE of the specified data itan within the logical
records).
The value returned
is a signed
numeric
of
INTmER-SlZE and FRACrlOO-SlZE.
Example: (1t'VOC.ASr")
STD-DE.VIATlOO (OOST) :

above statistical function specifies the standard deviation
of asset cost.

The

M

Take this path if each logical record is to be counted.
'!he
scope of the statistic is all logical records reported or
specified by the CXXltext in which CXXJN1' is specified.
Example: ("INVENl'")
~ZE

PUR EACH DEPARIMENl' CXXJN1'.

'lbe count of the n\.ll'l'ber of parts reported for each department is
OOtained.
N

Take this path to specify a condition on Which to base the
count, to specify the scope explicitly, and/or to specify a
count of the nurnber of different control-bredk values.

4 - 306

Exanple: ("INVENT")

'Ibis specifies, independent of OXltext, that a oount is taken of
'.

parts for each department.

Exanple: ( II INVENT" )
axNl'(WHERE 0UANTI'lY < 100)

1his specifies that a count is taken of only thcae parts Where
quantity on hand is less than 100.

o

Take this path to specify the data items 00 \1tbi.c!h the statistic
is calculated, the CCDiitial em which the statistic is based,
am/or the scope CNer Wddl the statistic is calculated.
Exanple: ( ''VCrAST" )

In this case, the data item asr is totaled.
No CCDiitiem is
specified, since the total ccst for all asset. records is taken.
Depending 00 the CCIltext in which '1t7rAL(CDb'-) is specified, this
total can be obtained for all assets beiDJ rapartad or far each
value of a CCIltrol-break item (for exanple, IEPJ.'-K» or each
range group.

4 - 307

grATP~

Stat Parameters
functioo.

is used to specify the parameters

of the statistical

The syntax for Stat Parameters is as follows:

c

A

- - - - - - - , - - - - - - . ------------------->
I
IJ
B

I

1

I G
I
+->FACH <c-b name>->+

I

I

+-><data narne>->+

1<---

01

IE

F

1-{T7->FOR-->FINAL---

I

-I

1

I

---I
I
I
._-> I
II
I

1 - - 1
I

I

H

+--{T7->Wf:fERE <Bool expr>---->+
The paths of this syntax diagram are explained belaN.
~

A

E?C:planatioo

this path ally if tlle CDUNT or RUNNING CDlNl' function is
used, am if yoo desire a count or rurmiD3 count of the nl..Utber
of logical reoords.

Take

Exanple:

Qlly

(tla..:rmr" )

those logical records (acoounts)

over ninety days due are

oounted.
B

Take this path to specify the <data name> Which references
data item to be s\.Dl11Brized.

the

Exanple: ("INVml'")
AVERAGE (INV!Nl'-DOLtAR-VALUE)

refers
4 -

to

308

a

numeric

data

item.

AVERAGE (INVml'-IXlLIAR-VAIlJE) specifies that the average value of
this itan is calculated.
If infonnation is grouped by centrol breaks and the data item
specifiEd
is a oontrol-break
item or is relatEd
to a
control-break item via a RELATED 'ro clause, ally ale value of
the data item is calculated into the statistics for each value
of the control-break item.
Exanple:
AVERAGE (JOB-GRADE)
AVERAGE (JOB-GRADE RELATED '.ro JOB-DF11C)
CXXltll' (JOB-DFSC)

If employee records are grouped by the cxntrol-break item,
JOB-DESC, the first statistical functicn specifies the average
jOO
grade of Eltployees.
However, the seoald statistical
functioo specifies the average job grade in relatioo to jci>
descriptioos.
In this context, JOB-GRADE is used as a sunmary
item.
The thim statistical functioo counts the ruciler of
different joo description values reported, art. oot the lll.lIlber of
logical records (employees). Here again, Jcm-IESC is used as a
sunmary item.
C

this path if the statistic is not based a l any CXXldition
am if the 8Oq)e of the statistic is deteDDined by the oontext
in Which it a~s. If the context does not inply a 8Oq)e, the
default 8Oq)e is all logical records reported (FOR FJlW,).
Take

Exanple: ( 1-voc:AST

It

)

'lOl'AL( CXlST)

oosts are totaled.
'!be 8Oq)e of the
deteDDined by the statement in which it appears.

Assets

statistic

is

ExaDple: ( 1-voc:AST" )
'lOl'AL-ASSET-aliT IS 'lOl'AL( CDST) •
'lOl'AL-ASSET-aliT
references the total oost
reported. '!he default seep! is EOR FINAL.

ExaDple: ( IVa;:ASr" )
REFORl' R>R EACH DEPl'-ID:

'lOl'AL( <nsT) •

4 - 309

of

all

assets

Here the total cx:>st of all assets reported
department IllJn't)er is reported.
The default
fran the CXlntext.

for a particular
scope is inplied

D

Take this path to specify a CCXlditioo al which to base the
statistic and/or explicitly specify the scope of the statistic.

E

Take this path to specify explicitly the scope of the statistic.
This specification overrides the default scope inplied by the
context in which the statistical function is specified.

F

Take this path to specify that this statistic
all informatioo being reported.

is to sumnarize

Exanple: ( "Vcx:AST" )
'lUI'AL( CDS'!' PUR FINAL)

This specifies the total cost of all assets reported.
value is obtained.
G

A single

Take this path to specify that the statistic is to sunmarize
infoxmation for each value of the specified contxol-break item.
<c-b name> nust refer to a previously defined c:x:ntrol-break
item.
Exanple: ("VOCA8l''')
TOl'AL(CDST PUR ~ DEP'r-ID)

This specifies the total cost of all assets reported for each
department nurri:ler. A number of values is then olT~.
Exanple: (''VCX:ASr'')
TOrAL( a:sr FOR FACli RANGE)

The above specifies the total oost of all assets reported for
each value range. (Refer to RANGE statement in this secticn.)
H

Take this path to specify a condition on which the statistic is
to be based. The Boolean expressioo specifies a conditioo which
is evaluated for each logical record.
If this CCXldition is
evaluated as TRUE, the logical record is figured into the
statistic.
If the condition is evaluated as FALSE, the logical
record is not figured into the statistic.

4 - 310

AVERAGE(BAIANCE-DUE WHERE NINEIY-DA.Y8-DUE
The average talance due of all accounts
over ninety days due is obtained.

>.QL

with unpaid balances

If, several statistics with the same WHERE
clause are specifioo for a report, it is
recarmended that the WHERE condition be
defined
as
a
Boolean
extension
and
referenced in each WHERE clause.

CAurION

Use
care
When
specifying
and
using
statistics
with a WHERE clause.
Under
certain conditions, the results Obtained
from a statistic are invalid.
For
exarrple,
the statistical
function
MAXIMUM returns a lOW' value if USel with a
WHERE clause in which the Boolean expression
is never true, because the actual value
returned is based en the size of the data
field used in the statistical function ani
on Whether or rot the data field is signed.
A
data field definoo as 9999.99,
for
instance, has a lOW' value of 0, while a data
field defined as 899 has a lOW' value of -99.
In addition, moving the lOW' value result of
a statistical item from a signed data field
to an unsigned data field proouces invalid
resul ts because the sign is lost. Moreover ,
if digits are inadvertently truncated in the
moving process, additional errors can occur.
guarantee correct results, do not assign
internal
attributes
to the data field
receiving a statistical value.
REPORTER III autanatically maintains both
the sign and the size of a data field
throughout a report.

To

4 - 311

peN 1177185-002

I

Take this path to specify both the scope of the statistic and a
condition on Which to base the statistic.
Exarrple: (IIVcx::EMP II )
TOTAL ( SAIARY roR FACH DEPI'-ID
WHERE EMPYE--=-AGE > 30).

This statistic specifies the total salary for each department of
all etployees whose age is greater than 30 years.
J

Take this path after the scope

peN 1177185-002

am/or

4 - 312

condition is specified.

SUMvWUZE STATEMENT

'!he stMvlARIZE statement is used
column footings which are included
groupings and/or at the end of the
smt1ARIZE statement is anitted if
oolumn footings are desired.

to specify statistical sumnaries am
at the end of specified control-break
entire report (final sumnaries). The
no such statistical sumnaries and no

Exanple: ( II INVENT II )

REK>Rl' PARr-NO, INVENT-OOILAR-VAilJE.

St»1ARIZE FOOI'ING INVENT-OOLlAR-VALUE INCUJDING
AVERAGE (INVENT-OOLIAR-VAilJE) •

In this exanple, it is assumErl that two columns are reported, PARr-NO
and lNVENI'-OOLI.AR-VAllJE.
No control breaks are given, so the report
appears as follows:
PARr
ID

INVENl'
OOILAR

VAilJE
113100
203171
311711

131.00
701.63
333.80

St»1ARIES FOR FINAL

89131.50
AVERAGE (INVENT OOILAR VALUE): 521.65
~

Notice that the column for inventory dollar value is footed with the
total of all values appearirg in the column. In additioo, the average
inventory dollar value of all assets reported is obtained.

4 - 312A

peN

1177185-002

The syntax for the SlJM-1ARIZE statement is as follCMS:

+<-·---------------------------------------------(2)
->~ZE

I
I

A

fT7----------

I

,----->(1)

I B
C
+-->POR----/lL7-->FDmL~-----·--~--------->+
-I
ID

E

+-->EAai <c-b name>->+ +--> : ->+

(2)<-------------F

: <-,--------++

J

Kl
I

L

(1)-----------------><sunmary statistics>--->.
I
I
I
I

I
I

+--> lNCUJDIm->+

IG

HI
I

I

+--><f~s>------------------------------------------>+

'!he paths of this syntax diagram are explained belOlli:

!!!:h

ExplanatiQl

A

Take this path to specify OCIlveniently that footings be printed
at the end of the report and for all previously specified
ccntrol-break groupings. If <sunmary statistics> are specified,
they are printed ally at the em of the report as FINAL
aunmaries (refer to path C).

Exanple: ( "INV!Nl'" )
REPORl' BY DEPARlMENl' LISTING PARI'-N:>,
INVPN1'-OOLtAR-VAIlJE.

colunn for INVENrORY-OOLIAR-VAIlJE is footed for each
DEPARlMENl' grouping and at the end of the report.
'!he above
SlJot.JAlUZE statement is equivalent to the statement that follows
(refer to paths C and D).

'!be

4 - 313

SlHWUZE FOR

FAQI

DEPARlMENl' POOl'IOO

INVENl'-OOUAR-VAIlJE;
FOR FINAL EOOl'ING INVENl'-OOLiAR-VAIlJE.

Each

SlI+1ARIZE

statement

generates

a rep::>rt that appears

follows:
DEPJUmtlENl' :

1031
PARI'

INVENl'

1«)

OOLI.AR
VAIlJE

023111
178110

170.20
83.50

StI+1ARIFS FOR DEPARIMENl':

1031
83321.13

TOTAL

DEPARlMENl':

1120
PARI'

INVENl'
OOLI.AR
VAIlJE

1«)

071310

13.10
510.00

500300

•
SlHWUES JroR DEPAR1M!Nr:
TOTAL

1120
7100.20

SUMMARIFS roR FINAL

TOTAL
Exarcp1e:

317121.80
(''V~")

REroRr BY DEPI'-ID i BY LOC-<DDE LISTING
ASSET-NO, CDS'!'.
SUMMARIZE

AVERAGE ( CDST) •

4 - 314

as

The average asset cost of all assets is calculated and printed
as a final sumnary. The above SUMMARIZE statement is equivalent
to the following statement (refer to path C):
stMWUZE FOR FINAL:

AVERAGE(CDST).

shown in the preceding example, path A defines a default
scope of FINAL for the specified statistical functions.
The
scope of a statistical function is defined as the group of
information which is to be stmmarized.

As

If path A is taken and columns consist of slU'Cl'C1a.r'Y infonnation
for a particular control break, specified footings ooly appear
in the report for all higher-level breaks and FINAL.
Exanple: {"INVENr tl }
REPOR'f FOR FACH DEPARIMEr~;rr: 0JtJNT, INVENroRY-VAIlJE
WHIQi IS '!UrAL ( INVF.Nl'-OOLIAR-VAWE) •
SUt+1ARIZE F<XY.rI~ INVENI'ORY-VAIlJE •.

The INVENTORY-VALUE
report.

colunn

is footed

ooly

at the end of the

B

Take this path to specify that s\.UtlL1aI'y statistics am/or
footings be calculated and printed at the end of the report as
final sumnaries or for each value of a specified control-break
ita".
The FOR c::pt.ian defines the default scope for the
specified statistical functions and footings.
(Refer to FOR
optian for Statistic Function in this section.) The scope of a
statistic or footing is defined as the group of infonnation
which is to be sumnarized.

C

Take this path to specify s\.ll11l'la.r'Y statistics and footings that
sunmarize all infonnation being reported and appear at the em
of the report as SUM-1ARIES FOR FINAL.
If path C is taken, all items reported as final must be
statistical summary items related to all information being
reported.
Example: ("VQC.ASTII)
SlM1ARIZE FOR FINAL AVERAGE (SAIARY) •

The above statement specifies that the average ~alary of all
enployees reported is to be calcui.ated.
The value appears on
the printed reports as follows.

4 - 315

SUt+1ARIES FOR FINAL
$ 17130.87

AVER~GE(SALARY):

D

Take this path to specify sumnary statistics and/or footings
WhiCh
summarize information
related to each value of a
previously defined control-break item.
Path D can only be
specified once for a given <c-b naxre>. These stmmaries appear
in the report after all speci fied infonnation pertaining to each
control-break value is printed.
The specific control-break
summaries are identified as foll~:
SUt+1ARIES FOR <identifier>:

<c-b value>.

The default <identifier> is based on the oont~l-break name.
(Refer
to DEFAULT IDENTIFIERS under CDllJMN DESC in this
section.)

If path D is taken, all items reported as sumnary statistics for
the specified control break must be statistical sumnary items
related to the control break.
Exartple: ( ItVOCAST" )
St.M-tARIZE roR FAOl DEPI'-NO AVERAGE(OOST}.

'!he alx>ve statement specifies that the average cost of all
assets reported for each department n\.lIt'ber is calculated an]
printed. The values appear for each department in the following
format.
SlHWUES roR DEPr NO: 0134
AVERAGE(COST): $
123.20

Exanple: ("CLIENT")
GROOP g'i ~ OF CREDIT-LIMIT
'ID 1000 AS CREDIT-RANGE.

FR)M

St.M-tARIZE FOR EACH CREDIT-RANGE:

AVERAGE (BALANCE-DUE) •

4 - 316

1000

The above SlH-SARIZE statement specifies that the average balance
due is to be calculated am reported for each value ~e of
credit
limit'..
'lhe average balance due C1fPeClrs for each

CDltrol-break grouping in the following fonnat.
S(MIIARIES IDR CREDIT RANGE:
AVERAGE (BAUWCE DUE):

E

2000 -

3000

$ 1115.26

'!he colon can be used for documentation clarity when no footings
sunmary statistics follow. The colen has no
semantic meaning.

are desired and

P

this path if no footiD;Js
statistics are specified •

are desired

Take

and ally

sumnary

.ExaDple: ( "'l'RJCl{VI. )
S(MIIARIZE '1Ol'AL(HOm'-<HD).

G

this path to specify oolunn foot.inJs for the replrt. The
use of this path presupposes the specification of oolunns in the
REPORl' statement. '!he values appearing in the specified columns
are totaled. '!he totals are placed under the oolUllllS.

H

If
sunmary statistics are desired in additien to colunn
footings,
this path is taken.
'lhe footiB]s are printed
underneath the oolumns, while the sunmary statistics are printed
in a vertical format.

Take

ExaDple: ( II INVml'.1 )
R£R)Rl'

BY DEPARlMENT LISTIlG PART-l«),

INV!Nl'-OOLIAR-VAUJE •

•
S(MIIARIZE FOR FAQi DEPARlMENT EOOl'IOO
INV!Nl'-IXLlAR-VAUE
INCllJDIOO AVERAGE ( I!MNl'-OOL!.AR-VAUJE) •

'Ibis produces the following type of report.

4 -

317

mvmr
IXLIAR
VAIlJE

071310
500300

13.10
510.00

•

StM-tARIFB POR DEPARI'MENI':

SUB-ASSEMBLY

TOTAL

AVERAGE ( mvmr IXLIAR VAIlJE):
footi~s

7100.20
187.52

I

Take this path if ally

are desired.

J

this path to specify
sunmary statistics.
statistics
are printed in a vertical
foxmat
appropriately identified in the report listir¥J.
Take

SUmnary
and

are

'!his specifies that the maxiItun credit limit is calculated
printed for reported accounts.

and

Exaltple I

(

"a..IENr" )

SlHWUZE MAXIMUM(CREDIT-LIMIT).

K

this path as many t:imes as necessary to specify all final
am control-break sunmaries.
Any previously defined control
break can be mentioned in the stH-WUZE statement (refer to path
D above).
Take

Exanple: (1iCLIENl''')
REPORl' BY INV-BRANai-Wi BY INV-cusT-t«> LIS'l'DG
INVOlCE-NO, TOrAL-AKXJNT.

SUl+1ARIZE POR FACH lNV-<..."lJST-OO
EOOl'nG 'IUl'AIrAt«XJNI';
roR EACH INV-BRANai-NO: MAXIMUM ( 'lUl'AL-NDJNl') i
PUR FINAL: AVG(TOl'AL-At«XJNI') ,
AVG (N-DJNr-PAID) •

4 -' 318

'!he following report results:

INV BlW«lf W: 0012
lNV am ID: 031748

INVOICZ
)J)

033712

041350
•
•

SlJK\RIES !at Df'I

•

a.,- R).

~AL

$ 131.05
, 73.03
•
•
•
031748
'2100.20

•

•
•

SlJK\RIES !tit INV BRMDI)I). 0012
tWCDIII ('!OrAL JKU1T) I $237.80
•
•
Sl.IIIM.Im !at PDW..
AVG ('!OrAL JKU1T):
AVG (ND.Ift' PAID):

$83.50
$12.65

4 - 319

~

Sl'ATISTICS

Summy Statistics specifies what sunmary statistical
included in a report.

items are to be

'nle syntax for Sumnary Statistics is as follOriS:

+

I
I

<----------------

<---------------+1

FI

A
D
I G
--------><data Nme>------------------·------>

I
I

I 1
I I E

B

1-> <item desc>-> 1

I
I c

+--)~

<string>->+

I
I

+--><extension>->+

The paths of this syntax diagram are explained below:
~

Explanaticn

A

Take this path to reference a statistical data item to be
included in the sURIIIU'Y statistics.
'lbe <data name> nust not

have been specified previously as a sURIIIU'Y statistic within the
SlHI\RIZE statElnent.

Exanple:
~

IS '101'AL(cn9I' !OR EAQi IEPl'-l«»

lUt(8,2)
•
•

total coat of assets for each departnalt
aunmary infcmnation for each department. nuni:)er.

The

B

is printed as

Take this path to describe a statistical data itan to be
included in the sunmary statistics. The itan described nust be
statistical.

4 - 320

Exanple: ( ''VOCAST II )
SlJM.WUZE FOR FAQi DEPl'-K>:
'lOl'AL( CDS'!') NUM (8, 2)

nte

cost of assets for each department
sunmary infonnation for each department number.

C

total

is printed

as

Take this path to define an extension and specify that the
derived data iten be included in the sunrnary statistics.
The
derived data item nust be statistical.
Exanple: ( "CLIENl'" )
SlHeWUZE FOR EAai BRANCH:

1W..30 IS rorAL(THIR'IY-Dt\YS-DUE).

total balance thirty days due (B1\L30) is printed as sumnary
infonnation for each branch.

')he

D

If this path is taken, a default identifier based 00 the <item
desc> or derived data item name is used in the report. to
identify the value of the sumnary statistic (Refer to DEFAULT
IIBlI'IFIERS under CXltati DESC in this section.)

E

Take

this path to specify a string of characters
identify the statistical value printed.

'!he

<string>

specified

to be used to

here nust be 30 characters

or less in

leD3th.
Exanple: ( II INVENl'" )
'lOI'AL( QUANTlTi) AS "STOCK Gl HAND".

The total
follOMS:

quantity of parts

srocK CE HAND:

F

is identified

in the report. . as

218195

Take this path as many times as necessary to specify all
statistical summaries desired. Summaries are listed vertically
in the report in the same sequence as they are specified.

4 -

321

Exanple: (" INVENr" )

SUt+WUZE FOR FAOI DEPARIMENr:
MAX (INVENr-OOLIAR-VAllJE) ,
MIN (INVENr-OOUAR-VAIlJE) ,
'lUrAL{ INVENr-OOLtAR-VALUE) ,
AVG(QUANI'I'lY) •

Sunmaries for each depart:.nent are printed as follows:

StH-JARIES FOR DEPARIMENr:

EN3INEERJ:OO

MAX (INVENr OOUAR VALUE): 707.50
MIN (INVtNr OOLtAR VAIlJE):
10.70
'lUrAL (INVENr OOLLAR VAUJE): 107100.50
AVG (QUANTITY): 20

Exanple: (nCLIENr")
SlMoV\1UZE FOR FACli SRANQI:
BAL30 IS TC1l'AL('lHIRIY-~DUE)

WITH PIC II$ZZZZ9.99 u,
BM.60 IS TOI'AL(SIX'lY-~DUE),
WITH PIC U$ZZZZ9.GG",
BAL90 IS rorAL(NINET'i-~DUE),
WI1H PIC II $ZZZZ9 .99" ,
BAL30 + BALOO + BAL90 AS "'IOTALII •

S\.JII1lal'ies for each branch are printed as follOliB:

SUl+1ARIES FOR BRANCH:

$ 1320.80
$ 987.26
$ 220.40

BALJO:
~O:

Bi\L90:
'lUI'AL:

G

T-dke

this

path

0012

2528.46000

after

all

sllIt1llarY

provided.
4 - 322

statistics

desired

are

SUPPRESS !:DR!' S'l'ATEMEl'lr
The SUPPRESS SORl' statement suppresses the sort. noxmally required to
group and order infonnation in the specified manner. A SUPPRESS S)Rl'
shoold only be specified if you knc:J.f that the infonnauoo as input
results in logical records grouped by control break ard/or ordered in
the sequence required am specified in the report specification.

Example: ("aJS'lVII)
INPt1I' REMIT-FILE.

REPORl' BY REMIT-ACrr-R) LISTnI; aJST-NAME,
NET-PAYMI' •

SUPPRESS SORt'.

the records of REMIT-FILE are maintained in sequence based al
REMIT-ACCT-OO, all remittances are already grooped together by acoount
n\.:lli:)er; therefore, a listing of custaners can be obtained by acoount
rn.miler without a sort.

Since

Exanple:

("~")

INPt1I' ACC:r-INVOlCE-INEU.
SUPPRESS ~.
GROOP BY CBl'-NO.

The input infonnatioo "( the invoices) are already grouped correctly based
00 aJST-NO by nature of the access specified: therefore, sorting is not
necessary.
The syntax for the SUPPRESS OORT statement is as follows:

->SUPPRESS SORI'.

4 - 323

The Systematic-semple Desc is used to describe a systematic sanpling.

The syntax for the Systematic-sanple Desc is as follows:
A

M

-------->ALL--------------------,---------------------->

I
BI
I
I

+->~>+

1
1<------------------------,--------,
1

Ie

L

----,----

D

1-/T7->FIDt---,-----> <integer>-,---->

I
I
I
I
IF

-

+->REXDRD->+

I
I

I

E

+--> <acpt data name>->+
G

1-/T7->TO---------·,-><integer>------>

I
I
I
I
II

-

I I
I

+->R!XX)RD-> +

H

+-><acpt. data name>->+
J

+--/T7->~----><integer>------·---------------------->+

I
IK

+--> REXDRDS->+

+--> <acpt data name>->+

'lhe paths of this syntax diagram are explained below:
~

A

!?q?lanation
Take this path if all records are to be included in the sanple.

ExaDple:
SAMPLE AIL RfXX>RDS FR:M STRATA WHERE
BAIAiiZ > 10000.

4 - 324

This sanple consists
10000.

of all records

with BPtIANCE greater than

B

Take this path to specify the first record to be sanpled,
last record to be considered, and/or the sanplin; interval.

C

Take this path to specify the first record to be sanpled.
'!be
default is the first record as detemdned l:7x the sanplin;
int.et:val.

D-E

the

starting record can be specified through path D using an
integer, or thrwgh path E usiBJ an accepted data name.

'!he

Exanple:

-

~ F1UI REXDRD 5.

'Jhis
it.

-

sanple consists of the fifth record

am every record after

Take this path to specify the last record to be ccnsidered.
default is the last record processed.

F

G-H

'!he

'!be last record can be specified through path G using an integer

or through path H usin1 an accepted data name.
Exanple:
NXEPI' STARl' lUt( 2) •
SAMPLE FIDt STARl' ro RECDRD 100 E.VmY 10.

of STARr is 5, the sanple coosists
• 85th, arxl 95th records.

of the 5th,

This path. is used to specify the sauplirxJ interval.
interval is 1.

'1he default

If the value
15th, 25th,.

I

J-K

'Dle semple interval can be specified through path J using an
integer, or through path K using an accepted data nane.

4 - 325

Exanple:
AaZPT mrERVAL lUI( 3) •
SAMPlB I1DI RfXDRD 1 EVERY INTERVAL
P1DI STRATA tID:RE BI\.LAtIZ ) 10000.

suax-e

the value of Ilfl'ERVAL is 10. Then aJIIXJg all the records
with IIALAta gmater than 10000, the 1st, 11th, 21st, 31st,. •
• records are included in the sanple.

if an additicmal. deacript..ion

aaaplirrJ

is

L

Take this path
required.

M

Take this path When all desired descriptiana for the sanple are
specified.

4 - 326

for

System-file-data-struct.ure clause allows an OlGANIZATIW SEXXlENI'IAL
system file to be accessed sequentially in physical order or randanly
via an actual key, or matdled with another data structure based en
c::amcn
data fields.
'!be clause allows a system file that is
OIGANIZATICN INlEXED to be accessed sequentially in ascendiB3 key order
or randanly via a synix>lic record key. The clause also allows a system
file that is OIGANIZATI~ RElATIVE to be accessed sequentially :in
ascending relative record nunber order or randanly via a relative record
'n1e

key.

Exanple: ( "aJSTV" )
INPUT RmUT-FILE.

records in the system file, RDUT-FIIE, are accessed sequentially.
Each logical record oorrespoods to a ranittance record of the file.

All

'!be syntax for the System-file-data-structure clause is as follows:
A

-------------------------------->(1)

-><systemfile ~

I

I
I

B

I-><aooess clause>-->+

I
cl

F

D

++------------>~~-------------->(2)

I
I

E

G

I->~n«;_>

+-->~->+

I
I

-

H

I
I
I
I

+-> DESC!P1mIOO->+

4 -

327

(1)----------------------------------------------->
+<

-ANO<---+

I
I I

JI
I K

-

L

(2)-><data name> WI'lH <data nane>----------->+
M

+<

+

--

I
I
I
I
I

+<-

I
I

:AND <

+
pi
I

--

N

Q

I
I
I
I
I
I
I
I

-t-->lCl'nil--/T7->tHWl'ClIED---->+

I
10

I
I

+--/T7->~CATES->+

'lbe paths of this syntax diagram are explained below:

!!!:!l

Explanati(Xl

A

'l'alte this path if all reconis of the system file are to be
accessed s8C)\Bltially, not U8i~ an AC1'UAL K!.Y, symbolic record
key, or IIBtching algorithm.

Exanple: ( 1-vcrAsT" )

D1Pt11' ASSm'-FILE.
this exanple,
the file name A9SET-FILE
sequentially until the file is exhausted.

In

is

accessed

Exanple:

D1Pt11' PARI'S, SUPPLIER.
In this exanple, a record is read fran file PARrS and file
SJPPLIER in turn, fran left to right, until an &1d-of-File
ocnditi(Xl is obtained (Xl both files.
'lhus, a logical record
CXXl8ists of a reoord for PARI'S and a record for SUPPLIER.
If
ale of the files becanes exhausted before the other, all input
ceases fran this file, am art:! data items associated with the
file are CXXlSidered to have NUIL values.

4 -

328

Exanple:
INPUI' MrI'-FIlE (INVOICES) •

All account records are accessed.
For each AO:T-FIIE record,
all INVOICE records are accessed. A logical record contains an
account-file record and an invoice record.
Each acoount-file
record is linked together with every invoice reoord in the set
of logical reoords.

B

'Ibis path allows raadan access to a specific record given a key
value.
In addition, it permits s~uential access of records
starting at a key value WhiCh satisfies a given criterion.
Exanple:
INPUI' TRANS-FILE, ACCr-FILE AT TRANS-ACCl'-NO.

In this exanpl~, TRANS-~-NO is a data item of TRANS-FILE.
With each TRANS-FILE record accessed, the value of TRANS-ACrI'-OO
is the key value of the ACCT-FILE record to be accessed
directly.

C

Take this path if records of the system file are to be matched
with those of another data structure based en one or IlDre catnOl
data items. '!be system file organization DUSt be sequential.
The data structures to be matched are often described as master
(or primary) an:1 slave (or secoOOary). They JIUlSt be input with
their matchiBJ key values caning in the same ascending or
descending sequence. Either data structure can have duplicates
(records with the same matdti.IXJ key values). Usually the master
cx:ntains no duplicates.

Urmatched records of the specified system file are not input.
'lbey can be igoored or noted as exceptioos.
Each Ul'J'Datched
record of the related data structure is paired with a null
record of the system; that is, data items associated with the
system file are <DIlSidered to have null values.
IUplicates (records with duplicate key values) in the specified
system file also can be noted as exceptions.
Exanples which follON illustrate lXJW records are matched by
shewing key values within the input records along with the key
values within the logical records that result fran the match.
Duplicate keys are distinguished using subscripts, for example,
101-1, 101-2, and so forth.

4 - 329

D

Take this path if the system file is to be considered the slave
matc'hin3 file. The master matdling data structure ItIlst already
have been specified at the same or imnedi.ate outer input level.
In matchiI¥3 at the same level, 00 record in the master data
structure is matched to nore than one record in the slave system
file (matchiD3 is done in a one-to-one marmer).
In matching
between inner and outer levels, duplicates in the slave system
file are matched with the first matc:hiD3 record in the related
master data structure, and any duplicate master records after
the first have 00 matched slaves (matching is done in a
ooe-to-many manner).
Exartple: (uQJSlVU)
INPl1l' ACCT-FIlE, mMlT-FILE ~
R!MIT-~-OO WI'lH ACCT-NO.

The input records before matching, the resul~ing logical records
after matc:hiD3, the unmatched REMIT-FILE reoords, and the
duplicate REMIT-FILE records appear as follows:
Before Matching

After Matching

REMIT-FILE Records

ACCr-FIIE REMIT-FILE ACCT-FILE RfMIT-FILE

101
213
417-1
417-2
580

101
213
417-1
417-2
580

101-1
101-2
213
320-1
320-2
417-1
417-2
417-3

Exartp1e: (uC1JS1V U

Unmatched Duplicate

320-1
320-2

101-1
213
417-1
null
null

101-2
320-2
417-2
417-3

)

INPl1l' R&1IT-FILE, Aa:T-FIIE t~
~-OO WI'lH REMIT-ACCT-OO.

In

the follONing exanple, mMr1'-FILE

and ACrl'-FILE the slave.

4 -

330

is considered

the master

Before Matching

After Matching

AOCT-FILE Records

REMIT-FILE ACCT-FILE

REMIT-FILE ACCT-FILE

UnmatChed Dqp1icate

101-1
101-2
213
320-1
320-2
417-1
417-2
417-3

101-1
101-2
213
320-1
320-2
417-1
417-2
417-3

101
213
417-1
417-2
580

Exanp1e: (tlaJS'lV

tI

101
null
213
null
null
417-1
null
null

580

417-2

)

INPl1l' ACC!'-FlIE(REMIT-FILE MA~
Im1IT-ACCT-NO wrm ACCT-NO).

This example illustrates the type of matching Which is probably
the Il'ClSt camon. Unmatched master records are acx:epted as input
to the report. Unmatched slave re<...~rds are not input but can be
noted as an exception (refer to path optioo M). '!be input
records before matching, the resulting logical records, the
unmatched records, am the duplicate reoords appear as follows:
Before Matching
ACCr-FlLE REMIT-FILE

101
213
417-1
417-2
580

101-1
101-2
213
320-1
320-2
417-1
417-2
417-3

After MatchiD]

REMIT-FILE Records

ACCl'-FlIE REMIT-FILE

Unmatched Dlp1icate

101
101
213
417-1
417-1
417-1
417-2
580

101-1
101-2
213
417-1
417-2
417-3
null
null

320-1
320-2

101-2
320-2
417-2
417-3

Exarrp1e: ("aJS'lV" )
INPl1l' REMIT-FILE (ACCl'-FILE MATCHIN:;
ACCT-NO WIlli REMIT-ACC!'-NO).

In the follONing example, the Accr-FlLE is treated as the slave.
The records appear as follONs.

4 -

331

Before· Matching

After Matching

ACCT-FILE Records

REMIT-FIIE ACCl'-FIIE

REMIT-FILE ACCT-FILE

Unmatched Dlplicate

101-1
101-2
213
320-1
320-2
417-1
417-2
417-3

E

101
213
417-1
417-2
580

101-1
101-2
213
320-1
320-2
417-1
417-1
417-2
417-3

101
w11
213

580

417-2

null
null

417-1
417-2
null
null

Take this path if the system file is to be CXXlSidered the master
matchiD3 file. The related slave data structure must have been
~cified previously at the same input level •. Duplicate records
in the slave data structure are matched with the first matchiD;
record in the master system file. Duplicate master records,
other than the first, are unmatched.
Exarcple: ("aJS'ZV")
INPl1I' REMIT-FILE, ACCr-FIIE MASTER MATCXINl
ACCT-OO WI1H REMIT-ACCT-NO.

This exanple illustrates a CCJtl'tOn type of matchiD; 'ftbich is used
you want to accept any umatched slave records as input to
the report.. Unmatched master records can be ignored or treated
as an exceptioo (refer to path optioo M). Duplicate master
records also can be noted as exceptions.

\t4len

The input records before matchiD;, the logical records after
matching, the unmatched records, and the duplicate records
appear as follows:

Before Matchi$

After Matching

ACCr-FILE Records

REMIT-FIlE ACCr-FILE

REMIT-FILE Ao:T-FILE

Unmatched D.lplicate

101-1
101-2
213
320-1
320-2
417-1
417-2
417-3

101
213
417-1
417-2
580

101-1
101-2
213
320-1
320-2
417-1
417-2
417-3

101
101
213
null

null
417-1
417-1
417-1

4 - 332

417-2
580

417-2

Example:

( "CUS'IV" )

INPur ACCT-FIIE, REl'1IT-FILE MASTER MAr:ICHIt\JG
REMIT-ACcr-NO WITH ACcr NO.

In this example, the REMIT-FILE is treated as the master.
records appear as follows:
Before Matching
REMIT-FILE

After Matching

The

REMIT-FILE Records

ACcr-FILE REMIT-FILE ACCT-FILE REMITT-FILE Unmatched Duplicate
101
213
417-1
417-2
580

101-1
101-2
213
320-1
320-2
417-1
417-2
417-3

101
213
417-1
417-2
580

101-1
213
417-1
417-1
null

101-2
320-1
320-2
417-2
417-3

iOI-2
320-2
417-2
417-3

F-H You can specify the sequential ordering of the matching key
values
through path F (ascending by default), path G
(ascending), or path H (descending).
If the key values are not in the specified sequential ordering,
the generated program discontinues processing with an exception
condition.
I

Take this path to specify matching keys. The first <data name>
must be the name of a <data name> in the specified system file,
and the second <data name> must be the name of a data item in
the related data structure.
Both <data name>s must be qualified to the full extent shown in
the vocabulary report.

J

You can specify additional matching keys by taking this path.
All keys specified must match in order for the records to be
considered matched. Records in the file must be ordered such
that the first matching key specified is the major ordering key
and subsequent matching keys specified are minor ordering keys.
Example:
INPUr Accr-FILE (TRANS-FILE MATCHING
TRANS-Accr-NQ WITH Accr-NO AND

TRANS-BANK-NOWITH ACcr-i3ANK-NO).
4 - 333

1177185-003

In this example, TRANS-ACCT-NO and TRANS-BANK-NO are data items
in TRANS-FILE.
AOCT-NO and AOCT-BANK-NO are data items in
Accr-FILE.
K

Take this path if no more matching keys are to be specified.

L

Take this path if unmatched records and duplicate records
the system file are to be ignored.

M

Take this path if unmatched records and/or duplicate records in
the specified system file are to be noted as exceptions.
Pertinent information about the records, such as the values of
their actual keys and given matching keys, are noted on the
exceptions listing.

N

Take this path if unmatched records
file are to be noted as exceptions.

in the specified system

o

Take this path if duplicate records
file are to be noted as exceptions.

in the

P

Take this path to specify an additional noting option.
Example:

specified system

( "CUS'IV" )

INPur ACCT-FILE, REMIT-FILE MA'ICHING
REMIT-AOCT-NO WITH AOCT-NO NJrING
UNMATCHED AND IXlPLICATES.
Q

Take this path when all noting options are specified.

4 - 334

in

'!he TABLE statement is used to create a oonversion table \ttbich relates
certain data values to equivalent or corresponding values. Once a table
is defined, an <EN1'RY function> can be used to obtain the correspooding
table-defined values for particular values of a referenced data item.
Exanple:
TABLE 03

I
/
"D" I
liS" I
"l'l"
liT"

"lmf YORK"

"TUlSA"
"JlE'l'R)IT"
"SALT lAKE CI'lY".

table can be referenced in an <EN1'RY functiCXl> -to cbtain fran the
values of particular items liN", "T", "D", and "S", the equivalent
values:
"NEW YORK", "TUlSA",
"DETR>IT",
and "SIU"T IAI(E CI'lY",
respectively.

'!his

coded

'!be syntax for the TABLE statement is as follows:

+<------------------------------------+~

I
I C E

A

->TABLE-> <nunber>----> <ll\lRi:)er>->

I
I

B

I
I

D

+--><name>-->+

+--><string>->+

I
(1)----- - -----

I
IJ
+-->0lHERS

I

>.

I

K

- - > <n\.1llber>->+

I
I

L

I
I

+--><string>->+

4 - 335

I

GI
I

H

- > <1lllIItler>---> (1)

I
IF
+--><string>->+

The paths of this syntax diagram are explained below:

l.!!:h
A

Explanatioo
<nuni)er> can be used to identify the table by taking this
path.
'Ibis <number> would then be specified to reference the
table in an <m.t'RY funct.ioo>. '!he <nunber> can caltain up to 10
digits witha1t a decimal point, or nine digits with a decimal
point.

A

To use the table defined in the previous exanple to convert a
city to a city name, the follcMing <m.t'RY functioo> COlld be
given:

Exanple:
m.t'RY (IN TABII: 03 roR LOC-ooIE)
B

A <name> can be used to identify the table. '!he <name> COlld
then be specified by referencing this table in an <m.t'RY
funct:.icn> • '!be <name> can be up to 10 characters in length.

Exanplea

''S" / "tD~"
"T" / "'ltJI.SA"
"0" / "IEl'R)IT"

"s" / "SALT lAKE CI'lY".

To use this table to convert a city code to the actual name of
the city, the <fNl'RY function> WOJld reference the table as
followa:
!Nl'RY (IN TABIE CI'lY-<DDES POR IDC-<DDE)

C

this path if the values to be converted are runeric. The
<nuni:ler> represents ale possible value for the data item
referenced in an <ENl'RY function>.

Take

Exanple:
TABIE 04

1 / "MALE"

2 / "~".

4 - 336

If SEX references' a numeric data item Which has a value of 1 in
a particular record, reference to table 04 and SEX in the <ENl'RY
functicn> retuxns the value of .~.. for this record.
D

Take this path if the values to be converted are of type
<string> •
'!be <string> represents ale possible value for the
data item referenced in an <ENl'RY functioo>.

Exanple:
TABLE 04

"M" / "MALE"

1If"" I

"F!'K\LE".

If SEX references a string data item w..ch has a value of "M" in
a particular record, reference to SEX in the <ENl'RY function>
returns the value "MM,E" for this record.
E

this path if the data value given in path C or D is to be
axwerted to a numeric value.
'!he <nuniJer> provides ale
possible value far an <ENl'RY function> ~ch references the
table.
Take

Exanple:
TABLE 1

"0" / 0

"1" /

r

"2" / 2
•

If the string item referenced in an <ENl'RY functioo> has a value
"0", the functicn returns the numeric value o.
F

Take this path if the data value in path C or D is to be
axwerted to a string value. '!he <string> provides one possible
value for an <ENl'RY functioo> -nich references the table (refer
to the exanple for path D).

4 - 337

G

By

taking

this path,

an additiona!

table entry is specified.

Any number of entries can be given. The types of values, string
or numeric, that are specified on the left or right side of the
slash must be consistent: that is, once path C, D, E, or F is
taken, that same path must be taken for every subsequent table
entry specified.

H

Take this path when all table entries are specified.

I

If this path is taken and the value of a data item referenced in
an <ENI'RY function> does not have d matching value in the
conversioo table, the function returns a null value.

Exanple:
TABLE Q4

1 / "MALE"
2 / "F&1ALE".
If a data item specified in an <ENI'RY function> referencing
table 04 has a value other than 1 or 2, the function returns a
null value.
(The default null value for string items is
spaces.)
J

If this path is taken and the value of a data item referenced in
<ENIm:' function> does not have a matching value in the
CCXlversion table, the function returns the value corresponding
to the "C7I'HERS II entry.

an

Exanple:
TABLE A

o/

"F"

1 / "T"
C7I'HERS

L "?I••

character "?" is returned if a data item referenced in an
<ENI'RY function> using table A has a value other than 0 or 1.

The

K

Take this path to specify a numeric value f0t; the cmiERS entry.
This path must be taken if path E was taken -previously.

L

Take this path to specify a string value for the cmiERS entry.
This path must be taken if path F was taken previously.

4 - 338

In a WI'1H TEXT specificatioo (within a PRINT statement), Text specifies
fonn text Which is to be placed 00 all foIlllS except overflow
foms.
Standard
fonn text
can be overwritten
(purposely
or
inadvertently) by subsequent Print SpecificatiCXlS.

standard

In a WI'lH PATl'ERN specification (within a PRINT statement), Text defines
a durrmy-fonn image called a fonn pattern, wuch is printed out a
specified nuni:)er of times before actual :foJ:m print.io;l.
'Dle SE:l'
R>R+-PA'rI'ERNS speclficaticm (within a Report-qJtj.on SE'l'statement)
specifies the n\lR't)er of times a fcmn pattern is to be printed.
'Ibis
assists in ali~ the foms 00 the printer.
'!he syntax for ·Text is as follows:
+<--------------------------- ,

I
I

<------------------------~+

GI

+<------.---------------------++

I

I
I

I
I

A

B

D

1
1

EI
I
IF I

H

- - - - - - > < i n t e g e r > - - - - - - - - - - > <striD:J>---->
+->LINE->+

I
cl

I
I
I
I
I

+<----~+

I
I

~+--------------><integer>->+

I
+->PCSITIC6->+

The paths of this syntax diagram are explained belQi:
Path
A

E!Planation
<Integer> is the line n\.llli.Jer (1 to FOR-i-LEN1I'H) en which the
subs8:!uently 9iven text is to appear. '!he text is specified as
one or nore <string>s.
'!he next available print position at
this point is position one of the specified line.

4 -

339

B

Take this path to specify that the <string>
next available print position.

is to start at the

C

Take this path to specify the position em the current line em.
ttbidl the <string> is to be placed. <Integer> cannot be less
than the next available print position. If <integer> is greater
than the next available print position, an appropriate nunber of
blanks are generated to achieve the desired .spacing.

D

<String> sUR?lies all or a porticm of the text for a particular
line.
'!be length of the string cannot. exceed R>1M-WIDl'H,
STR:It«H;IZE, or 5S dlaracters.

E

this path to specify additiooal <string>s ~t add to text
for a particular line. '!be next available print positicm is rDI
defined as the first character positiem past the end of the
<string> •
Therefore a <string> <striB3> specificaticm results
in the 'C«> strings being linked togetller.
'lbe total nunber of
text c:i1aracters given for a particular line cannot exceed
RRHm71'd.

F

Take this path
line.

G

Take this path to specify text for another line.
the line runbera in ascending sequence.

H

Take this path after you have specified all standard text.
Figure 4-S far an exanple of Text specificatia'l.

Take

~

you have specified all text for a particular

4 - 340

Yoo nuat give

See

TITLE STATEMENl'
The TITLE statement specifies page title information for reports
generatai by the REroRI' statement. This title infonnation is includai
in the job sunmary report.
Titles can consist of character strings,
time of report, date of report, and data items.
Example:
TITLE IlSAMPLE RESULTS -- STRATA 111.

The report is titlerl "SAMPLE RESULTS - Sl'RATA
centered on the top of every page of the report.

1" •

The

title

is

The syntax for the TITLE statement is as follows:

+<----------

I
I

-- : <----------

(2)

A
- > T I T L E - - - - - - - - - - / ! 7 - - - - - - - - - - - - - - - - - > (1)

I
I
IB e l
+-->FOR---/l7-> EACH PAGE----------->+

-I

--

II

I D
I
1-rr7-->FIRST PAGE-> I

I
I

-

E

I
I

I
I

IG
+->: ->+

1-/l7->0rHER PAGES->I

I
I

I

F
I
+--->FACH <c-b name>-->+

4 - 341

peN 1177185-002

(2)

<--------+

I
I

<------------.-----H

----> <string>

,---------------.->.

(1) --

I

vi
I
TI
I
I u I w

-------+
I
I

I

1-> / - - - - - - - - - - > I

I
I

J

I
I

K

I
I

I->MMDDYY-~------>I

I
I
1->I>f.M.1MYY-DATE---> I
I
I
I L
I
I-->YYDDD-DATE---I

>1
1

I M

1

I->MCNIH-DD-YYYY-DATE->

I
IN
1->t-f.1DOYYYY-DA'!'E--->
1

10
->DII+f.1YYYY-DATE

>

P

->YYYYDDD-DATE----->
Q
->D~-YYYY-DATE->

R
->TIME-

,--->

s
+-> <data name>

>+

The paths of this syntax diagram are explained below:

Path
A

Explanation
Take this path if the same title is to be printed on each and
every page. This path is identical in functicn to the path C
option.
Once this path is used, subsequent use of paths C, D,
and E is illegal.

peN 1177185-002

4 - 342

B

C

Take this path to:

1.

Specify explicitly that the title is to appear on each
page (as in path A).

2.

Specify a title for the first page of a report.

3.

Specify a title for all other pages but the first.

4.

Specify
value.

a title to appear

for each new control-break

The FACH PAGE option is identical in function to the default
option described in path A above.
Once path C is used,
subsequent use of paths A, D, and E is illegal.
Example:
TITLE FOR EACH PAGE:

II

SAMPLE RESULTS II •

The string "SAMPlE RESULTS" appears centered at the top of every
page in the report.

D

Take this path to specify a title which appears only on the
first page of a report. Once this path is used, subsequent use
of paths A and C is illegal.
Example:
TITLE FOR FIRST PAGE

"PARrS INVENI'ORY REroRI'''.

'!be title "PARTS INVENTORY REPORI''' appears
of the first p:ige of the report only.
E

centered at the top

Take this path to specify a title which appears on all pages of
a report but the first. This option can be used in conjunction
with the FIRST PAGE option described in path D above (refer to
option V). Once path E is used, subsequent use of paths A and C
is illegal.
Exarrple:
TITlE FOR OIHER PAGES "PARrS (CDNTD) II •

The title lipARI'S (COOTD)" appears centered
pages of the report except the first.

4 -

343

at the top of all

peN 1177185-002

F

Take this p:lth to specify that information for a specific
control-break grouping begin on a new page with an appropriate
title.
The <c-b name> Imlst be a <data name> which was
previously declared as a control-break name.
This title is
printed in addition to any other <c-b name>, EACH PAGE, ornER
PAGE, or FIRST PAGE title.
Example: (II INVENI'II )
TITLE FOR EACH DEPARr-NO "DEPARI'MENT SALES II •
Infonnaticn pertaining to a particular DEPARINENT begins on a
new page and is titled "DEP.ARlt-1ENI' SALES II •

G

The colon is optional and is used only for clarity.

H

Take this path to specify a Character string within the title.
The string can be up to 55 characters in length. (More than one
string can be used to generate titles longer than 55 characters.
Refer to path T.)
Example:
TITLE IIACCOUNI'S OVERDRAWN".
A title corrposed of the character string "ACCOUNI'S OVERDRAWN II is
centered on each page.

I

A slash is used to indicate
begins on a new line.

that subsequent

title information

Example:
TITLE "REPORI' (N"L"PASSBCX>KIL"ACCOUNfS".
The follCMing title appears at the top of each page:
REPORr CN

PASSB(X)K
ACCOUNTS
NOTE

A title can be composed by specifying a list
of title elements (refer to path T).

PCN 1177185-002

4 -

344

J-Q

These p:lths are taken to include the date of the report in the
title in various fonnats.
The fonnat is detennined by the
choice of key word. '!he value for the date is obtained fran the
operating system.
The following table gives the fannats oorresponding to the
different key words.
For illustrative purposes, the assmned
date is October 25, 1982.
Key Word

Example

J

t+1DDYY-DATE

K
L

DIM+1YY-DATE
YYDDD-DATE
MONTH-DD-YYYY-DATE
l+IDDYYYY-DATE
DJH.MYYYY-DATE
YYYYDDD-DATE
DD-+DNTH-YYYY-DATE

10/25/82
250C'r82
82299

Path

M

N
0
p
Q

OCIDBER 25, 1982

10/25/1982
250C'r1982
1982299
25 OCIDBER, 1982

Exanple:
TITLE tlREPORI' EOR" DDM1MYY-DATE.
For

the date October 25, 1982 this statement produces the title

"REPORr FOR 250CT82" on each page of the report.

In the original version of this guide, the date fonnat keywords
attenpted to describe the date fonnat. The wordage used did not
match the wordage used in the date functions.
In the present
versicn of the guide, additional wordage has been added. These
keywords describe the exact fonnat of the date. Although not
shc:JNn here, the old fonnat keywords are still valid.
R

Take this p:lth to include the t.i.m; the report is run in the
title fonnat HH:MM:SS (hours, minutes, seconds).
The time is
obtained fran the operating system.
Exanple:
TITLE "ACI'IVITY REPORl'" TIME.
This produces the title tlACrIVITY REPORl' 10: 11: 52" on each page
(assuming the time is 10:11:52 AM).

4 - 345

peN 1177185-002

S

Take this path to specify that the value of a data item be
included in a title. This capability facilitates the inclusion
of accepted data into the title.
In addition, it allCMS
infonnatial fran the first logical record reported on a page to
be included in the titles appearing at the top of the page. No
check is made to ensure that the infonnation reported in a page
title is applicable to all infonnation reported on the page.
Exanple:
ACCEPr USER-NAME STRING (10) •

TITLE "REroRI' eN" USER-NAME.
Assuming that the value accepted for USER-NAME is "JOHN IDE",
the TITLE statement prcxluces the title "REPORI' ON JOHN IDE" on
each page.
Example: ("INVENT")
REPORI' PARr-NO ASCENDING, PARI'-DESC, DEPARTMENI',

QUANrITY, IN\lENl'-OOUAR-VAllJE.

TITLE EOR FACli PAGE:

"LISTIro OF PARI'S FROM NO." PARr-NO.

The title printed on each page identifies the part nUIriber of the
first part listed on the page.
T

Take this path as many times as necessary to specify additional
ca:np:>nents which make up the title. Each canponent is separated
by one blank when the title is printed.
Example:
TITLE "REFORl'''

"ON II

l+.1DDYYYY-DATE

"SALES" / TIME.

For 10: 11 : 52 AM on October 25, 1982, this statement produces on
each page:
REFORr

peN 1177185-002

rn

10/25/82 SALES
10:11:52

4 -

346

U

Take this path after the last title c:x:xrp:>nent is specified.

V

Take this path to specify additional titles by choosing options
specified by paths A and B.
Example:
TITLE FOR EArn PAGE: IlREroRI' OF TRANSACI'IONS II :
FOR FACli ACCl'-NO: IIACC<XJNl' AS OF" MONI'H-DD-YYYY".
This statement produces the titles:
REFORI' OF TRANSACI'IONS
ACOOUNl' AS OF OC'lOBER 25, 1982
on pages where ACCI'-NO changes value. On pages where ACCl'-NO
does not change value, only the follOliing appears on the top of
the page:
REFORI' OF TRANSACl'IONS
Example:
TITLE FOR FIRST PAGE: IlSemple Results II :
FOR OI'HER PAGES: IlResults Continued ll •
This produces the title "Semple Results II on the first page only.
All other pages except the first have the title "Results
Continued ll •
~te that your printer must be capable of printing
10lier case letters in order for this to work correctly.

W

Take this path when all desired titles are specified.

4 - 347

peN 1177185-002

'lOTAL-POPUlATION
The TOTAL-POPUIATION clause is used to establish an estimate of the
nunt>er of logical records which are to be selected and/or sampled
initially for refX)rting. Its purpose is to detennine how much space to
allow for the printing of statistical surrmaries, such as TOTAL and
VARIANCE.
That is, it is used to set default editing attributes for
certain statistical items.
If you do rot specify this option, the
'IDI'AL-POPUIATION is set to the maximum'IDTAL-POPUIATION associated in
RP3VOC with the data structures specified in the INPUT statement.
'IUI'AL-POPUIATION should not be confused with the meaning of the
POPUlATION used in IMS II.
Exanple:
SET TOrAL-POP TO 100.

-------

This

statement specifies that up to 100 logical records are expected to
arrl/or sampled initially.

be selected

The syntax for the TOI'AL-POPUlATION clause is as follows:
->'lOTAL-POPUIATION---------><integer>.

I
1->
1

-+->

peN 1177185-002

TO

I
->1
I

= ->+

4 - 348

'!be VOCABUIARY statement is required to identify the vocab.llary files to
be used for the desired report. 'l1U.s statADent is always ~ed in a
RER>Rl'ER III report speci.ficatial. '!be vocab.llary files JIIlSt be created
by the RP3VOC Program.
In the VOCABtJIARY statement, the <external file nana> is used to specify
the name of the vocabulary.
YQ1 DUSt specify the <external file name>
exactly as it ~rs in the second line of the title far the vocabulary

listing.
'Ibis name is the same as the first
specified in the VOCABtJIARf statement in RPlVOC.

<extemal

Exanple: ( .. INV!Nl'" )
VOCABULARY

"INV!2l1'".

'Dle vocabdary "INV!Nl'N is used for the desired report.

VOCAB NMIE IS "Va»tP".

'!he syntax for the VOCABtJIARf stataIant is

as follcwB:

><external file name>.

->VOCABtJLARy.

I
I
+->NMtB->+ 1-> IS -> I
I
I
+-> - ->+

4 -

349

file

name>

EXH4PLES OF REPORt'S

This

sect.i.cn

presents
exanp1es
Which denDnstrate
the use
a number of cq:plicatioos. '!he report specificatioos
use the vocabularies given in Sectioo 2. The kiOOs
report laDJuage statements ocntained in the exanp1es are explained
detail in secti.cn 4.

REPOR1'ER III in
these exanp1es

of

in
of

in

EXAMPLE 1

A verificatioo of inventory extensions ani a total of any exceptions are
required.
'Die fOll.otliBJ report specificatioo is written usir¥3 the
vccabJ] ary 1tINV!NI"'.
VOClUIJIARf IS "INVEtfi"' •
.INPl1l' pAlm§'.
~ IS (J.JANl'l'lY

PIC "Z(7)9.99".

*

UNIT-<DST WI'IH

SE[ECT INVENl'-OOLIAR-VAUlE lCl' WJAL ~.
REPORl' PAR1'-R), PARl'-DESC, DEPARDBfl', (J.JANl'l'lY,
tBlT-<DST, INVENl'-IXlLtAR-VAUJE, ~.
StMotARIZE FOC:1l'ItG INVm1'-OOLtAR-VAUlE, ~.
TITLE .R>R FIRST P1tGE "INVENrORY RlD)~ IN ERRC>R".

'!be

report obtained

fran this report specificatioo is shown in Figure

5-1.

5 - 1

PAGE 1

INVDlltm R!XDRDS IN

DUl)R

lEPARDem' aJANTI'lY

PARr PARr
II) !ESC

WIT

cmr

INVENl'
IXlLtAR

E){"l!M)ED

CDST

VAUlE

S4851 P!&ER SKIRr
59160 ora. PANEL NXDIlG
S0311 L. PARK. LIGHl' UH)

0310
0400

0310

04000 1.15 4050.00 4600.00
02013 0.80 1813.13 1610.40
04000 1.15 200.00 234.30

•

•
6063.83

Figure 5-1.

Report for Exanp1e 1

5 - 2

6444. 70 .

EXAMPLE 2
Using a client1s file of sales for the year, an analysis of inventory is
requira:i to CXIlpUte inventory turnover and identify parts an hand that
have had no sales for the year. 'Ihe following rep::>rt specification is
wri tten using the vocabulary "INVEt~II.
VOCABULARY IS "INVENI'''.
INPl1I' PARr-INVENl'-SALES-INFO.
TITLE FOR FIRST PAGE "SI..ON t-DVING INVEN'roRY".
ANNUAL-'lUROOVER IS OOAflrIT'l-SOID/OONnIT'l
NUM8ER(S,2) •
SELEX..~ ANNUAIr-TURNOVER LESS 'lliAN 4.00.
REPORT DEPAR1lvfENI' AS "DEPT NOli, PARr-NO, QUANTITY,
INVEllI'-OOLI.AR-VAIlJE, QUAN1'ITY-SOLD
AS· lIy. T. D. SALES", M:NlH-SOID
YEAR-SOLD, ANNllAL-'lURNOVER,
1100 Y.T.D. SALES" AS
1I~"5" WHERE QUANI'IT'l-SOID = O.

PARr-INValI'-SALES-INR>
is a pennanent
macro
in tile
referenced
vocabulary.
The macro text specifies access to inventory recocds and,
for each inventory record, access to a related sales record. The report
00tained fra~l this report specification is shown in li~gure 5-2.

PAGE 1

SLOW MOVIII1G INVENTORY
DEPT
1110
0021
0031
0040
0021
0132
0230

PART QUAHTITY
110
412131
428000
531002
580058
670800
680000

09000
11300
13500
14800
4400
16200

INVEN'l' Y. T. D. MONTH YEAR
AmJUAL
SALES SOLD SOLD TURNOVER
VALUE

COMMENTS

DOLLAR
1188.90
3813.75
4884.30
5998.44
2134.44
14839.00

Figure 5-2.

27270
0
15660
0
0
57996

4

82

2

82

7

82

3.03
0.00
1.16
0.00
0.00
3.58

Report for Exanple 2
5 -

3

1110 Y.T.D. SALES
110 Y.T.D. SALES
110 Y.T.D. SALES

Inventory items are sartpled statistically for subsequent verification of
unit costs.
Unit costs for the sanpled. items are ccnpared with
awropriate docunents (such as plrchase invoices) to detennine the
proper handliB3 of rebates, discounts, duty, freight, and insurance.
'!be oorrected unit cx>st values are then input to obtcdn a statistical
evaluatioo of the reoorded anount.
The followilXJ report specification is written
semple. The vocabulary "IN\1J!Nr" is used.

to 00tain the desired

VOCABUIARY IS II INVENr" •
SAVE EXTRACl'-vo:::ABUI.ARY AS "SAMPLE" AND "SAMP2 n •
INPlTl' PARIMF.
SAMPLE EVERY 100.
EXTRACl' WI'lH VOCABULARY PARI'~, DEP~,
BIN-lI), IN.IT-cDST,
ACIUAL-UNIT-<:l))~ IS UNIT-cDST NUM( 3,2) 'ro
FILE aJNFIR-1; HARIMARE IS DISK.

A disk file is created which represents the sanpled inventory items, aOO
a vooabulary is autanatically created for this file. The lis~ of the
vocabulary is 9iven in Figure 5-3.

5 - 4

RP3 N.NN

lD l+M YY
PAGE 1

VOCABULARY
"SAMPLE"

SYSTEM FILES.
FILE

~IRM,

'1Ul'AL-IDPUIATIOO IS DEFAULTED

LEVEL

1

2
2
2
2
2

NAME WI'lH
WALIFIERS

rro

SUBSCRIPrS

9999.

T'iPE

LENmi

EDITIm
PIC'lURE

QEKT-RECDRD
PARI'-ID

DEPARIMENI'

BIN-OO
UNIT..:.cnsT
1ClUAL-UNIT-<DST

Figure 5-3.

GROUP
ITEM STRING
ITEM NUMERIC
ITEN NUMERIC
ITEM NUMERIC
ITEM NUMERIC

6

X(6)

4 9(4)
3

6
6

9(3)
Z(2}9.99
Z(2)9.9(2)

Vocabulary for CONFIRM File

After the examinatioo of relevant records, the disk' file CXEFIRtt is
updated ~re necessary to reflect the ACTUAL-UNIT-<DST as detetmined
fran the audit examination.
The follCMiD3 report specificatial is
written to obtain an analysis of the findings.
VOCABtJIARY IS "SAMPLE".
INPl1I' OEFIRM.
REroRr PARI'-OO, lEPARI'MENI', Bn~-NO,
UNIT--asT, AClUAL-UNIT~~,
DISCREPANCY IS UNIT-<DST - ACIUAL-UNIT~~
WI'IH PICIURE "-Z(2)9.99".
SlH-lARlZE EOOrING ll'lIT-cDS'r, ACIUAL-UNIT-<DST,
DISCREPANCY INCllJDI~ AVERAGE (DISCREPANCY) ,
SID-DEV (ACruAL-UNIT-cDST) •
TITLE "ANALYSIS OF UNIT-CDb~ VERIFlCATICN".

The

report obtained

from this report specification

5-4.

5 - 5

is shown in Figure

PAGE 1

ARALYSIS
PARr
!D

lEPARDell'

59160
60300
61200
63777

c.-

tBIT-alS'l' VERIFICATICB

SIN

WIT

ACTUAL

!D

a:sr

0400
0420
0400

113
201
512

0118

002

0.80
1.12
2.57
5.12

0.80
1.20
2.57
5.06

715.60

730.~

DI~ANC-Y

UNIT
CXBl'

-

0.00
0.08
0.00
0.06

•
•

IUK\RIBS !tit FD1\L

AvaAI3B (DISCRBPMa') I - 0.03
IIl'D-IaV (ACl\N. tmT CD91') I 0.31

Figure 5-4.

R8part for Exanp1e 3

5 - 6

- 14.48

balances in an accounts receivable file are to be listed, footed,
crossfooted.
Any crossfoot exceptions are to be noted.
'!be
following report specification is written using the vocabulary "CLIml'''.

Aged
anj

VOCABUIARY IS ua..IENl'''.
INPln' ACCTS-RECV.

EXT-SAL IS aJRRENl'LY-IlJE

+
+

'IHIRI'Y-~-IlJE
SIXTY-~-DUE

+

NINEl'Y-D.l\YS-DUE.

REPlACE BAIANCES BY ClJRREllrLY-OOE, 'lHIRl'Y-n\YS-WE,
SDClY-DAYS-ruE, NINEIY-mYS-IlJE, BAIANCE-IXE,
EXT-SAL #.

REPORt' BRANCH, QJST-N), BAIANCES,
u
It EXCEPI'IW
WHERE BAIANCE-IXJE lOl' WJAL
'ro EXT-lW".
StHWUZE ro::1I'Im WANCES.
The

report c:btained

fran this report specificatial

is shewn in Figure

5-5.

aJtUCII

CD..,
80

0110 111231
0110 128777
0213 235531
1300 100511
1300 222.11

ClJUDlfLY
DUB

•••
••

. . . . . .1 . . PO. rlllAL.

~AL

21.00
118.20
23.77
11.60
60.00

• 11380.73

••
••
•
•

...1 11ft
Dan

. 81ftY
DaD

DUB

DUB

81.00
11.50
2.00
15.70
110.GO

"20.00

Figure 5-5.

••
•••
•

3.GO
0.00

.1IIIIft

f

11.GO
121.70
5.GO

f

6.30

..0.50,

120.51

to."
20.GO

30.00

MLMCII
DUB

laD
DUll

•••

0.00

•••
••

116.GO
128.70
71 ••3
51.30
206.30

Report for Exanple 4

5 - 7

.......
116.00000
12•• 70000 IXC~Ja.
71 ••3000
.7.30000 acarrlw
206.30000

EXAMPLE S

Negati ve oonfinnations are required on selected accounts a.s follows:
1.

Confirmations on all acoounts over $10,000 and/or over 90 days
old.

2.

Cbnfinnations 00 25 percent of all accounts between $2,000 and
$10,000 Which are less than 90 days old.

3.

Cbnfinnations on 5 percent of all other accounts.

Figure 5-6 s~ a Burroughs Mailer Set for negative confinnaticn
utilized by the ·CPA firm of Adam, Doe, Jones, Smith & Co. This form is
to be used for this application.
A disk file ·called "MACROS" (loaded
fran tape) caltains CCIl1TOIl macros frequently used by the auditors of
Adam, Doe, Jones , Smith, & Co. The following macro with cannents 00 its
use is included in the file "MACROS".
REPIACE ~ (PI, P2, P3, P4, PS, P6, P7, PS, P9, P10) BY
(FOIt4-wIDl'H = 70, EUR+-LEN1I'H = 33, FORM-TYPE = SPECIAL):
l~, [Pl] IN 30 AT 5 40, [P2] IN 30 AT 6 40, [P3] IN 30 AT 7 40,
[P4] IN 10 AT 21 50, [DM'E] IN 8 AT 21, 67,
CPS] AT 23, 11, II - " , [P6], [P7] IN 30 AT 25 11,
[PS] IN 30 AT 26, 11, [P9] IN 30 AX 27 11,
[P10] IN 30 AT 28 llt.

%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%

,

%

NEXH:X:NF MAY BE USED IN A PRlNI' STATEMFNI' '10 SPECIFY THE
PRINl'IOO OF A STANJ::WID A, D, J , S&<D. NmATIVE CDNFIR-1ATICN
MAILER SEl'. SPECIFlCATlOO MUST BE AS :roLlDWS:
PRINT ~ «PI>, <P2>, <P3>, <P4>, <PS>, <P6>, <P7> ,
<P8>, <P9>, <PIO».
<PI>, <P2> ••• <PlO> ARE PARAMETERS SUPPLIED AS FOLI.£:MS:
<Pl>
<P2>
<P3>
<P4>
<P5>
<P6>
<P7>
<P8>

- A <S1'RING> WHICH REPRESENTS CLIENl" S NAME
- A <STRING> WHIQi REP~ENTS CLIENl"S 1ST ADDRESS LINE
- A <S1'RING> WHICH REPRFSENl'S CLIENT' S 2ND ADDRESS LINE

<P9>

- A <DATA-NAME> WHICH RE:FERmCES THE cusroMER 2ND
ADDRESS LINE

- A

<~TA-NAME>

WHIQi REFERENCES THE ACCDUNr NUMBER

<STRI~>

WHICH DESCRIBES '!HE
- A <DM'A-NAME> WHIOI REFERENCES
- A <~TA-NAME> WHICH RE:FERmCES
- A <DM'A-NAME> WHIOi REFERENCES
- A

AtUJNT 'It> BE CDNFIRMED
THE AM:XJNl'
THE CUSIlJMER NAME
THE CUS'Rl£R 1ST

ADDRESS LINE

5 - 8

,

<PI0> - A <~ NAME> WHICH REFERENCES 'lHE Ct.JS'laER 3RD

,

The

ADDRESS LINE

fo1~

oonfinnations.

report specification
is written
'lhe vocabllary "CLIEN1''' is used.

to

produce

000100 VOCABUIARY IS "CLIEN1'".

000200 mtBINE "MACR)S".
000300 INPl11' Aa:r-aBr-INPO.

000400 SAMPLE AIL RECX>RJ:S FIOt STRATA STRATA-1
000500

000600
000700
000800

WHERE EPJANCE-IX.JE Gl'R 10000 OR
NINE'lY-Dt\YS-DUE Gl'R 0,

E.VERY 4 REXDROO FlO! STRATA STRATA-2
WHERE STRATA-1 = FAISE AND BAIAlCE-DUE

000900
arR 2000,
001000
E.VERY 20 RE(X)Rm FRJ.1 STRATA
001100
WHERE lCl' STRATA-1 OR STRATA-2.
001200 PRIm' ~("ABC ~VINGS & I..£'lAN ASSOC.",
001300
"107 MAIN",
001400
"IRVINE, CA. 92714",
001500
aJST-OO,
001600
"aJRRENr EPJANCE 1lJE", EPJANCE-IDE,
001700
a.BlO£R-NAME, srREE'I'-ADIEESS, CITY-sTATE,
001800
ZIP-OODE).

sequence nURber en the card imnediate1y fo11owiBJ
the CDeINE statement is rEqUired for proper merge.

A

5 - 9

the

f
U'I

.

'"
I

rt
~.

Ci
\II

....
0

AUDnoRSCONRD~ALCONRRMADON

I:;
j
•5

~ •..•
I8 .•...
•
>

sa..

Our auditors, Ad. ., Doe, Joae.. SmIth A Co•• 718 North .....
t, LoI ADlBIes, California 90071. are conductinl the replar examination of our acco.... 1bey .... lelected Jour account at random for confirmation of
the infonnation printed below. .... JOU l1li)' haw oIher accounts with our Aaodation. please confirm this
particular account onI,. 11Ie infonnalioa .....ted II • of the date ladicated;
transactions arter this date
Ihould not be considered ror this coafinnatioft. If the Iaf.....1ioa II Dol in apeement with Jour records, plelle
explain the difl'erenCCl on abe rnene side IIId return this aodce directl, to our auditors. not to the AsIodatiOft.

Ill,

IF OORREef. NO REPLY IS NECESSARY

-'

i

!.....
•
11

~

~

a

•

It

DO NOT MAIL TO THE ASSOCIADON

~INTNUM8ER

DATE

EXAMPlE 6

A report en accounts receivable in excess of ~10. 000 is required.
Ranittances received for these accounts during the previcua two .Dalths.
January axn February, are to be sunmarized for verificatial with current
balances.
'ftle follCJWi.J¥3 report specificatJ.cn 1& Written using the
vocab.llary "aBN".
V~IS

ttam'V".
INPl11' ~-FILE(REMIT-lrIlE ~
R!MI~ WI'lU ~).
SEL!X:T BMANCE ) 10000.
REPORl' BY ~ n«:WI)I&; I N:.XrJ.Br
BM.ANCE, OID-BM.ANCE
, INfl)
LISTIOO
aJST-lWm WHERE ClIAlGES AS
, REMIT"a.sJDt£R NAME". YR-H)-lB:D,
, TMIZ
n&.Y-REXD, NET-PA»Nl', QI(-R).
9HWUZE FOR FAa! ~ iWJ.'It«J NBT-PA1MD1T.
SUPPRESS S)Rl'.

'IN!O

The

report cbtained

fran this J:eport specification

5-7.

5 - 11

is abcwn in Figure

ACCr 00:

010

BALANCE:

$

13000.50
14000.00

BALANCE: $
aJS'ItH:R NAME

QU)

YR

my

K)

REXD

m.~PAYMNl'

an< NO

$
$
$

50.00
550.00
399.50

88166001
88166002

$

999.50

REa:>

8201
8201
8201

JOE M. 9U'lH

stH-WUFS FOR Nrr 00:
'!OrAL

N:J:Jr

1'1):

04

18
15

88166006

010

015

BAIAto: $ 10310.tU
OLD BALANCE. $ 11000.00
YR
a.JS'ltH:R lWm

1ll\Y

1-1)

REa>

Nl:.--x' PAYMNl'

CliK NO

$
$

100.00
50.00
20.00
540.00

30115008
30115016
30115018
30115020

$

710.00

RECD
SUSAN

c.

8201
8202
8202
8202

R:>BERl'S

stH-WUFS PUR 'N::C!r .NO:
'1Ol'AL

05
02
10
20

$
$

015

Figure 5-7.

Report for Exanp1e 6

5 - 12

EXAMPLE 7

Receivables are to be aged an:i listed by IlDlth.
The nunber of
outstanding receivables an;} the total dollar value for each nonth are to
be sl'lam. In additicn, a specific count and total of the outstanding
receivables aver $5,000 is required. The follonng report specificatioo
is ~itten usiI'¥3 the vocabulary "SHIPV".
PAS9«>RD IS IS2175".
VOCABUlARY IS .. SHIPV" •
SAVE ~ AS IIAGmEP".
INPl1I' AO:T-TRANS.
TITLE "ACcXXlNTS RErE!V1J3.I.ES"j "BY K:NrH,"

j"REPORI'

-It

~TE.

SELECr TRANSACTICN-'NPE = 1. % REXZIVABLES
REPORT BY' [.ami-oF-BIILIOO LISTIOO
D1\y-oF-BIlLIl~ ASCENDn~,

NUMBER OF BIIL,

ACCXXJNT-tI) OF BILL, AlOJNT...cMED.
SU1+WUZE R>R EACH K:Nrd-oF-BlI..LIOO:
CD.Nl', rorAL{AM:llNT...cMED) ;
:FOR FINAL:
a:xJNl' (WHERE NOJt~...cMED ) 5000),
TC1l'AL (.AtOJNT-<H:D WHERE .AtOJNT...cMED > Sooo)
AS "VAIJJE OF REX:EIV. OVER $5000".

A program is generated and saved as ·'AGEREP".
the report as sl'lam in Figure 5-8.

5 - 13

Then the program produces

ACCDUNTS RB:EIVABLE
BY

PAGE 1

t-mrH,

REPORT -- 04/29/82
KJNrH OF BILLIN3:

01

IY\Y
OF
BILLING

NlItiER
OF

ACD::ABr
00 OF

BIIL

BILL

01
01
02

11001700
20550010
10007755

6700
1666
1667

$211.00
$70.00
$500.20

6523
6700
5000

$17.00
$52J.50
$117.00

SlM-WUES Et>R t-mrH OF

B~:

01

CXlJNl':

93
'lt1l'AL (NDlm' 0tlED):

KBrH OF BIILIN3:

$18420.17

02

mY

NUMBER
OF
BIlL

OF
BIllery:;

01
03
04

87100100
81106000
12301070

ElJKf\RIES :et>R KN.t'H OF BIILIN3:
CXlJNl'a 78

OWED):

'lt1l'AL (NDlm'

02

$12782.14

•
•
ElJKf\RIES :et>R FINAL
CXXJNT (WHERE N«lJNT CM!D ) 5000: 5)
VATJJE OF RJOC:EIV. OVER $5000: $37113.05

Figure

s-a.

Report for Exanp1e 7

5 - 14

A frequency report is desired ~c:h sumarizes aooount bal.ancee in the
file in increments of $25.00 fran a start.iI¥J point of -$400.00 to a
teJ:mi.nating point of $850.00.
The followir¥J report specificatial is
written using the vocab.llary "SHIPVN •
VOC'ABUI.ARY IS ··SHIPV".
INPt11' ~-'rRANS.
GlOJP BY RAI.GES OF HOm'-o;rB) FlOl -400.00 BY

25.00 TO 850.00 AS

lWIZ-OF-~.

REPORl' FOR EAaI RAWE-<lF-HOm'-oB>:
CXUfl', TC7l'AL(At«X.JNT~).

The

report 00tained

fran this report specific:atial

is shawn in Figure

5-9.

RIHE OF NDHl' CWED

'lorAL
(»lUll' CJtlID)

2
2
3

$790.20
$723.80
$985.68

$.00
$25.00

27
151

$50.00

68

$271.50
$1500.61
$2143.70

$800.00
$825.00
$850.00

15
20

- $400.00 - - $375.00
- $375.00 - - $350.00
- $350.00 - - $325.00
•
•

-

$25.00 $.00 $25.00 •
•
•

$775.00 $800.00 $825.00 -

Figure 5-9.

6

Report far Exalrple 8

5 - 15

$11475.00
$16173.86
$4976.21

SECI'ICN 6
SYSTEM

OPERATIONS ASSOCIATED WIlli
REPORT PREPARATlrn

This section contains information on system operations associated with
REPORTER III report preparation on each of the following:
1.
2.
3.

A Series of Systems.
B 1000 Series of Systems.
B 2000/B 3000/B 4000 Series of Systems.

The information is presented separately (under a different
paragraph heading) for each of the three series of systems.

main

A SERIES OPERATlrns

The following subjects are discussed below with respect to use of
REPORTER III System on a computer in the A Series of Systems:

the

1.

The files which must be present on disk before a report can be
prepared.

2.

The sequence of statements needed to execute the entire process
from input of the report specification to output of the printed
report.

3.

The types of procedures you can use to execute the report
preparation process:
a.
b.
c.

Automatic execution procedure.
User-controlled execution procedure.
Execution using Work Flow Language (WFL).

FILES REQJlRED FOR EXECUI'ICN
The REPORTER III System contains the following four files for specifying
and generating a report program.
The files are supplied on the
REPORTER III System tape and must be present on disk when the report
specification is analyzed and a report program is generated.

6 - 1

1.

RP3REP

-- contains the object code for the Report
Language Analysis Program.

2.

RP3GRM

-- contains the report language syntax
descriptions used by RP3REP.

3.

RP3GEN

-- contains the object code for the Report
Program Generator.

In addition to the above files, other files must be present on disk or
disk pack, as follows:
1.

Vocabulary files generated by RP3VOC describing the files to be
accessed by the generated program must be present when RP3REP
is run. The names of the two vocabulary files needed are given
in the output from the RP3VOC execution as follows:
FlIES NEEDED 10 RUN REPORTER III ARE:
<file name 1> AND <file name 2>.

2.

The COBOL74 compiler or OOBOL85 compiler must be present to
compile the generated program, even when IM3 II structures are
being accessed.

3.

If IM3 II files
are to be accessed,
the program
DATABASE/TINTERFACE
as well as the description file
DESCRIPTION/<data-base name> must be on disk or disk pack.

INPur REgJIRED FOR EXECUrION
The process of REPORTER III report specification analysis, program
generation,
program compilation,
program execution, and report
production is automatic. You need input only one simple sequence of
statements to execute the entire process from specifications input to
printed report output.
The input execution deck consists of the
following instructions, in the order presented:
1.
2.
3.
4.
5.

RUN statement
FIIE statement(s)
DATA statement
Report-specification file
?END statement

1177185-003

6 - 2

Descriptions of each of these five instructions follow.
If you are
using card input, the RUN, FIlE, and DATA statements must be preceded by
an invalid punch.
RUN Statement
The RUN statement instructs the Master Control Program (MCP) to schedule
the RP3REP program for execution of specification parsing. The syntax
is as follows:
RUNRP3REP
FILE Statement(s)
The FILE statement is optional.
It allows you to change the
<external file name> and/or hardware device for one or more of the files
used by RP3REP. Any number of FIlE statements can be included.
(Refer
to the A Series Work 'Flow Language (WFL) Reference Manual for the syntax
of the FILE statement.)
Each file used has two names associated with it:
1.

<internal file name>, which is the name
refers to the file.

by which a program

2.

<external file name>, which is the name by which the M:P refers
to the file.

The two names can be the same, but this is not a requirement. To change
file names at execution time,
you need to
"equate"
the
<internal file name> to the new <external file name> through use of a
FILE statement. A hardware device different from the one normally used
to contain the file can be specified together with the new <external
file name>.
To use a FILE statement, you must know the <internal file name) of each
file that is to be equated. Table 6-1 gives the <internal file name)s,
the default values for the <external file name)s, the expected hardware
device, and a description of each file used by the Report Language
Analysis Program (RP3REP).

6 - 3

You can use the following FILE statement to change the name of
RP3CRD input file:
FILE RP3CRD (TITLE

= MYSPECS,

KIND

the

= DISK)

Table 6-1
RP3REP File Equates for A
Series of Systems
Default External
File Name
and Kind

Internal
File Name

Description

RP3GRM

RP3GRM, disk

Grammar definition file.

RP3CRD

RP3CRD, card reader

Input report specification file
from the card reader.

RP3PRT

RP3PRT, printer

File
where
the
report
specification is printed (and
error messages, if any,
are
listed) .

DATA Statement
The DATA statement is placed immediately before the report specification
for card decks or Work Flow Language (WFL) decks (the statement is not
used if input of the report specification is from disk). The two syntax
formats for the statement are as follows:
1.

DATA RP3CRD

2.

EBCDIC RP3CRD

RP3REP does not accept BCL-coded input.

6 - 4

Report-Specification File
The report-specification file consists of all the language statements
which you have constructed in designing your report(s), arranged in the
appropriate order. This file is placed between the DATA statement and
the ?END statement; however, if the report-specification file is a disk
file, the DATA statement and ?END statement are not used. The file must
be structured similarly to the file containing COBOL source code. The
sequence numbers may appear in columns 1 through 6, column 7 is blank,
and the language statements of the report specification appear in
columns 8 through 72.
?END Statement
The ?END statement, which signals the end of your input, must be the
last statement in the input execution deck. The syntax is as follows:
?END
EXECUrICN PROCEIXJRE
Before you can process your report specification, you must do the
following (if not already done): load the REPORTER III System programs
Note that the
and files and the pertinent vocabulary files to disk.
OOBOL74 compiler or OOBOL85 compiler must be accessible for processing.
Note also that if a OMS II data base is to be used, the files
DATABASE/INTERFACE and DESCRIPTICN/<data base name> must be accessible
for processing.
The REPORTER III System has the capability to proceed automatically from
specification input to printed report o~tput. However, the system also
allows you to process various phases of the report preparation manually.
These capabilities, as well as a Work Flow Language (WFL) capability
that can be used in connection with REPORTER IlIon the A Series of
Systems, are discussed below.
Automatic Execution Procedure
The procedure for the default automatic execution of
report preparation process is as follows:

6 - 5

the REPORTER III

1177185-003

1.

If you input an execution deck from the card reader or start a
WFL job deck, the RP3REP execution can result in the creation
of two disk files:
a report-specification file if SAVE
SPECIFICATIONS is specified, and a parameter file if no errors
are encountered. The parameter file will be removed when
RP3GEN finishes unless SAVE PARAMErERS is specified.
If the report-specification
run through the operator
deck, the disk file will
SPECIFICATIONS statement is

file is a disk file and RP3REP is
display terminal (ODT) or a WFL job
not be removed; hence no SAVE
required.

2.

When RP3REP terminates and there are no errors in the
specification, RP3REP automatically starts RP3GEN.

report

3.

When RP3GEN terminates, the COBOL source program is passed
the COBOL74 compiler or COBOL85 compiler automatically.

4.

At the end of compilation, the report program
automatically and the report is produced.

to

is executed

If a Process-option SAVE statement has been used to save the object
program and no name was specified in the statement for the object
program, the program is named "RO<nn>" permanently. If a Process-option
SAVE statement has not been used to save the object program, the program
is named RO<nn> temporarily.
Following is an example of running RP3REP through the ODT; the report
specification is in a disk file called NEW/REPSPC, and it does not
contain any Process-option SUPPRESS statements:
RUN RP3REP; FlIE RP3CRD (TITIE = NEW/REPSPC,
KIND=DISK)
User-Controlled Execution Procedure
By using the Process-option SUPPRESS statement, you can halt the
automatic initiation of the various processes of REPORTER III report
preparation. By using the Process-option SAVE statement, you can name
and preserve the various intermediate files used to pass information
from one process to the next. You then must run separate execute decks
for each process using file equates to specify the names for the
intermediate files.
A program-by-program summary of execution decks and presentation of file
equates for each process of REPORTER III report preparation.
1177185-003

6 - 6

RP3REP Program:
RP3REP is the first process in report preparation. It parses the report
specification and produces a parameter file for RP3GEN. If no name was
assigned to the parameter via the Process-option SAVE statement, the
file name is "RP<nn>", where <nn> is a random number assigned by RP3REP.
This number is called the ID number, and it remains constant through all
processes. The execution deck setup is as follows:
1.
3.
4.

RUN RP3REP
FILE --DATA RP3CRD
Report-specification file

5.

?END

2.

Table 6-1 lists the file equates for files used by RP3REP.
RP3GEN Program:
After RP3REP, RP3GEN is run to generate a source program based on the
parameters produced by RP3REP. It uses the parameter file from RP3REP
and the vocabulary files from RP3VOC to produce a source program.
The
execution deck setup is as follows:
1.
2.

RUN RP3GEN
FILE ---

3.

?END

Table 6-2 lists the file equates for files used by RP3GEN.
The example below shows part of a WFL deck in which the scope of the
user code family is DEVPACK and Disk but the vocabulary file TSTVII
resides on a disk pack called OOMPACK.
EXAMPLE:
RUN RP3GEN;
FILE RP3PAR (TITLE
FILE APDISK (TITLE

=

IXC/INPur/PARAM);
00 CCMPACK) :

= TS'IVII

6 - 7

In this example, the last file-equate card would not be necessary if the
vocabulary file resided on DISK or DEVPACK.
Table 6-2
RP3GEN File Equates for
A Series of Systems

Internal
File Name

Default External
File Name
and Kind

RP3PAR

RP3PAR, disk

Input parameters from
Must be file-equated
file.

RP3PRN

RP3PRN, pr inter

Error messages listing.

APDISK

<vocabulary name>,
disk

Input COBOL library.
Must be
file-equated if vocabulary is on
disk pack or outside the scope of
the user code family.

Description
RP3REP.
to this

COBOL74 Compiler or COBOL85 Compiler:
After RP3GEN, the COBOL74 compiler or OOBOL85 compiler is run to compile
the generated program. If no name was assigned to the generated source
via the Process-option SAVE statement, the file name is "RC<nn>", where
<nn> is the RP3REP ID number. There are two possible situations:
1.

COBOL source is saved, source was compiled, and object program
is saved.

2.

COBOL source is saved and source was compiled,
program is not saved.

1177185-003

6 - 8

but object

The compile deck is set up as follows:
CXM?ILE <name> WITH COBOL74 LIBRARY;
CXM?ILER FILE CARD (TITLE = <source name>,
KIND=DISK) ;

CXM?ILER FILE NEWSCXJRCE (TITLE

= <source name>,

KIND=DISK)

Generated Program Object Code:
The generated program object code is executed to produce the desired
report.
The input for the object program is the data structures to be
reported on. The output consists of one or more report and/or extract
files.
Table 6-3 lists the file equates for the object program; ss
represents the section number, rr represents the report section number,
rmmn represents the system mix number for the report program, and nn
represents the RP3REP ID number.
If the generated report program encounters an exception while creating
the report, one of the following conditions apply:
If the exception is fatal, the exception is reported in the
exception report.
If the exception report was suppressed in
the report specification, a message is displayed on an operator
display terminal and the STATUS task attribute for the report
program is set to minus one (-1), which causes the program to
be discontinued.
Examples of fatal exceptions include OMS II open errors and
errors that occur while a data file is being read.
If the report program encounters exceptions that are not fatal,
the TASKVALUE task attribute for the report program is set to
minus one (-1) before the program terminates normally.
Both of these task attributes can be tested in a WFL deck to determine
the terminating status of the report program. (Refer to "Execution
Using Work Flow Language (WEL)" later in this section.)

6 - 9

1177185-003

Table 6-3
ROnn File Equates for
A Series of Systems

Internal
File Name

Default External
File Name
and Kind

QEXTss

RXnnmrrmnss I disk

Internal utility file. Default
number of AREAS is 1000. Default
AREASIZE is 1000. Value of AREAS
and AREASIZE may be changed by
the data-processing option SET
SORT SIZE statement. Default
number of records per block is
10. Value of number of records
per block may be changed in the
vocabulary by the SET SORT FILE
BLOCKING statement or by the
data-processing option SET SORT
BLOCKING statement.

QPRTrr

RLnnrr, printer

Contains an automatically
formatted, printed report and/or
a run summary report. External
file name may be changed with the
report option SAVE REPORT LISTING
AS statement.

QEXCEPrICNS

REnn, printer

Contains a notation of exception
conditions for all reports.
External file name my be changed
with the process option SAVE
EXCEPrICNS LISTING AS statement.

QPAGrr

QPAGrr, disk

Used for page overflow.

1177185-001

Description

6 - 10

QFRMrr

RFnnrr, printer

Contains a user-formatted report
from PRINT statement. External
file name may be changed with the
report option SAVE FORMS LISTING
AS statement.

QRANss

QRANss, disk

Contains random numbers used for
sampling.

RP3DAT

RP3DAT, reader

File which contains accepted data
that is not from ODr. Kind may
be changed by the process option
ASSIGN ACCEPIED - DATA. External
file name may be changed if
ACCEPrED-DATA is assigned to
disk.

Execution Using Work Flow Language (WFL)
A Work Flow Language (WFL) capability can be used in connection with the
REPORTER III System on the A Series of Systems to facilitate user
control of the REPORTER III System and take maximum advantage of the
Master Control Program (M:P).
The use of WEL is optional (even with
WEL, the default progression RP3REP-RP3GEN-oDBOL compile-execution can
still be controlled internally via Process-option SUPPRESS statements if
you so desire). You should consider the advantages of WEL since the
transfer to it is a simple process.
The most obvious benefit of WEL is that all tasks within a job are run
This means that all listings appear
from the same job stack.
consecutively on the same printer upon completion of the entire job.
Thus, the traditional problem of printer "roulette" is avoided and
system messages, task statistics, and so forth, appear conveniently
together in a single job summary.
Under WFL, you have the freedom to give task attributes, (for example,
PRIORTY or OPTION), either globally or for each step during generation.
You also can control attributes for any or all files via FILE statements
for each step.
Finally, WFL permits the use of the REPORTER III System in computer
installations which require charge codes. Different charge codes and
user codes can be associated with each task, as required.

6 - 11

1177185-003

Aside from the need to prepare and keep a small Work Flow deck, there
are no disadvantages in using WFL. The same Workflow deck is usable for
all REPORTER III runs with no changes except for the <external file
name>s unique to each run.
In order for the REPORTER III System to be controlled externally by your
WFL rather than being initialized internally, the following option
statements must appear in the report-specification file:
SUPPRESS GENERATlOO, CQ\1PlIE.
SAVE PARAMETERS AS <external file name 1>,
COBOL AS <external file name 2>.
Example:
SUPPRESS GENERATlOO, CQ\1PlIE.
SAVE PARAMETERS AS "PARAM"/" 397X" ,
COBOL AS "COB"/"397X".
To avoid having to enter an option statement for each report run under
WFL, you can add the following macro example to each pertinent RP3VOC
vocabulary:
REPIACE ALL OCCURRENCES OF WFLCCl\1IROL(A,B) BY
SUPPRESS GENERATlOO, CCMPlIE.
SAVE PARAMETERS AS A, COBOL AS B #.
You can set up the desired conditions for WFL use with minimal effort by
invoking the macro in the report specification as follows:
WFLCONTROL«external file name 1>,
<external file name 2».
Example:
WFLCCNIROL ("FRIENDS"/"REIATlVES",
"TAX" /" ASSESSMENT" /"REPORT" ) .
In this example, the file FRIENDS/REIATlVES contains the parameter file
produced by RP3REP. The file TAX/ASSESSMENI'/REPORT contains the COBOL
program generated by RP3GEN.

6 - 12

The following suggested WFL deck indicates a Work Flow Language
specification which should be sufficient to handle the majority of
cases. This Work Flow specification involves a simple sequential
control structure, with each task starting if the previous task was
completed successfully; otherwise, an error message is displayed and the
job is terminated. Users with Work Flow Language familiarity are able
to supply the optional statement images if they desire; they can tailor
the WFL deck to their exact needs.
Although physical layout and
indentation are matters of preference, the method shown in the following
examples does enhance readability.
This method also isolates the
<external file name>s, enabling changes with a minimum of effort (since
these are the only elements that change from run to run).
BEGIN JOB <job name>; %GENERALIZED REPORTER III SYSTEM WJRKFI.lM
USER=<user code>/<password>;% EXAMPLE
CLASS=< #>; %OORMALLY CNLY IF MULTIPIE JOB QUEUES ENFORCED AT
%YOUR INSTALLATION
CHARGE=<charge information>; %IF REQUIRED AT YOUR INSTALLATION
TASK MYTASK; %REQUIRED BY 'lliE RP3REP IN THIS EXAMPLE
<global task-attribute cards>; %IF DESIRED - SEE WFL ~AL
~

o

RP3REP [MYTASK]; %"MYTASK" WILL CCN.IROL LCGIC FLOtJ
DATA RP3CRD% INPur SPECIFICATIONS ID RP3REP FOLI.(M
<pertinent password and vocabulary statements>
WFLCONTROL«external file name l>,<external file name 2».
<additional report specifications>
IF MYTASK (VALUE) = 1 THEN %WE CAN CALL RP3GEN

RUN

?
~

o

BEGIN%
RP3GEN;% NEEDN'T ASSOCIATE TASK WITH THIS STAGE
<task attribute cards>;% OPTIONAL
FILE RP3PAR (TITLE=<external file name 1»;
%CHANGES MADE WITH MINIMAL DIFFICULTY TIUS WAY.

RUN

So
~

o

%
%
%

USE "WITH COBOL85" INSTEAD
OF "COBOL74", AS SHCJAJN BErm,
IF COBOL85 IS INVOLVED.
COMPILE <external file name> WITH COBOL74 LIBRARY GO;
<compiler task-attribute cards>i%OPTIONAL
COMPILER FILE CARD (KIND=DISK, TITLE=
<external file name 2»i
OOMPILER FILE NEWSaJRCE (KIND=DISK,
TITLE=<external file name 2>;
END;

?END

JOB.

If "LIBRARY CD" is not specified in the CQ.1PILE statement of the WFL
deck, the default is compile and go (imnediately begin execution), and
the compiled object is not saved.
6 - 13

1177185-003

The following example is an actual working deck based on the model.
Generalities, such as <external file name)s, are given specific values
in this example.
Example:
BEGIN JOB REPORT/SYSTEM/WFL;%SPECIFIC WFL EXAMPIE
USER={QSV123/PASSWJRD;
CHARGE=AR/DEVEIDPMENr/095 ;
PRIORITY=55;
TASK MYTASK;
RUN RP3REP[MYTASK] i
DATA RP3CRD
PASSWJRD IS IRVINE.
VOCABULARY= "TS'IVI I" .
WFLCCl'\1IROL ("PARAMEIERFIIE" , "SOURCEFIIE" ) •
(remainder of report specification goes here)
?

IF MYTASK(VALUE) = 1 THEN
BEGIN
RUN RP3GENi
FIIE RP3PAR (TITLE= PARAMErERFIIE);
CCM?IIE FILEAUDIT;NERIFY COBOL74 LIBRARY 00;
CCM?ILFR FIIE CARD (KIND=DISK, TITLE=SOURCEFIIE);
END;

?END

JOB.

A WFL deck which might be used if the report specification is on disk is
shown below; first the WFL deck is shown, and then the contents of the
specification DOE/INPUT/REPSPC are shown.
WFL deck:

BEGIN JOB DOE/TRY/W.FLCOOI'ROLi
USER= REPORTER
CLASS = 5;
TASK MYTASKi
RUN RP3REP [MYTASK];
FILE RP3CRD(TITLE=DOE/INPUT/REPSPC,KIND=DISK);
IF MYTASK (VALUE) = 1

1177185-003

THEN

6 - 14

BEGIN
RUN RP3GENi
FILE RP3PAR (TITLE=OOE/INPur/PARAM) i
CCMJIIE OOE/INPur/OBJECr WITH COBOL74 LIBRARY 00;
CCMJIIER FILE CARD (KIND=DISK, TITLE =
OOE/INPur/SCURCE) ;
CCMJIIER FILE NEWSOORCE (KIND=DISK, TITLE =
OOE/INPur/SCURCE) ;
END;

?END JOB.
Specification file DOE/INPur/REPSPC:
000100
000200
000300
000350
000400
000500
000510
000520
000600
000700

VC:X:AB "DOE" I" INPur" /"Vl" •
WFLCCNIROL (
"OOE" /" INPur" I"PARAM"
"DOE"/"INPur"/"SOORCE") •
SAVE OBJECT AS "OOE"/"INPur"/"OBJECI"'.
,

INPur ACCESS.
REroRT S'IUDENr-NAME, STUDENT-ADDRESS, YFAR-IN-SCHOOL.

6 - 15

B 1000 OPERATIONS
The following subjects are discussed below with respect to use of
REPORTER III System on a computer in the B 1000 Series of Systems.

the

1.

The files which must be present on disk before a report can be
prepared.

2.

The sequence of statements needed to execute the entire process
from input of the report specification to output of the printed
report.

3.

The types of procedures you can use to execute the report
preparation process:
a.
b.

Automatic execution procedure.
User-controlled execution procedure.

FlIES REX}JlRED FOR EXECUrICN

The REPORTER III System contains the following three files
for
specifying and generating a report program. The files are supplied on
the REPORTER III System tape and must be present on disk when the report
specification is analyzed and a report program is generated.
1.

RP3REP

-- contains the object code for
Analysis Program.

2.

RP3GRM

-- contains the report
used by RP3REP.

3.

RP3GEN

-- contains the object code for
Generator.

the Report Language

language syntax descriptions
the Report Program

In addition to the above files, other files must be present on disk or
disk pack, as follows:
1.

Vocabulary files generated by RP3VQC describing the files to be
accessed by the generated program must be present when RP3REP
is run. The names of the two vocabulary files needed are given
in the output from the RP3VOC execution as follows:
FlIES NEEDED TO RUN REPORTER III ARE:

<file name 1> AND <file name 2>.

1177185-003

6 - 16

2.

'!he CDOOL74 cnnpiler nust be present to CXIIpile the generated
program.

3.

If IMS II files are to be accessed, the dictionary ani library
files created by Ila\SDL must be on disk or disk pack:

a.
b.

<data-base name> /DICI'ICNARY
'<data-base name>/<disjoint-data-set name>

INPl1I' REXlUlRED FOR EXroJl'IW

The process of REroRl'ER III report specificatioo analysis, program
generation,
program OCIlpilation,
program
executioo,
aIXi report
production ~ autanatic.
You need input only one sinple sequence of
statements to execute the entire process fran specificaticn input to
printed report output.
'!he input executioo deck c:xmsists of the
followiD3 instructions, in the order presented:
1.

?EKEDJrE statement

2.
3•

?FILE statarent(s)
?J.Y\TA statement

4.

Report-specificatioo file
?m> statemant

5.

Descriptions of each of these five instructions follow.
?EKEDJrE Statenent

'!be ?EKEDJrE statement instructs the Master Control Program (lCP) to
schedule the RP3REP program for execution of specification parsing. The
syntax is as follows;
?EKECUTE RP3REP
?FILE Statement(s)

'nle 1FlLE statement is optional. It allCMS you to change the <external
file ID> and/or hardware device for one or nore of the files used by
RP3REP. Any nurrt>er of 1FILE statements can be included.

6 - 17

The syntax is as follows:

?FILE <intemal file name> NAME <external file 1D>
<output device>;
Each file used has

t\«)

names associated with it:

1.

<internal file name>, which
refers to the file.

2.

<extemal file 10>, which is the name by Wich the t«:P refers
to the file.

is the

name by which

a program

'Dle b«) names can be the same, but this is not a requirement. To change
file names at executicn tine, it is necesscu:y to "equate" the <internal
file name> with the new. <external file ID> through use of a ?FILE
statement.
A hardware device different fran the ooe oonnally enployed
for a file can be specified together with the I1aI7 <external file 10>.

To use a ?FILE statement, yoo nust know the <internal file name> of each
file that is to be equated. Table 6-4 9ives the
<internal file name>s, the default values for the <external file ID>s,
and a descripticn of each file used by the Report Lan3uage Analysis
Program, RP3REP.
Table 6-4

RP3REP File Equates for
B l()()(j Series of Systems
Default External
File Name
am J<.i.OO

--

RP~,

RP3PRl'

disk

DescriptiCXl

Granmar definitioo file.

RP3CRD, card reader

Input

RP3PRl', printer

File

report-specification
file fran the card reader.
~ere

specificatiCXl

6 - 18

the

report.

is printed (and

error messages,
listed) •

if any,

are

Exanple:
'!he name of the RP3GRM file is to be changed
statement for the change is as follows:

to IMSOOI.

1be?FILE

?FILE RP3GRM NAME IMSOO1;
If a disk file is to be equated to RP3aID, the word ~T or DEF nust
be included after the <extemal file name> to match the block and record

sizes of the disk file to RP3CRD.
Exanple:
'!he name of the input file is to be changed to PAYROIL/REPORl'/91PlDYEES,
and the input medium is to be dlanged to disk cartridge.
'!he?FII.E

statement for the change is as follows:
?FILE RP3CRD.NAME PAYHlLL/REPORl'/~
DISK.CARrRIOOE DEF;

It is possible to change the hardware medium for ale or nore files. For
exanple, if you want the output file RP3PRl' to be sent to printer backup
disk without dlangiBJ the name of the file, the ?FILE statement for the
. change in output medium is as follows:

?FILE RP3PRl' NAME RP3PRT BACKUP •DISK 00 HAlUtlARE;

For further infonnation, refer to the B 1000 Systems
Software Operations Guide.

6 - 19

?DM'A Statement

The
?DM'A statement
is placed
imnediately
before
the
rep::>rt
specification for card decks or pseudo card decks (the statement is not
used if input of the report specification is fran disk).
The stateJTeIlt names the report specification for the MCP and tells the
CXI1'q:>Uter the character set to be usoo on the input execution' deck. The
syntax is as follows:
?DATA RP3CRD

If cards are to be used, only
EBCDIC can be input to RP3REP.

cards

punched

in

Report-Specification File
The report-specification file consists of all the language statements
which you have constructed in designi03 your rep::>rt (s), arranged in the
appropriate order. This file is placed between the ?Df\TA statement and
the ?mD stataoont.
The file must be structured similarly to the file
containing (l)BOL source axle. The sequence nlllli:>ers appear in columns I
through 6, coltnml 7 is blank, and the language stat~nts of t£"1e report
specification appear in columns 0 through 72.
?End Statement

The ?END statement, 'Nhi.dl signals the end of your input, llUst be the
last statement in the input execution deck. The syntax is as follONS:

?FND

EXECUrlON PRCX:EIX1RE

Before you can process your report specification, you llUlSt do the
follCMing (if not already done): load the REroRrER III Systems programs
and files and the pertinent vocabulary files on disk or diskpack. Note
that the COBOL74 compiler must be accessible for processing. Note also

6 -

20

if a J:I.JS II data base is to be used, the ms II dictionary
library files nust be accessible for processiB3.

that

arxl

'!be REPORl'ER III System has the capability to proceed autanatically fran
specificatioo input to printed report output. ~ver, the system also
allows you to process various phases of the report preparation manually.
'!bese ~i1ities are discussed below.
Autanatic Execution Procedure
'!be procedure for the de fau 1 t autanatic execution of the REroRTER III
report preparation process is as follONS:
1.

input the execution deck. (fran the card
tenninal, Whichever applies) to begin executial
The following message is displayed:

You'

RP3REP
2.

= <mix

#>

reader or
of RP3REP.

J:3QJ

tenninates ani there are no errors in the report
specification,
RP3REP autanatically
starts RP3GEN.
The
following message is displayed:

When RP3REP

=

RP3GF.N
<mix # > BQJ.
RP3REP = <mix #> EXlJ.

3.

\ihen
RP3GEN
autanatically.

tenninates,
CDOOL catpilation
is
The following message is displayed:

Q)BOL74: <Q)OOL-program>
RP3GEN
<mix # > EnJ.

=

4.

= <mix

started

#> BQJ.

At the end of canpilation, the report program is executed
autanatically. The following message is displayed:
<CDOOL-program> = <mix #> BQJ.
CDOOL74: <CDBOL-program> = <mix #> IDJ.

5.

When the report is proouced, the report program tenninates and
the following message is displayed:
<Q)OOL-program>

= <mix

#> EU.J.

If a Process-option SAVE stateroont has been used to save the object
program and no name was specified in the statenent for the objeL't
program, the program is named uRO<rm> U pennanently. If a Process-option

6 - 21

SAVE statenent has not been used to save the object. program, the program
is named RO<nn> temporarily.
exanple below shows RP3REP being executed through the operator
display te:oni.nal (0111'). The report specificaticn is contained in a disk
file
called NEW/REPSPC.
'!be specification does not oontain any
Process-qn:ion SUPPRESS statements.

'!he

EX RP3REP FI RP3CRD

NAME NEW/REPSPC DISK DEF
User-controlled Executicn Procedure
By using the Process-qn:ioo SUPPRESS statement, you can hal t the
autanatic initiaticn of the various processes of'REroRTER III report
preparation.
By usiBJ the .Process-qn:ioo SAVE statement, yoo can narre
and preserve the various intermediate files used to pass infonnation
fran ale process to the next. You then must run separate execute decks
for eaCh process usiB3 file equates to speCify the names of the
intermediate files.

A program-by-program sumnary of executioo deCks and presentation of file
equates for each process of RElURl'ER III report preparation follcw.
RP3REP Program:
RP3REP is the first process in report preparation. It parses the report
specificaticn am plXXiuces a· parameter file for RP3G!N. If no name was
assigned to the parameter via the Process-cption SAVE statement, the
file name is "RP<IUl> ", ~ere <nn> is a randan rIJI'li:)er assigned by RP3REP.
'Ibis ll\.1Ilber is called the 10 nunber, and it remains CXlnStant through all
processes. '!be execution deck setup is as follows:
1.
2.

?EX RP3REP
?FILE - ?IWrA RP3CRD

3.
4.

~rt-specificaticn

5.

?END

file

Table 6-4 lists the file equates for files used by RP3REP.

6 - 22

RP3GEN Program:
After RP3REP, RP3GEN is run to generate a source program based on the
pa.rameters produced by RP3REP. It uses the parameter file from RP3REP
and the vocabulary files from RP3VOC to produce a source program. The
execution deck setup is as follows:
1.
2.

?EX RP3GEN
?FILE ---

Table 6-5 lists the file equates for files used by RP3GEN.
Table 6-5
RP3GEN File Equates for
B 1000 Series of Systems

Internal
File Name

Default External
File Name
and Kind

RP3PAR

RP3PAR, disk

Input parameters from RP3REP
must be file-equated to this
file.

RP3PRN

RP3PRN, printer

Error messages listing.

Description

COBOL74 Compiler:
After RP3GEN, the COBOL74 compiler is run to compile the generated
program.
If no name was assigned to the generated source via the
Process-option SAVE statement, the file name is "RC<nn> II , where <nn> is
the RP3REP ID nUIriber. There are two possible situations:
1.

COBOL source is saved, source was compiled, and object program
is saved.

2.

COBOL source is saved
program is not saved.

and source

6 -

23

was compiled,

but object

In situations 1 and 2, the compiler has resequenced the source and
removed the control card. If the source program is not compiled, or if
it is compiled without NEWSOURCE being file-equated to the source, the
source file's sequence numbers will be somewhat random or nonexistent
and the source file will contain a compiler control card as the first
card. (Refer to the COBOL ANSI-74 manual for information on rurming the
compiler.) The compile deck would be set up as follows:
co <name> WI COBOL74 LI FI CARD NAME
<source name> DISK DEF:
FI NEWSOURCE NAME <source name>
Generated Program Object Code:
The generated program object code is executed to produce the desired
report.
The input for the object program is the data structures to be
reported on. The output consists of one or more report and/or extract
files.
Table 6-6 lists the file equates for the object program: ss
represents the section number, rr represents the report section number,
rom represents the seconds portion of the system time when the report
program was executed, and rm represents the RP3REP ID number.
Table 6-6
ROnn File Equates for
B 1000 Series of Systems

Internal
File Name
QIDcr'ss

Default External
File Name
and Kind
RXnrmnnss, disk

Description
Internal utility file.
Default number of AREAS is
100. Default AREALENGrH is
compile time default. Value
of AREAS and AREALENGrH may be
changed b¥ the data-processing
option SEr 8ORI' SIZE
statement. However, the
nurriber of records given in the
SET SORT SIZE statement must
be a multiple of number of
records per block. Default
number of records per block is
10.

6 - 24

Value of nUII'ber of records per
block may be changed in the
vocabulary by the SET SORI'
FILE BI1X:KIW statement or by
the data-processing optioo SEl'
SORI' BUXl<lNG statement.
QPRrrr

Contains an autanatically

RLnnrr, printer

formatted, printed report
and/or a run sunrnary report.
External file na.tte may be
changed with the report option
SAVE REroRI' LISTING AS

statement.
R&ln, printer

Contains notations of
exception conditions for all
reports. External file nane
may be changed with the
process option 5r\VE EXCEPTI~
LIsrING AS stat~t.

QPIGrr, disk

Used for page overflON.

RFnnrr, printer

Contains a user-Dormatted
report fran PRINT statement.
External file nam:! may be
changed with the report optial
SAVE FOIMS LISTING AS

statement.
Contains randan numbers used
for sampling.

QRANss, disk

RP3~T,

File which contains accepted
data if not fran the ODI'.
Kind may be changed by the
process option ASSIGN
ACCEPrED-DA.TA. External file
name may be changed if
ACCEPI'ED-DA.TA is assigned to
disk.

reader

6 -

25

B 2oo0/B 3OO0/B 4000 OPERATIONS
The followil'¥1 subjects are discussed below with respect to use of the
REPORl'ER III System at a ccaputer in the B 2ooo/B 3000/B 4000 Series of

Systens.
1.

'!he files which nust be present on disk before

d

report can be

prepare:i.

2.

'lhe sequence of statenents needed to execute the entire
process fran input of the report specification to output of
the printed report.

3.

'!he types of procedures
preparation process:

a.
b.

you can

use to execute

the report

Autanatic execution procedure.
User-oontrolled execution procedure.

The REPORI'ER III System cootains the following four files for specifyir¥3
am genera~ a report program. 'lhese files are sUI=Plied 01 the
REPORI'ER III System tape arXl rmlst be present on disk when the report
specificat.icn is analyzed am a rep;>rt program is generated.

1.

RP3REP

-

ccntains the object code for the
Report. Lan]uage Analysis Program.

2.

RP3GRM

-

ocntains the report language syntax
descriptiCl'lS used by RP3REP.

3.

RP~

-

ocntains the object c<Xie for the
Report Program Generator.

In addition to the above files, other files nust be present
disk pack, as follows:
1.

00

disk or

Vooabulary files generated by RP3VOC describing the files to
be accessed by the generatEd program IlUst be present when
RP3REP is run. '!be names of the two requirEd vocabulary files
are given in the output fran the RP3VOC execution as follows:

FILES NEEDED 'ro RUN REOORl'ER III ARE:
<file name 1> AND <file name 2>.
6 -

26

2.

to CXIlpil.e

the generated

If J::I6 II data structures are to be accessed,
files created by n\SDL I1IlSt be present.

the data base

'.the Q)8)L OCIIpiler

nust be present

program.
3.

of REPOR1'ER III report apecl.fication analysis, program
program CXIlpilatial,
program
execution,
and report
productiCXl is autanatic.
You need inplt ally one sinple sequence of
statements to execute the entire process fran apecificatial inplt to
. printed report output.
'!be inp1t. execution deck CDlSists of the
followiD3 instructialS, in the order presented:
'!be

process

generatioo,

1.

?EXJ:X11l'E statement

2.

?FII£ statement(s)

3.

?DA.TA statement

4.
5.

Re~-specificaticn

file

?mD statement

Descriptions of each of these five i.nstruct.i.cms follow.
?EXm1l'E Statement
?EXm1l'E statement instructs the Master Control Program (ICP) to
schedule the RPJREP pr;ogxam for exacutial of apeci.ficatial parainJ.

'!be

For card input of the report apecificatial
follows:

to RPlREP, the syntax is as

?EXEn1l'E RPJREP

For

disk input of the report specification

follows:
?EXEn1l'E RPJREP VA 0 J

6 - 27

to RP3REP, the

syntax is as

?FILE Statement(s)
'!he ?FILE statement is optional. It allows you to change the <external
file 1D> and/or hardware device for one or nore files used by RP3REP.
Any ll\lIl'ber of ?FILE staterrents can be included.
The syntax is as
follONS:
?FILE <internal file name> = <external file 1D> <backup
device>
Each file has t'WO names associated with it:
Which

is the name by which

1.

<internal file name>,
refers to the file.

a program

2.

<external file 1D>, which is the name by which the M:P refers
to the file.

The t\NO names can be the same, but this is not a. requirement. 'Ib change
file nanes at executioo time, you need to n~uate" the <internal file
name> to the l'lE!\rI <external. file ID> through use of a ?FILE statement. A
backup ootput device other than the one oonnally E!Iployed for a file can
be specified together with the new <external file ID>.
To use a ?FILE statement, yoo must know the <internal file' riaine> of each
file that is to be equated. Table 6-7 gives the <internal file name>s,

the default values' for the <external file 10>s, and a descriptioo
each file used by the Report Language Analysis Program (RP3REP).

6 - 28

of

Table 6-7

RP3REP File Equates for B 2000/

8 3OOO/B 4000 Series of Systems

Internal
File Name

Default Extema!
File Name
and Kind

RPlG~

RPlGHot, disk

Gramnar definitioo file.

RP3CRD

RP3CRD, card reader

Iqput report-~ification
file fran the card reader.

RP3PRl'

RP3PRl', printer

File Where the report
specification is printed (or
error messages, if any, are
listed) •

RP3I:SK

RP3lE(, disk

Inp.1t report-specificaticn
file fran disk. Use VA 0 3 in
?EXEaJl'E statement to specify
input fran disk.

Description

Exanple:
The name of the RP3GRM file is to be changed
statt:ment for the change is as follows:
?FILE

RP3G~

to IMSOOl.

'nle ?FILE

= IMSOO.l

It is possible to specify that Ci backup file be used instead of the
physic;:al hardware device.
For example, if you want the output file
RP3PRl' to be sent to printer backup disk without changing the l1al1e of
the file, the ?FILE statement for the change in the output medium is as
follows:
?FILE RPJPRl'

= RP3PRI'

PRINT DISK

6 -

29

For further information, refer to the
3000/B 4000 Software Operations Guide.

B 2000/B

?I:lM'A Statement

The
?DATA statenent
is placed
inmediately
before
the
report
specification for card decks or pseudo card decks (the statement is not
used if input of the report specification is fran disk). 'Ibis stateroont
names the report specification for the lCP and tells the catpUter the
character set to be used on the input execution deck. '!he syntax is as
follows:
?~TA

RP3CRD

If cards are to be used, ally
mcoIC can be input to RP3REP.

cards

pmched

in

Report-Specification File
'!be report-specification file calSists of all the laD31Jage statements
which you have constructed in designiB3 your rep:ll't (s), arranged in the
appropriate order. This file is placed between the ?OM'A statement and
the ?mID statement.
The file nulSt be structured similarly to the file
CXXltaining CDOOL source code. '!he sequence ru..mi:)ers appear in columns 1
through 6, colunn 7 is blank, arxi the laB]Uage statements of the report
specification a~ in oolullns 8 through 72.

?END Statement
'Ihe ?END statement, 'which signals the end of your input, nust be the
last card in the input executioo deck. '!he syntax is as follows:

6 -

30

Before you can process your report specificatial, you lIIlSt do the
followin; (if not already done): load the REPORl'ER III System programs
and files ani the pertinent vocabulary files 00 disk. Note that the
CXB:>L COIpiler IIUlst be accessible for processing.
']he REPORrER III bystem has the capability to proceed autaoatically fran
specificatioo input to printed report wtplt. fiJwever, the system also
al~ yoo to process various phases of the report preparatioo manually.
These capabilities are discussed below.
Autanatic Execution Procedure
procedure for the default autanatic
report preparation process is as £0110lllS:

1be

1.

executioo of the REPORl'ER III

input the execution deck ( fran the card reader or
tenninal, ~dlever awlies) to begin execution of RP3REP.
The following message is displayed 00. the CDr:
You

SQJ RP3REP

2.

When RP3REP tenninates and there are no errors in the report
specification,
RP3REP autanatically
starts RPJGm.
'lbe
following message is displayed:
lnJ RP~
En1 RP3REP

3.

\Ilen

RP3Ga~

autanatically.

tenninates,

CDBOL ccupilatioo

is

started

'!be following message is displayed:

InJ <CDOOL-program> /CDOOL
m:J RPlGal

4.

At

the end of corpilatioo, the report program is executed
'!be following message is displayed:

~utanatically.

m:r <OOOOL-program> /(l)BOL
OOJ <CX>BOL-program>

5.

When the report is produced, the report program tenninates and
the following message is displayed:
IDJ <WOOL-program>

6 - 31

If a Process-option SAVE statement has been used to save the object
program and no nane was specified in the statement for the object
program, the program is named tlRO<nn>" permanently. If a Process-option
SAVE statenent has not been used to save the object program, the program
is rJaIred RO<nn> temp:>rarily.
exanple below shows RP3REP being executed through the q>erator
display tenninal (OIJl'). The report specification is containal in a disk
file
called
NEWSPC.
'!be specification
does not contain
any
Process-qption SUPPRESS statements.

The

EX

RP3REP VA 0 3 FILE

RP3~K NFlVSPC.

User-controlled Execution Procedure
using the Process-option SUPPRESS statement, you can halt the
autanatic initiation of the various processes of report preparatioo. By
using the Process-option SAVE statement, you can nan-e and preserve the
various intennediate files used to pass information fran one filase to
the next.
You then must run separate ex~ute decks for each process
using file equates to specify the names for the intennediate files.

By

A progrdlll-by-program slUllllarY of execution decks and presentation of file
equates for each process of REroRTER III report preparation follow.
RP3REP Program:

RP3REP is the first process in re,lX)rt preparation. It parses the report
specificatioo and prcxiuces a parameter file for RP3GW. If 00 name was
assigned to the parameter via the Process-q>tion SAVE statement, the
file nama is "RP<nn> ", Where <nn> is a randan nurri:>er assigned by RP3REP.
mus number is called the ID number, and it remains constant through all
processes. 'lbe execution deck setup is as follows:
1.
2.

?EX RP3REP
?FlLE--

3.
4.

?mTA RP3CRD
Report specification

5.

?END

6 -

32

RP3REP

cards.
1.

2.

can take the inplt report specification fJ:an disk instead of
'Ib accarplish this, the fOllowiBJ executial deck setup is used:

?EX RP3REP VA 0 3
?FILE-

In this case, inplt report specificatioo
instead of RP3CRD.

is taken fran the file RP3ISK

Table 6-7 lists the file equates for files used by RP3REP.
RP3GEN Program:

After RPJREP, RPlGEN is run to generate a source program based (Xl the
parameters produced by RP3REP. It uses the parameter file fran RP3REP
and the vocabulary files fran RP3VOC. The execut.ia1 deck setup is as
follows:
1.

?EX RP3GiN

2.

?FILE-

Table 6-8 lists the file equates for files used by RPlGm.

The exanple belCM s~ part of a executial deck in which the vocab1lary
file ClH.1Cl is 00 a disk pack called ~ACK.
Exanple:
?EX RP3GEN:
?~"'ILE RP3PAR

?FILE APDISK

= MYPAR:
= c:rI1PCK/cx:MVCl

DR<

In this example, the last file-equate
vocabulary files reside on disk.

6 - 33

card

is oot

needed

if the

Table 6-8

RP3Gm File Equates for B 2000/
B 3000/B 4000 Series of Systems
Default External
File Name
and Kim

---

RP3PAR, disk

RP3PAR

Description
Irplt parameters fran RP3REP.
be file-equated to this
file.

tblt

RP3Pl6

RP3P}ti, printer

APDISK

<vocab.llary

~),

disk

Error lDe8sages listiD;.

Irplt

OOBlL

file-equated
not (Xl disk.

CXBL CDlpller:
After RP3GPN, the CXBlL exmpiler is rWl to CCI1pile the generated
program.
If IX) name was assigned to the generated source via the
PIocesa-c:pti.oo MVE statement, the file name is "IC<M) " , where <nn> is
the RP3RBP m 111IIber. '!bere are two possible situaticns:
1.

CXBlL source is saved, source was COIpiled, and object program
isaved.

2.

CXBlL source is saved
pxogram is not saved.

and source

6 - 34

was CDlpiled,

but object

In situations 1 and 2, the compiler ·has resequenced the source and
removed the control card. If the source program is not compiled, or if
it is compiled without NEWSOU being file-equated to the source, the
source file's sequence numbers will be somewhat random or nonexistent
and the source file will contain a compiler card as the first card.
(Refer to the COBOL ANSI-74 manual for information on running the
compiler. )
To resume standard REPORTER III processing,
invoked as follows:
?CD1PlLE ROrm COBOL IN 0 4 UA liD
?FlLE CARD RCrm
?FlLE NEWSOU = RCnn

the COBOL compiler must be

II

The file names HOnn and RCnn are the default names for the object code
and the source code, respectively, and can be changed as needed.
Generated Program Object Code:
The generated program object is executed to produce the desired report.
The input for the object program is the data structures to be reported
on.
The output consists of one or more report and/or extract files.
Table 6-9 lists the file equates for the object program; ss represents
the section number, rr represents the report section number, mm
represents the system mix nuniber for the report program, and nn
represents the RP3REP ID.

6 -

35

Table 6-9
ROnn File Equates for B 20001
B 3000/B 4000 Series of Systems

Internal
File Name

Default External
File Name
and Kind

QEXTss

RXmmss, disk

Internal
utility
file.
Default number of AREAS is 20.
Default
AREASIZE
is 5000.
Value of AREAS and AREASIZE
may
be
changed
by
the
data-processing
option
SET
SaRI' SIZE statement. Defaul t
number of records per block is
10.
Value
of number
of
records
per block
may be
changed in the vocabulary by
the SEl' SORI' FILE BI1X!KING
statement
or
by
the
data-processing
option
SET
SaRI' BI1X!KING statement.

QPRI'rr

RLrmrr, printer

Contains
an
automatically
formatted,
printed
report
andlor a run summary report.
External
file name may be
changed with the report option
SAVE
REPORI'
LISTING
PS
statement.

QEXCEPl'IONS

REnn, printer

Contains
a
notation
of
exception conditions for all
reports.
External file name
may
be changed
wi th
the
process option SAVE EXCEPl'IONS
LISTING AS statement.

QPAGrr

QPAGrr, disk

Used for page overflow.

Description

6 -

36

QRANss

RFnnrr, printer

Ccxl.tains
a
user-formatted
report fran PRINT statE'lOOnt.
External
filename
may be
changed with the report option
SAVE
EO~
LISTING
AS
statement.•

QRANss, disk

Contains

randan nuni:lers

used

for sanplinJ.
RP3l.l1iT

RP31ll\T,

reader

File which contains accepted
data that is not fran oor.
Kind may be changed by the
process
optioo
A$IGN
Aa::EPl'E»-OATA.
External file
name may be changed if
ACCEPrEo-mTA is assigned to
disk.
If
ACCEPI'ED-DM'A is
assigned to disk, the file
must be BI.ro< 1.

6 -

37

APPENDIX A
REPORTER III SYSTEM FLCW
A REPORTER III report-language specification (generally referred to as a
report specification) describes the information to be reported and the
manner in which it is to be reported.
(Instructions and formats for
processing a report specification are presented in Section 6, System
Operations Associated with Report Preparation.)
A diagram representing the process performed by the REPORTER III System
to prepare a report(s) based on a report specification is presented in
Figure A-I.
.
REPORTER III report preparation consists of four processes.
After the
first process, each process is executed automatically unless an error
has occurred in the previous process, or unless the user inhibits
automatic execution by using a Process-option SUPPRESS statement in the
report specification.
The first process involves the RP3REP program. During this process, the
report specification is analyzed for syntax and semantics errors. If
errors are encountered, a diagnostic report of the problem is produced
A listing of the report
and the automatic process is terminated.
specification is produced whether or not errors occurred. If no errors
are encountered, a parameter file is created to be used in the second
process.
The second process involves the RP3GEN Program.
During this process,
the parameter file created in the first process and the vocabulary are
used to generate a COBOL source program. On A Series systems, the COBOL
source program can be COBOL74 or COBOL85. On all other systems, only
COBOL74 source programs are generated.

A-I

1177185-003

The third process is compilation of the source program code with the
appropriate compiler:
1.

COBOL74 or COBOL85 compiler, if a computer in the A Series of
Systems is being used.

2.

COBOL74 compiler, if a computer in the B 1000 Series of Systems
is being used.

3.

COBOL compiler, if a computer in the B 2000/ B 3000/8 4000
Series of Systems is being used.

Compilation of the source program code produces an executable object
program.
The fourth process is execution of the object program produced
third process. The output is the desired report.

1177185-003

A - 2

in the

5K..1J.

AaIAl.YSlS Of '!HE
REPORT SPECIFJCATJOM
rOI SMAX MID
SDCMmCS I80RS

(REPORtER II
IUPPl.ID)

: EJ:
p------------------~
I

C080L

:

IOlIlCE

:

~~~

or

I

I

lI __________________
~
GrlIEIATICIf

I

~

~

I

'!II!

UI'OIII'PIIOCIIIAII

REPORT
PROCIIIAM
COIOL
&CUK:!

J!IfISL1;.

CONPlLATIOH OF lIIE
SCMlCE PJlOCIRAX CODE

to PRODUC! MI

1XEOJ1'A8L! OIJ!CT
PIOOIWI

1EPOR:r
PIIOGIWI
OIJECl'

~

!XlCIn1C11 Off '!HE
08Jtt'l' l'I\OIIMM 10
PIIlIIJCE 'DIE DESIRED
IEPOIT

,.-----------or

I IIIl'UI
!lOSTI. DATA WiICH
HAS lED! DESCRIBED 10 RP3VOC
I 01 ..., 1Xl'EJaW. DATA rRIIM NItl
• CIt! oa CCIIIllllATJCI1 Off 1Ht:
• rGLLClWI.: CUDS. 'IU'!. 01 lIB.

'-------------

Figure A-I.

I

REPORTER III Report Preparation Process

A - 3

1177185-003

APPENDIX B
LIMITS AND DEFAULTS

The REPORTER III report language limits and defaults are indicated in
this appendix.
The limits are restrictions in terms of quantity or
size.
The defaults are values assigned b¥ the system when values are
not specified explicitly by the user.
ITEMS, FUNCI'IONS, AND CONSTRUCTS

The report language limits for items,
constructs are indicated below.

functions,

and basic language

ITEMS

maximum of 500 unique items can be defined or referenced in a report
specification: <expression>s which are defined internally b¥ the system
as items are included in this limit.

A

FUNCTIONS
A maximum of 999 functions can be given in a report specification.
BASIC LANGUAGE CONSTRucrS

Limits are indicated for each basic language construct identified below.
The constructs are presented alphabetically.
COBOL Picture
The maximum length of a <COBOL picture>, which is an editing picture, is
30 characters.
The maximum number of digits allowed in a numeric
picture clause is 23 for the A Series and B 2000/B 3000/B 4000 Series of
Systems. The maximum number is 18 for the B 1000 Series of Systems.

B-1

Data Name
The
maximum length of a <data name>, including subscripts
and
qualifiers, is 60 Characters.
However, in determining the length of a
<data name>, 11 characters must be counted for eaCh subscript Which is a
derived item, rather than the length of the <name> which references the
derived i tern.
The maximum number of qualifiers in a <data name> is four.
The number of subscripts specified for a <data name> must be identical
to the number of subscripts identified in the vocabulary listings for
that <data name>.
It is the user's responsibility to ensure that a
subscript is wi thin the bounds of the array if the subscripted <data
name> is either a a.1S II item specified in the INPUT statement or a
non-OMS II item specified in any report language statement.
If a
subscript value is not within the bounds of the array, a run-time error
(for example, INVALID INDEX or INVALID SUBSCRIPT) could occur during the
execution of the generated report program.
For the remaining cases,
REPORTER III would check subscript values automatically. If an invalid
subscript is detected at run time, the array element is handled as a
null item.
Expression
Parentheses can only be nested 30 deep. A maximum of 999 operators per
<expression> and 999 <expression>s per report specification is allowed.
A maximum of three passes through the logical record to compute
statistical expressions is allowed.
External File Name
For the A Series of Systems, the maximum length of an <external file
name> is 30 characters, including the slashes. The maximum length of a
name following the ON clause is 17 characters.
For the B 1000 Series of Systems, the maximum length of an <external
file name> is 21 characters, including the slashes. If no ON clause is
gi ven, the maximum length of the string is 10 characters.
The total
length, including all elements of the <external file name>, cannot
exceed 28 Characters.

B-2

For the B 2000/B 3000/B 4000 Series of Systems, the maximum length of a
<string> in an <external file name> is six characters.
The maximum
length of the string in the ON clause, if given, is six characters.
Literal
The maximum length of a numeric literal used for arithmetic operations,
including
the
sign,
is
23 characters
for
the A Series and
B 2000/B 3000/B 4000 Series, and 18 for the BlOOD Series.
The maximum length of a string is 55 characters, excluding the quotation
marks.
A maximum of 99 strings can be used in a report specification.

REPORr lANGUAGE STATEMENTS

The limits and defaults which apply to particular REPORTER III report
language
statements
are presented in the following table.
The
statements are listed alphabetically.
Statement
ACCEPT

statement

Limit/Default
The default for item type is NUMERIC.
The
maximum length for each NUMERIC item type,
including the sign, is 23 characters for the
A Series and B 2000/B 3000/B 4000 Series, and
18 characters for the B 1000 Series.
If no
lengths are specified in the statement, the
default values are those specified b¥ the
SEI'-STRING-SlZE,
INTEGER-SIZE,
and
FRACTION-SIZE options.
The

DISPLAY limit for an ACCEPT statement

is

55 characters.

BUILD statement

The default item type for the BUILD statement
is NUMERIC.
The item is unsigned with
INTEGER-SIZE
and FRAcrION-SlZE as system
default
values or the value set in the
Process-option SET statement.

B-3

I f NUMERIC or STRING is used as the data type
for the BUILD statement without specifying the
size, the ~stem default value or the value
given in the Process-option SET statement will
be used.
IDcr'RA.CT FILE
AREASIZE statement

Default is 5000 records.
For the A Series of Systems, the maximum
nuniber of records per area is 1,048,575.
For the B 1000 Series of Systems, the product
of the number of areas and the AREASIZE cannot
exceed 16,777,216.
For
the B 2000/B 3000/B 4000 Series of
Systems, the product of the number of areas
and the AREASIZE cannot exceed 99,999,999.

IDcr'RA.CT FILE AREA
statement

Default is 20.
For the A Series of Systems,
nuniber of areas is 1000.

the

maximum

For the B 1000 Series of Systems, the maximum
number of areas is 105.
For
the B 2000/B 3000/B 4000 Series of
Systems, the maximum number of areas is 100.
For all the systems,
areas is one.

the minimum number

of

EXTRACT statement

Defaults are the following: HARIMARE DEVICE =
DISK; ID = <file name>; TOT~POP = 9999.

GROUP statement

The maximum number of control breaks is nine.

INPur statement

The maximum number of input levels is nine.
The maximum number of data structures (files)
allowed is nine.

ORDER statement

The maximum number of ordering keys which you
can specify is nine.

B -

4

PRD1'l' statement

For form width, the default
maxinun also is 132.
For form length,
maxinun is 9999.

the default

is 132 and the
is 54 and the

For a <OCXlditional print specificatioo>,
maxinun level of nesting is 20.

The maxinun Il\lIli)er of FlD1 ••• BY ••• 'ID
Which Can be specified is 99.

the

groups

IEPLACE statement

maxinun of 50 unique macros can be used to
describe a report.
The· maxinun I'lUJIi:)er of
parameters is 10..
'!be maxinun nuni:ler of
nested macro definitioos is 10.

RBPORr statement

maxiItUn nunber of items which can be
reported is 99. '!be maxiInJm Il\lIli)er of control
breaks is nine.
'!be maxinun length of the
<string> in the AS clause is 30 characters,
excluding quotatioo marks. '!he maxinum width
of all reported itans is 660 characters.

SAMPLE statement

A

A

'!he

maxinun of 99 strata can be specified.
Refer to Table B-1 for parameter limits ~ch
apply to the SAMPLE statement.

The

maxinun leB]th of the <strir¥J> in the AS
is 30 characters, excluding quotatioo

cl.ft:use

marks.

A table nunber can oontain a maxinum of 10
digits (nine digits plus decimal point).
A
table
name can oontain a maxinun of 10
characters.
'!he maxinun rll.JIIber of table
entries is 999. .The maxinun Il\lIli)er of tables
~ch
can be defined in a sir¥Jle-report
specificatioo is nine. '!he rll.JIIber of tables
defined in the Input Sectioo plus the Il\lIli)er
of tables defined in a Report Sectioo of a
nultiple-report specificatioo cannot exceed
nine.

B - 5

TITLE stat.enent

The maximum length of a <string>, excluding
quotatioo marks, in a· TITLE statement is 55.
Oxlcatenation can be used to obtain longer
ti tles.
'!he maxinun nunber of elements per
title is 99. The maxinun n\llti)er of lines per
title is PAGE-LENGrH.
The maxinun llllItber of
specified
title lines, excluding
skig;>ed
lines, for all titles is 50.

Table B-1
Parameter Limits for
SAMPLE Statement
Limits

Parameters
Sanp1e size

1 to 99,999,999

Sanp1e size percent

1 to 100

Strata popllation

Sanp1e size to 99,999,999

Seed

o to

Sum of all strata
populatioo

A Series:
B 1000:

99,999,999

B 2oo0/a 3OOO/B 4000:

B -

6

1,080,000,000
108,000,000
108,000,000

PROCESS-oPI'ION

srATEMENTS

The limits and defaults WhiCh apply to the Process-option statements are
presented
in the following
table.
The statements
are listed
alphabetically.
Statement

Limit/Default

ASSIGN statement

The default hardware device for accepted data
is READER if PROCESSING MOOE is BATCH, and
TER-iINAL
if it is ON-LINE.
The default
<external
file
name>
is
RP3DAT.
The
exceptions listing is assigned to PRINTER if
PROCESSING mOE is BATCH; it is assigned to
TERMINAL BACKUP if PROCESSING mOE is ON-LINE.

SAVE statement

If no Process-option SAVE statement is used,
the following actions result by default:
SPECIFICATIONS are not saved.
PARAMETERS are not saved.
COBOL SOURCE is saved.
OBJECI' is not saved.
EXCEPI'IONS LISTING is saved
if number of exceptions > O.
IDcr'RACT-V()CAL SPECIFICATIONS
are not saved.
IDcr'RACT-VOC'ABUIARY is saved
if it has been generated.
If <external file name> is not provided by
means of an AS phrase, the following standard
names are used:
SPECIFICATIONS
PARAMETERS
COBOL SOURCE
OBJECI'
EXCEPI'IONS LISTING
EXTRACT-VOCAL SPECIFICATIONS
IDcr'RACT-VOC'ABUI..ARY:
<external file name 2>
<external file name 3>

B - 7

"RSnn"
IIRPnn"
"RCnn"
IIRQnn"
llREnn"

IEVnn"

"Vlnn"
"V2nn"

NarE

The
"nn"
in the
preceding
names
represents
an identification
number
assigned
when
the Report
Language
Analysis Program (RP3REP) is run and is
based on the TIME register.
limits and defaults
Process-option SET

SET statement

Refer to Table B-2 for
which
apply
to the
statement.

SUPPRESS statement

Actions which are not specifically suppressed
will be initiated.

TOI'AL-POP

Maximum is TOTAL-POP of the referenced data
structures.

Table B-2
Limits and Defaults for
Process-option SET Statement
Statement

Default

Limit
The language is English.
The
values 1 through 12 correspond
to months JAN through DEC.

ABBREVIATED

MONTH LIST

The language is English.
The
values 1 through 12 correspond
to the months JANUARY through

FULL-LENGI'H

MONTH LIST

DECEMBER.

INTEGER-SIZE

For A Series and B 2000/B 3000/
B 4000 Series systems: 0 to 23
minus FRACTION-SIZE.

12

For B 1000 Series systems: 1 to
18 minus FRACTION-SIZE.

B -

8

FRAcrION-SIZE

For A Series and B 2000/B 3000/
B 4000 Series systems: 0 to 23
minus INTIDGER-SIZE.

5

For B 1000 Series systems: 0 to
18 minus INTEGER-SIZE.

o

NULL-NUMERIC
NULL-STRING

SPACES

NULL-BOOLEAN

FALSE

MODE

PAGE-WIIJI'H

30

STRING-SIZE

BATCH (ON-LINE if Report
Language
Analysis
Program (RP3REP) is run
via On-Line
REPORTER III).

DATA-PROCESSING-OPrION STATEMENrS

The limits and defaults whiCh apply to the Data-processing-option
statements are presented in the following table:
Statement

Limit/Default

SET Statement

The SORI'-FlLE BlOCKING and SORI'-FlLE SIZE
default
values are as specified
in the
REOORI'ER I II Vocabulary
Language
Program
(RP3VOC) •
For the A Series systems, the
maximum SORI'-FlLE size is 90 million words
(540 million characters).

SUPPRESS statement

Unless suppressed, a sort is done to group
and/or order the information in the specified
sequence.

B -

9

REOORr-oPrION STATEMENTS
The limits and defaults WhiCh apply to the Report-option statements are
presented
in the following
table.
The statements
are listed
alphabetically.
Statement

Limits/Defaults

ASSIGN statement

If PROCESSING MODE is ~TCH, the forms and
refX)rt listings are assigned to PRINTER. If
PROCESSING MODE is ON-LINE, they are assigned
to TERMINAL BACKUP.

SAVE statement

The <external file name> for the automatically
formatted
report and run summary report
listing
is, by default,
IRLnnrr".
The
<external file name> for the user-formatted
report listing is, by default, IRFnnrr". The
"nnrr" portion of the file name is a 4-digit
number where nn is the report ID nUIIiber and rr
is the report number.

SEl' statement

The
limits and defaults for the various
formatting attributes of the Report-option SET
statement are indicated in Table B-3.

SUPPRESS statement

Pages in the printed refX)rt are
unless this action is suppressed.

B - 10

numbered

Table B-3

Limits and Defaults for
Report-option SET Statement
Fonnatting
Attribute

Default

Limit

P.AGE-wIDlH

132

32-132

PMiE-LmGTH

54

8-99

1

0-30

CDIati-SPACIN3
VERl'ICAL-SP~

1

if

page

overfl~.

overfl~

2

if

or no
line

l-::S

overflOlii.
As specified in
REPORl'ER III Vocabulaxy

Lar¥juage Program (RP3VOC).
TOP-oF-roR+-QI

1-11

VERl'ICAL-SP~

R>RMS-PATI'ERNS

1-99

0

FAlSE

PAGE-ovERF~

KJLTIPLE-RER>Rr SPEX:IFlCATlCE

A nultiple-report specification
Section and 98 Report Sections.

can

contain

B - 11

a maxinun

of ooe Input

APPmIDIX C
ERROR AND WARNING MESSAGES
AND EXCEPl'IONS LISTINGS

This appendix presents the possible error and warning messages Which can
be issued by the REPORrER III Report Language Analysis Program (RP3REP)
When it analyzes the syntax and semantics of the report larquage
statements of a report specification.
'Ibis appendix also presents the
possible . exceptions which can be encountered ani noted durin; the
execution of a generated report program.
ERIDR AND WARNING MESSAGES

When

the Report Language Analysis Program (RP3REP) has catpleted its
all error and warni~ messages reflectiBJ its analysis of syntax
and
semantics
are noted al the output listirq of the rep:>rt
specificaticn.
Q1 the output listiB3,
each error or warniB!J massage
:i.nmediately follONS the line containing the portial of the larquage
statement to which the message applies. When an asterisk (*) a~s in
an error message, it appears either directly beneath the p:>rtion of the
language statement that caused the error, or directly beneath the
portion of the l.cm]uage statement inmediately following the porUoo that
caused the error.

run,

A message which a~s on the output listio; preceded by the word
"ERROR" is an "error message. II It states the reasal that processin3 of
the pertinent language statement by the RP3REP program has discontinued.
RP3REP then searches for the period in that statement and proceeds to
process the next language statEm'mt.

A message Which a~s 00 the output listiD3 preceded by the \NOrd
"WARN" is a ''warriing message." It indicates an abnonnal calditioo
encountered by the RP3REP program in processing the pertinent language
statement.
ProcessiBJ of the language statement is not discaltinued
when a uwarnio; message II is issued.
RP3REP program can detect only one error in a language statenvmt in
a given run. If a detected error in the statement is corrected and if
the statement contains additional errors which are undetected and
uncorrected, the next error in the statement will be detected by RP3REP
when it is run to analyze the given report specification again.
The

C - I

followir¥j is a list of error messages not prefixed by a n\.1Dber.
explanatioo is provided for each message.

'!'he

An

**ERR)R** bDl' ~ AVAIIABLE SPACE Ql PAGE
TO PRINl' THIS DATA ITPM

The length of the data item plus iIxlentatioo is greater than the
PAGE-wIImi.

JTl,le"GAT"

CUALIFICATlOO

This error is the result of a specified qualificatial Which is
hierarchically inoorrect.
INVALID KEY' WHILE RFADING va:AF

'Ibis error

is internal
followed by the message

IlJPLIC'ATE THIS PROBI..!M

to

the

REPORl'ER III System.

P~ SEa)

ro

It is
ALL INR>a4M'ICB RlUJIRfD '10

BtJRlODfS.

'lhis error is the result of a specified qualificatioo
hierarchically incorrect.

~ch

is

NAME IS tOr RXJND IN VOC'ABUIARY
ibe name was not an accepted or derived item name
the vocabulary.

am

was net. in

NAME IS tOr WIWE

The vocabulary item arw1/or its qualifiers is/are not. unique.

c - 2

The following is a list . of the 1l\lIli)ered error messages and warning
messages. An explanaticm is provided for each message. Message numbers
which are rot in use are so-irnicated in the list.
Ql an output
listing, the 3-digit 1l\lIli)er of a IlUI'IiJered message, ~ch appears on the
left side of the message, is preceUed by the word "ERR:>RtI or ''WARN''.
000 NAME IS 'lOO I.LH;

'!be length of a <data name> or <name> with qualifiers exceeds the
allowable limit (refer to Appendix B: Limits and Defaults), . or a
<name> is longer than 30 characters.
001 NAME EXPECl'ED

A <data name> was expected, but none

was given.

002 INVALID SUBSCRIPr
The subscript is not a valid <data name> or <integer>.

003 RIGlfI' BRACKEl' EXPECl'ED

A right bracket
none was given.

was

expe<..~ed

at this point

in the statement,

but

004 INVALID NAME

This error indicates the presence of a previous error.
005 INVALID tUmER OF SUBSCRIPl'S

'nle n\JItt)er of subscripts given
defined in the vocabulary.

does

not

agree with

the n\llli:)er

006 NAME HAS ArnFADY BEE1'J DEFINED

The new name you are atterrpt.iDJ to define already exists in the
vocabulary as an extension, or in a BUILD s'tatement as a name.

c -

3

007 1W1E

oor IN

VOCABUIARY AND NOr DEFINED AS ACCEPrED OR

DERIVED ITBvi
The nan:e which you have given

W-c1S not recognized
as an accepted
derived item name or as a name within the vocabulary.

or

008 INVALID STATISTIC DESCRIPTION
Refer to srATIb"TIC DESC in
oorrect syntax of the <statist...cal function> clause.

Syntax is incorrect.

Section 4 for

009 MISSING I<E.'YVDRD: 'PAGE(S)'
In the TITLE statement, reference is made to "FAai Il i
'1a.t'HER'1 without the 'NOrd "PAGE" or I. PAGES" fOllONing.

"FIRST" ,

or

IS" is required

at

010 PREVIOUS <NAME> UNDEFlNID, ' IS' REOOIRED FOR DEFINITlOO
The previous <name> has not been defined.
this point for derived i tea'l\ definition.

An

II

011 TITLE 'lOO u:u:; FOR 1 LINE--TITLE LINE #<nn>
The <n>th line of title infonnation Which you specified in the TITLE
statement is too long to fit on one line.
The length of a given
title line is restricted to 132 characters or to the PAGE-wIDIH
setting if that optioo was specified.
If a title length greater
than cne line is desired, a slash (/) Il'IlSt be used as explained
under TITLE STAnMENI' in Section 4.
012 INVALID USE OF srATISTICAL

FUNl.~IOO

The expressioo cannot be statistical; therefore, it cannot ccntain a

statistical functioo.

013 INrERNAL ERROR, OONTAcr BURIUJGHS
This error occurs only When the Report Language Analysis Program
detects internal inconsistencies. These are due to system failures.
The dump and appropriate listings should be sent to Burroughs. The
vocabulary files and the Reporter specification, and any other
infonnation necessary to reproduce the problem should be sent on a
tape to Burroughs.

c - 4

014 INVALID TITLE STRUCTURE

The syntax of the TITLE statement
be checked for an invalid optioo.
015 lwm lUI'

n'l

needs to be corrected;

it should

INPUT STRUClURES

The <data name> is rot in any of the data structures specified
the INPUT statEStalt. The vocabulary li~ shoold be checked.

in

016 INVALID <IlM'A-NAME> OR ClJ:IDITIOO NAME

A name in an expressioo DUst reference an item or a oondi.ticn.
017 INVALID OPERAND ~

A nUJ'Ci:)er, litera1, . oonditioo,

side of a relational

or pattem canoot. reside

<Xl

the left

opera~.

018 'lOO MANY RIGtf.I' PARENS

The right parenthesis does not c:orrespond to a left parenthesis.
019 LIMIT 00 TITLE LINES EXCEEDED

The l:i.rnit

on the ll\.JRt)er of title

lines

was exceeded.

Refer

to

~ixB, LUUU~~fau1~.

020 EXPRESSlOO 'lOO

I.a~

'Ihe expression cannot be handled because of the 1lUI'lber, nature,
an:Jjor order ofoperatioos involved in it. Yw sl'olld break up the
expression using derived data items (extensions).
021 INVALID TYPE OF SUBSCRIPl' IT&t

The type in a subscript item nust be numeric.

C - 5

022 EDUAL OR NCYl' EDUAL OPERA'IOR REQUIRED

Certain operands, such as TRUE, FALSE, patterns, and conditions,
require either "=" or "IDI' =", or "DJUAL" or "NJT EQUAL" relational
operators.
023 100 MANY

I...EE~ PARENS OR RIGlfl' PARENS EXPEX..~£D

'!be number of left parentheses
parentheses.

does not match the nUlt'ber

of right

024 INVALID EXPRESSIW
The <expression> is invalid. Refer to the explanation of expression
fonnation under EXPRESSIOOS in Section 4.

025 INVALID USE oF OONDITION IN EXPRESSIOl~

The condition must be related to a <data ~> by residing on the
right side of the relational operator. The relational operator must
be "=" or uNOI' =" (or "WUAL" or "NOr EDUAL").
026 INVALID t-1IX'IURE OF OPERAND 'r.iPES IN

EAPRESSIOl~

Operand types in an <expression> must be canpatible with the
operations perf~ on them.
Generally, operands of different
types (numeric, al:fha, or Boolean) should not ·be mixed. Care should
be taken when using <nUItber> or <string> operands.
027 INVALID FNl'1'lY IN PATl'ERN

The pattern match condition was specified incorre<..'tly. Refer to the
explanation of the pattern match operand under EXPRFSSICNS in

Section 4.
028 srRING IS 'lW I.DOO OR FMPI'Y srlUNG SPECIFIED

The <string> is too long, or no value [and/or blank space(s)] hCls
been specified as the <string>. The acceptable <string> lengths and
the resulting defaults are presented in AP.Penqix B.

C - 6

029 INVALID KEYWORD

An unrecognized keyword was given.

030 INVALID SELECr EXPRESSICN

The SELECT statement needs to be corrected.
'!he
conditicns, if any, may be in error, or the Boolean
expressions may not be correct ~tactically.

pattern match
and arithmetic

031 MISSING PERIOD -- ONE HAS BEEN ASSUMED

A period (.) was expected at this point in the statement,
The system has assumed a period at this point.

but none

was given.

032 SELECT ALREADY

SP~IFIED

than
one
SELECr INPUT statement
or
rcore
than
cne
SELECT SAMPLED statement was specified. Only one of each is allOlied
in a single-report specification, in the Input Section of a
multiple-report specification, or in the R~rt Section of a
multiple-report specification.

~re

033 UNRECCX3NIZED OPTION

SP~IFICATICN

One of the option statements contains a reserved word not recognized
by the system.

034 EXTERNAL-FILE-NAME 'IOO IDNG

On the

A Series of &ystems, the maximum length of a particular
file-nane identifier is 17 characters.
Excluding the CN clause, a
maximum of 30 characters is allOlied for an <external file name>
including quotes and slashes.
On B 1000 Series of Systems, the maximum length of each part of the
file identifier is 10 Characters.
On the B 2000/B 3000/B 4000 Series of Systems, the maximum length of

a file identifier is six characters.
035 MEMORY SIZE OUTSIDE AI..U:W\BLE RAOOE

The integer value specified in the MEM:>RY SIZE option exceeds the
value allOlioo by the system.
The maximum value for all
systems is 9999999.

maximum

C - 7

peN 1177185-002

036 INI'IDER EXPECTED
An <integer>

was expected at this point in the statement,

but oone

waS given.
037

woRD

OR STRING EXPECI'ED

A <word> or <string>
but none was given.

was expected

at this point in the statement,

038 INVALID EXTERNAL-FILE-NAME

we fonnat of the <external file name> was not valid.
039 a:>NSTRUCI' Nor IMPLEMENTED

nlis construct
is currently oot within the scope of defined
ccipabilities, or it is no longer an inplernented construct. If the
~ssage
is a warning (i. e., if WARN precedes the message nuniber),
tl1e construct is ignored.
040 '~3AVE SPOCIFlCATIONS' ALREADY SEEN

Mc::>re than one SAVE SPECIFICATIONS
a 1lOlled •

statement was given; only one is

041 MISSING PERIOD
A period (.) was expected, but none was given.

042 VOCABUIARY OR PASSWORD STATEMENr EXPOCTED

A VOCABULARY statement or a PASb"'WORD statement was expected at this
point in the report specification, but none was given. This message
dan occur if the statement does oot start in column 8 or after.
043 VOCABUIARY NAME EXPOCTED
JA. valid vocabulary
j.n

<extenlal file name> was expected at this point
the statement, but none was given.

peN 1177185-002

C - 8

044 INVALID PASSWORD

'lhe proper password . was not given. '1be p~ stat.el1ent may be
missiBJ or not given in the proper &eq\BlC8; an incorrect password
may have been given; or the password given may be too lalg.

~e

than ale CXHnl:m statement was given; ally ale is allowed.

046 LIMIT CN NlJ.£RIC LITERAI.S EX'rEEDED
'!he limit at the nunber of <rudJer>s al] awed in an expressi.al
exceeded. Refer to Appendix B: Limits and Defaults.

was

047· LIMIT <E NUMBER OF OPERA'IDRS EXCEfDED

'!be limit at the rudJer of operators in an expression was exceeded.
Refer to Appendix B: Limits and Defaults.

048 LIMIT CE OUALIFICATICB EXCEfDED
'!he limit en the nunber of qualifiers in a <data name> was exceeded.
The maxinun llIlIliler of qualifiers pmnitted is indicated in Appendix
B, Limits and Defaults.
049 INCXJ4PATIBLE SORl' SPFaFlCATICB

statement
has specified
ordering and/or control-break
groupirqs, other stat.el1ents can repeat the sorting specifications
for purposes of clarity, but they CiIIlOOt specify ani); 9\IJUS aort.iDJ
specifications.
.

Qloe a

050 am'RlL BRFAKS AIRFADY DEFmED

Cootrol-break .items were already defined
'!heir definitiat here is invalid.

C - 9

by a previous

stat.el1ent.

051 INVALID CXNSTRUCr IN EXTRACl' STA'l'EMENr

An invalid oonstruct was specified ·in the EXTRACr statement.
to the discussion under EXTRACI' STA'l»lENl' in Section 4.

Refer

052 SUMMARY STATISTIC ALRFADY SPECIFIED

The s\llllIla.I)' statistic
statement.

item was already

specified

in the stMoJARlZE

053 LIMIT CN REFERENCED ITI:MS EXCEEDED

The limit on total nUJl'ber of <data names>, re,POrted <strings> , and
<statistic functions> referenced was exceeded. Refer to Appendix B,
Limits and Defaults.
054 INVALID EXPRFSSION

'Ibis error indicates the presence of a previous error.
055 STRIm EXPECrED

A <string> was expected at this ,point, but none was given.
056 INVALID USE OF IERIVED I'lDt

Derived items cannot be referenced in an INPUT statement.
057 INVALID WHERE CIAUSE

'!he WHERE <exprt!ss ion > does not evaluate to a proper Boolean value,
or an error was present in the <expression>.
058 UNRECXX:iNIZED GROUP

An error exists

STA~

(DlSTRUCl'

in the syntax

of the GaXJP statement.
discussion under GROJP STKl'EMEi.~ in Section 4.

C - 10

Refer

to

059 LIMIT W CXNI'ROL BREAKS EXCEEDED

'lbe maximum nuni::ler of pennissible control breaks, which is nine, has
been exceeded.
060

I

TO I NO!' SEEN IN EXTRACl' S'l'ATEMEN.r

The EXTRAL"'T statenent nust contain the
name>.

~d

It'ro" followed by a <file

061 INVALID USE OF DERIVED I'lD1

A derived
item cannot
specification.
062 lUGHI' PAR;m

be

referenced

this

point

in

the

at

this

point

in

the

EXP~

A right parenthesis, ") I I , was
statement, but none was given.
063 REPORt'

at

srA~

expected

MUST BE PREVIOOSLY SPOCIFIED

Cblumns can be footed cnl.y if they were defined for the report
previously via a REOORl' statement.
In sumnary-only reporting,
footing is not possible.
064 SCDPE DEfo'iINED IN SlM1ARIZE

STA~

ALRFADY SPEX:IFIED

Cllly one specification of footiB3s and/or surrmary
FL.'lAL, in addition to specificatioos of footings

statistics
statement.
065

I

for every control

break, is pennitted

statistics for
and/or simnary
in the SlJH!UUZE

EACH I EXPECI'ED, NO!' RlJND

The syntax requires "FOR EACH <c-b name>".
066

CX>I.a~.

EXPECI'ED

A colon was expected at this point, but none was given.

c -

11

'!he <data

name> specified was not a valid control-break name
specified in a REPORt' statement, a GRXJP statement, or a ~
statement.

068 I'lDI MlBI' BE STATISl'ICAL

The item referenced must be statistical.
069 INVALID IlJPLICATE REEORl' ITEM

item> cannot aJ:Pear IlDre than CXlCe as a report or group
HJwever, it may be redefined by an <extension>.

A <data

item.

'!he report specification is inoanplet.e: a period may have been left
off the last statement, or the last statanent may be miss; D3.

071 INVALID

~

I'l'!H

item nust not be a ooou.AN item, and
specified previously as a range item or orderir9 key.

The range

it cannot be

An invalid SlHWU:ZE statement syntax was encountered.

073 •FKM'

EXP&::l'E2)

wra "FlIJ.!" was expected at this point in the statement,
ncne was given.

'1he

'!he <data name> nust reference an accepted
defined previously in the Atr:BYt statement.

c -

12

but

data item Wlich was

075 '1YPE OF RAOOE LIMIT OOES WI' MATOi

~

I'l'tM

The range limit an:i range item JIUlst corresporn in type (for exanple,
both must be string, or both JIUlSt be numeric).
076 SUMMARY LWEL OF Cl:lI.aJNS NO!' CIJIlPATIBLE

When oolunns represent sunmary infonnaticn for a particular control
break, footiI¥Js can be specified ally for higher-level control
breaks.
077 DM'A-NAME OOES WI' REFERENCE lY\TA ITEM
A <data

used in the current

name>

context

nust reference

a data

item.
078 AIL 12

~

ARE REXJUlRED R>R '!HE ABBREVIATED t-Dll'H LIST

'!be process cption SEl' ABBREVIATED Kl:fi'H LIST requires

that all 12

nonths be given.
079 LEFI' PAREN EXPECTED
A left parenthesis II (II was expected at this point in the statement,
but none was given.

080 tJNRE(XX;NlZED INPl1I' 00NSTRlJC1'
An invalid

INPl1I' statenent syntax was erlCO\mtered.
explanaticn of syntax under INPt1I' STAT.OHfl' in Sectioo 4.

Refer

to

<l31 (lCl' nl USE)

082 INVALID FILE NAME

The <file name> referenced
within the vocabulary.

at this point was

IX)t

a valid file nama

083 INVALID INPl1l' DATA STRUCIURE NAME
A valid <file name>,

data set name, or <input

not given.

C -.13

procedure>

name was

084 INVALID SELECl'ION EXPRFSSION
The current <expression> is not a valid IMS II selection expression:
the <data name>s must be valid IMS II keys, and the <expression>
following tlAT" nust be a Boolean expressioo.

085

TI.I.IDAL

VALUE

An illegal

SP~IFlm

value was specified.

Refer

to Appendix

B, Limits and

Defaults.

The key item is l'X)t the required type, or it is oot an accepted item
or an item in a data structure input previously at the same level as
the system file.

ru.miJer of data structures specifiable in the INPl11'
statement was exceeded.
Refer to Appendix B, Limits and Defaults
for the limit on the number of data structures specifiable in the
INPl1l' statement.

'!he max.irtun

088 BASE-DATE INrmER GIVm WAS UHlER 'mAN 5 DIGITS. A
JULIAN :ro~T (YYDDD) WAS EXPEX:l'ED

'!be process option SEl' BASE-~ requires that the integer given for
the date be in Julian fcmnat Which is YYIDD.
CB9 DOD PARI' OF '!HE JULIAN I»\TE GIVJ:N JroR '!HE BASE-Dt\TE WAS
lCl' VALID

When the process option SET BASE-Df\T£ is given, the Julian date is
checked to verify that the DOD part is greater than 0 and not ncre
than 366 for leap years am not nore than 365 for non-leap years.

c -

14

090 PIClURE RJl' EXPANDl\BIE -

1'Rl.JOCATIW

~Y

RESULT

While attenpting to expaOO a picture for sunmary reporting (notably,
footed i terns) , the size of the picture exceeded the max.im..nn size
allOt/ed (see Appendix B, Limits ani Defaults). '!he expaOOed picture
is detennined fran the picture size of the original item, the
integer size ani fractioo size, and the 'lUl'AL-POPUIATION sett.i03s.
091 OVERLAP

~'

TITLE SPa=IFICATIOO'

You cannot specify a title with
a titie (s) with the FIRST PAGE
Ei ther the FAQi PAGE clause or
PAGE'S clause must be used.
STATDtEllI' in Section 4.

the.EACH PAGE clause if yc1l specify
clause and/or arHER PAGE'S clause.
the FIRST Pi\GE clause aril/or arHER
Refer to explanatioo. under TITLE

092 MACRO ERROR
An error has occurred

in a macro definition
folloring are the specific error messages
association with the 092 MACRO ERR>R message:

'!be parameters
themselves.

in the

parameter

or a macro call.

which

list must be

'!be

can occur in

unique

am::n;J

EXT.RANEXXJS #
An extraneous pound sign (i) was encountered.

IDEm'IFIER PREVICXJSLY DEClARED

Macro names nust be unique.
TTJ·FGAL

IDENTIFIER

Literals and special characters cannot be used as macro names or
for.mal parameters.

C - 15

TT.T·fGAL

MACR> INva<E

A macro cannot define
at. ,. is invalid).

itself

(for exanple,

"REPLACE A BY A +

of actual parameters in the macro call does not
ex>rrespcDi to the nurdJer of formal parameters in the macro
definitien.
The nurdJer

IBl' PAREN EXP!Cl'ED - '('

A left parenthesis was expected, but none was given.

The max:inun

IUJllt)er of active macros (i. e., macros in use), both
tEIIplrary am. pennanent at any given point, is 50.

Macros can be defined to a nesting level 10 deep.

Macros can be nested 10 deep, and each macro can have a maxinun
of 10 parameters, thus pennittiB.:J a parameter stack limit of

100.
MISSIlG
The

~

'MOm

- 'BY'

"BY" IlIlSt separate the macro name fran the macro text.

MISSIR; RIGHI' PARENIBESIS - .).

Iaft am right parentheses nust oorrespcDi. A right parenthesis
nust mark the end of the list of foxmal. or actual parameters.

c - 16

A maxinum of 10 fonlal. parameters i8 penn:itted.
• lOl' ALUJm) AS AC1'UAL PARAMETER VAWE

The pound sign (.) canoot be used within an actual parameter.
093 IT!H MUST lCl' BE STATISTICAL

A nonstatistical item nust be given.
094 ALL 12 KNI'fS ARE RWUIRID FOR THE FUIL-I..EH:n'H

1«Nl'H LIST

When the process cptioo SEl' FUIL-I.DUl'H KNlH LIST is used, all 12
IlDlths JIIlSt be given.
095 INPt1l' STRUClURE ALREADY SPB:IFIED
An input data structure can be specified a'll.y emce. 'rherefore,
statement such as "INPl11' FILE1, FIIE2, FILE1." is not. pemdtted.

The internal

buffer,
reported, overflowed.

(1J7

Wlich

holds

the

headers

for

it81l8

a

beiBJ

INVALID NUIL SPECIFIC'ATI<E
An invalid

null specificatioo has been made. Refer
under PRCCfSS-QPI'IW SEl' STATEMENT in Sect.i.al 4.

The size
invalid.

of the

item as specified

c -

in

17

<internal

to the syntax

attributes>

is

099 INCXH?ATIBLE RELEASE VERSlOO
of the program which created the vocabulary is
incanpatible with the releaSe version of the REJ:ORl'ER III Report
Lar¥1uage Analysis Program.
'!be last release letter should be
consulted.

'!he release version

100 # NC1l'

RXJNl)

IN MACRO

The pound sign (i) marks the end of a macro definiuoo.

cne

was not

detected; therefore, all subsequent report specifications were taken
as macro text.
101 srATm-tENI' AIBEADY ~

Qlly ale statement
already specified.

of this kind is allowed.

Qle. such statement was

102 INVALID EXTRACT ITEM

The extract item nust be a nonsubscripted vocabulary
accepted data item, a derived data item, or a <string>.

item,

an

103 INVALID HARIHUm DE.VICE

hardware device was specified.
Oleck for possible
spelling errors. Also refer to the syntax for the EXTRACT statement
in Section 4.

An invalid

104 EXPRESSlOO 1·1lST 1Ol' BE STATISTICAL
A rxnstatistical expressioo must' be given.

105 UNR:EXXX;NIZED REPORr S'l'AT.EMml' CXtiSTRUCl'
'1be syntax for the REPORl' statement is invalid.
diagram lDier REPORl' S'l'AT.EMml' in Section 4.

Refer to the syntax

106 INVALID WPLICA'l'E mcr'RACl' ITEM
A <data name> cannot appear JlDre than ooce as an extract item. It
can be redefined as a derived <data name> as explained under EXTRACT
S'l'ATm-tENI' in Sectioo 4.

c -

18

107 ' AS!:-' OR ' DES' ALREADY S~ -

IGtIlRED

t«>re than one soI'tiD; sequence was specified for
seccni am succeeding sorting cx:moarns are ignored.

an item.

The

108 FILE-NAME RJl' PREFIXED BY 'EF-'; SYNl'AX ERRORS MAY 0CXlJR

Under certain
an 'EF-' can
error occurs
RER>Rl'ER III
this report.
109 HARIMARE AND

cirClUllStances, a file name Which was not prefixed by
result in a syntax error. For exanple, a CXB>L syntax
if a file name is the same as a <DOOL reserved ~, a
reserved word, or a name in the vocab.ll.ary input to

m

lVI' CD-iPATIBLE -

HAIOlARE WILL BE

aw«;ED

Hardware am ID specification can becane inoc:Itpatible if I for
exanple, hardware device DISKPACK is specified cud the ID does not
specify PACK, or if hardware device DISK is specified am. the ID
specifies PACK.
110 INVALID •PUR • STATEMfNl' GIVEN

'!he R:>R statement requires
tenninat.in3 colon (:).
III 00RrllG

S~IFIED

either

the woJ:d INPl1l' or REPORl'

am

a

WITH HARIMARE DE.VICE Pl6CH

When the hardware device specified
is Pl6CH, sort:i.B:J is not
permitted in an PXl'RACT statement specified in a Report Section.

For B 1000 Systems:
112

~

NAME ALREADY.

S~IFIED

In a B 1000 IHS II selectioo expression,

a key name can be assigned

a value only ooee.
For B 1000 and B 2000/B 3000/B 4000 Systems:
113 INEOIM\.TICN

FR(I.1

ONE AND

(ELY

am

~TABASE MAY BE INPUT

The INPUT statement

that was given violates
IHS II data base can be input at one time.

C. - 19

the rule that auy

CXle

114 OB.J!X!T OF A VIA CLAUSE MUST BE A SE:1'
If a IKS II VIA clause is used, it must refer to a IKS II set or
link.
'!he ~ II ~ clause here does not make such a reference.
(Note that links are not. aR.'licab1e in B 1000 IM,C; II.)
115 A STANDARD EMBEDDED mTA 8m' MUST HAVE A VIA CLA.IJSE
'lhe "INPUl''' of a standard enbedded IMS II data set was specified
without the required VIA clause.
IMS II requires that standard
E!lTbedded-data sets be accessed via a link or spanrti.D:J set.
(Note
that the tenn "standard" means "ordered" and that links are not
aR.'licab1e in B 1000 OMS II.)
116 SEl' OOES lCl' SPAN '!HE DM'ASET GIVEN

Input was specified
span the data set.

set VIA a set which does not

for a IKS II data

For A Series Systems:
117 LINK OOES lCI' REFERENCE '!HE DA.TASET GIVFB

Input was specified for a IHS II data
reference the data set.

set VIA a link which does not

For A Series Systems:
118 SET OOES oor CXJ:fl'AIN KEY I»\TA

Input of a DMS II data set VIA a set with
specified, but the set named has no key data.

The clause cannot.
system file.

be used

to describe

"KI,Y-IY\TA <H:.Y"

access

to the

was

referenced

120 PP1m-LEN1I'H 'IOO SMAIL 'It> PRINT REroRl'

The specified (or defaulted) page length is not large enoogh
print the report because ooe of the following conditions exists:

1.

to

The nt.lnber of specified TITLE lines, oc:ntrol-break heading

lines, ard/or colurm heading lines makes it inpossible to
print one line of colurm infonnatioo on a page.

C -

20

2.

The number of specified TITLE lines and/or column heading
lines makes it impossible to print all summary information
for a control break or for FINAL on a page.

This error condition can be corrected by increasing PAGE-LENGTH
decreasing the number of TITLE lines and/or heading lines.

or

121 RESIDENT DATA SEI' Nor SPECIFIED AMON:; PRIOR INPur DATA
STRU(""lURES
Input of a I:MS II data set was specified in a manner
it dependent on a data set which was not anong the
Whose input was specified previously.
This can
situations in which access to the two data sets
corresponding fashion is specified:

such as to make
data structures
occur in three
in a one-to-one

1.

The data set is embedded in the missing data set.

2.

Input of the data set is to be VIA a link embedded
missing data set.

3.

Input of the data set is to be VIA a subset
the missing data set.

in the

embedded

in

122 ONLY OOE BUILD SI'ATEMENT IS ALIDWED PER SECTION
For
For a single report, only one BUILD statement is allowed.
multiple reports, one BUIlD statement is allowed in the Input
Section and. one in each Report Section.
123 A USER DEFINED NAME OR

I

SKIP I WAS EXPECI'ED

At this point within the BUILD statement, sanething other than a
name or the word SKIP was found. Ccnpare your syntax for the BUILD
statement with the syntax diagram for the statement.
124 PREFIX OR SUFFIX ALRFADY SEEN FOR '!HIS ITEl'vl
The PREFIX or SUFFIX clause has already been specified for this
report item. Ccx'cIDine the separate PREFIX or SUFFIX clauses into a
single PREFIX or SUFFIX clause.
125 MISSIro KEYWORD

I

DUPLICATES I

The AT clause of the OMSII structure clause is being used. The
keyword WITHCUI' was found, but the keyword DUPLICATES was not found.

c - 21

peN 1177185-002

For B 1000 Systems Only:
126 AT SYMBOLIC KEY EXPRESSION CIAUSE REQUIRED
An attempt is being made to access a data set via a retrieval (index

randan) set.

Retrieval sets require use of the AT clause.

127 DATA NAME IS Nor AN EI.D1ENTARY ITEM
The data-name referenced in the FROM clause of the BUILD statem:mt
is not an elementary i tern.
Refer to the vocabulary listing to
detenni.ne which items are elementary items.
128 MORE THAN 12 MCNrHS WERE GIVEN FOR THE ABBREVIATED
tvmrH LIST

RP3REP found nore than 12 nonths listed while loading
the process option SEl' ABBREVIATED MON'IH LIsr.
129 1-1 RESIDENT

b~RUcruRE

the rronths in

l'UI' AT ClJRRENT LEVEL

Access to a IMS II ernbeddErl
data
set was specifiErl
without
previously specifying access to the owner data set at the same level
of input.
130 'IDrAL SIZE OF DATA-NAMES IS lARGER THAN 'lUI'AL SIZE
OF NAMES AND SKIPS. ADDED FILLER OF <integer>
The total size of all the data names referenced is larger than the
total size of all of the names and SKIPs used in the BUIID
statement.
A FILLER (an irrplied SKIP clause) of <integer> size is
being added to match the total size of the data names.
131

'IOI'AL

SKIPS.

SIZE OF 'lEE DATA-NAMES IS LESS THAN rroI'AL SIZE OF NAMES AND
THE DIFFERENCE IS <integer>

The total size of all the data names referenced was less than the
total size of all of the names and SKIPs usErl. The integer supplied
in the message is the difference between the two sizes.
132 INVALID USAGE SPECIFIED
The usage specified in the USAGE IS clause
must be DISPlAY.

peN 1177185-002

C - 22

of the EXTRACT statement

133 STRING GIVEN FOR ABBREVIATED l«ImI LI&~ WAS GREATER '!HAN
3 CHARAC1'ERS

While loading the m:xlths in the process option SET ABBREVIATED KNlH
LIST, RP3REP fourxi an abbreviated JIDIlth strir¥J ~dh was l0B3er than
3 characters.
134 IDRE '!HAN 12

~

WERE GIVW }o1)R '!HE FUIL-LElm'H l«ImI LIST

RP3REP found nore than 12 llDIlths listed \\bile loadiB3
the process option SEl' FUIL-~TH KNIH LIST.

the nDnths in

135 STRIN3 GIVEN FOR FUIL-I..ENG'm KNIH LI8r WAS GRFATER '!HAN

10 Cl:IARACTERS
While loading the nDnths in the process oPtion SET FUIL-LElm'H KNlH
Ll8r, RP3REP fOlll'Xi a nonth strin3 Which was lOBJer than 10

Characters.
136 DATA-NAME HAS SIGN.

'!HE ABSOwrE VAIlJE WILL BE USED.

'nle data-name in the FRa-i clause of the BUIID stateaent is a signed,
elementary m.uneric item. If IlllIOOric items of this type are used in
the FRa-1 clause, ool.y the absolute value of the nuneric item will be
available to the BUIlD name that precedes the FKI-t clause.
137 - 138 (NOl' IN USE)

139 s&1I~ EXPEX:TED -

I: I

A semicolon is needed to terminate the PRESETR"!r clause.
140 (NOl' IN USE)

141 DM'A-NAME CANNJT BE A DERIVED ITEM

Tne data name given in the PRESELECI' clause was a derived i tern.
Only
vocabulary data-items fram a previously referenced data
structure and accepted data-items may be used in the PRE..WECl'
clause.
142 EXPRESSIOO t-1UST BE

BCX)LEAN

'nle expression must be a Boolean expression.

C - 23

143 '!HIS ITEM CANtCl' BE USED IN PRESELECT CIAUSE

'!be data name used in the PRESELECl' clause was not. a data-item name,
group name, condition ncune, or an accepted data-item.

144 - 145 (NOr IN USE)
146 INVALID • EOR' EXPRESSlOO'

The roR expression is not valid ani carmot be evaluated properly.
147

~TA-NAME

IS STATISTICAL.

IT·MAY

oor

BE USED HERE.

The data name in the F1U4 clause of the BUILD statement was a·
statistical item. For a single report, statistical items may not. be
used.
FOr multiple reports, statistical items in the Input section
may be used in a Report Section if the data name has been redefined •.
Refer to the explanation of t:he BUIlD statement in Section 4 for the
recannended procedure.
148 CXEFLIcr IN IMPLICIT AND EXPLICIT FRJM

One-to-one correspcniing access to two data structures related by an
association was specified suCh that access to the second data
structure depends CXl the results of the access to the first data
structure. '~ F'R(Jvt clause given was ~tiollal, since the system was
able to detennine the data structure IIdepended on" fran the
association used. '!he resident data structure (the ooe "depended
on II ) whiCh was given in the FRCJ.1 clause did I'X>t matdl the resident
detennined
by the system.
'!be REPORI'ER III System determines
residents according to the following table based on the type of the
second (associated) data structure and the kind of association
given:
Type of Second
Data Structure

Type of

Association

Resident Data Structure
Detennined ~ REPORrER III

J:I.tS II data set

Link
(reference)

'!be data set in ~lich the
link is embedded.

~lS

II data set

Elnbedded set

'lhe data set in which the
set is embedded.

tH)

II embedded

Fltbedding

'!he data set in whiCh the
data set is embedded.

data set

C - 24

149 - 152 (NOT IN USE)
153 NAME NOT A KEY OF THIS SET
In a B 1000 OMS II selection expression, a name was given that was
not a valid key name for this set.
154 IXJPLICA'IE NAME FCXJND

IN

BUILD STATEMENl'

A duplicate name was found after the FROM clause of the BUILD
statement.
A data name for an accepted data item or a derived data
item (extension) can be used only once in a BUILD statement. To use
a data name more than once, duplicate the data item using an
extension.
The extension must be defined before the BUILD
statement.
155

AVAILABLE SPACE
<data name>

NOr ENCXJGH

ITEM:

ON

A PAGE

TO

PRINT THIS

The specified or defaulted PAGE-WIDTH is not sufficient to allow the
printing of the identifier and the value of the referenced item.
Either the identifier should be abbreviated, or the PAGE-WIDTH
should be increased.
156 ITEM USAGE MUST BE DISPLAY OR COMPurATIOOAL
The NUMERIC class test
CCl'1PurATIONAL .

requires

the item to be DISPLAY

or

157 AGE INIERVAL EXPECI'ED, N:NE FCXJND
Aging can be done in DAYS, WEEKS,

~,

gJARTERS, or YEARS only.

158 INVALID <DATA-NAME>
The name specified does not reference either an elementary
group item, or a derived item.

item,

a

159 VOCABULARY ELEMENT CANNOr BE ACCESSED
The element or field within the element was secured; therefore it is
inaccessible.

C - 25

1177185-003

160 DATA STRUCIURE OR INPur PRc:x:EDURE NAME EXPECIED
In the INPUT statement, an <input procedure) name or compound data
structure clause list must be specified following the word INPur.
This error occurs if neither of these is found.
In addition, a
compound data structure clause must be composed of data structure
clauses, each beginning with the name of a data structure.
This error occurs if a data structure clause is expected and no data
structure name is found.
161

KEY

ITEM

NAME

REQUIRED

If a system file is to be accessed using an actual key, the name of
the key must follow immediately the word VIA in the system file data
structure clauseo
162 VOCABULARY KEY ITEM

ror WITHIN PROPER DATA STRUCIURE

If a system file is to be accessed using an actual or symbolic key,
the key must be a data item in a data structure previously specified
at the same input level as the system file.
163 INVALID VALUE SPECIFIED

FOR

INTEGER-SIZE, FRACTICN-SIZE

AND/OR STRING-SIZE
This error occurs if either or both of the following constraints are
not met:
1.

The value of STRING-SIZE cannot be set to O.

2.

For A Series and B 2000/B 3000/B 4000 Series systems, the
value of INTEGER-SIZE + FRACTION-SIZE cannot be set to 0
or to a value greater than 23. For B 1000 Series systems,
the value of INTEGER-SIZE + FRACTION-SIZE cannot be set to
o or to a value greater than 18.

164 THIS CLAUSE MAY NJr BE REPEATED
This clause or option cannot be specified more than once within the
current statement, description, or clause.
165 INTEGER OR ACCEPrED DATA NAME IS EXPECTED
An integer or accepted data name must be specified.

1177185-003

C - 26

166 INVALID TYPE OR USAGE

The item has an item type, numeric, or string which conflicts with
its usage.

c - 26A

1177185-003

167 MISSING OR MISSPELLED KEY WORD

A keyw~d
diagram.

is missing

or

~sspelled.

Refer to appropriate

syntax

168 lTEl1 NOT IN DATA srRUCIURE BEING SAMPLED

When a data structure is being sampled, an i tern in the strata
Boolean expression either must be an accepted data item or must
belong to the data structure 'being sampled.
169 THE FO~ING REAL NUMBER WILL BE CORRECI'ED 'IO CCNFORM
TO DECIMAL-roINI' IS ~ srANDARDS <integer part>. <faction part>

The vocabulary being used was found to have the option DECIMAL-POINr
IS CDMMA set. 'lb use DECIMAL-FOINT IS CDMMA, the fractional part of
a real nurriber must be separated from the integer part by a ccmna.
The decimal fX)int will be changed to a corrma before the number is
passed to RP3GEN".
170 INVALID EDITING ATI'RIBurE

The only valid <editing attribute> is WITH PICIURE.
171 LIMIT ON NUMBER OF REPORI' ITEMS EXCEEDED

The maximum nunber of report items which can 'be specified
exceeded. Refer to Appendix B, Limits and Defaults.

was

172 llfVALID TYPE SPECIFICATION
An attribute

type (string or numeric) was specified
match the type of the resulting expression.

which did not

173 ITElVl SIZE EXCEEDS GENERATED REroRT PlO3RAM CAPACITY

The value specified for the attribute size is greater than the
maximum capacity the generated report program can handle. Process
options INTEX3ER-SIZE, FRACI'ION-SlZE, and STRING-SIZE can be reset to
increase program capacity.
174 MISSING KEYWORD -

'BY'

The keyword "BY" was expected at this point in the statement, but it
was not found.

C - 27

peN 1177185-002

1 75 LIMIT ON SUB-EXPRESSIONS EXCEEDED
The nurcber of sub-expressions allONed was exceeded.
You can use
extensions to eliminate the nesting of expressions required.
176 EXPRESSION OOES IDr DESCRIBE AN APProPRIATE stJr.'MARY ITEM

One or nore i terns within the expression either are not appropriate
suntnary' items or require "RElATED 'ro" clauses to declare them
explicitly to be appropriate summary items.
177 STAT PASSES REQUIRED EXCEEOO LIMIT

The number of passes through the data required to calculate the
statistical expression exceeds the limit (refer to Appendix B,
Limits and Defaults). The expression can be obtained by placing it
in the Report Section of a multiple-report specification, or by one
or nore applications of the EXTRAcr WITH VOCABULARY capability.
178 F<XJrED ITEM MUST BE A OOLUMN

item cannot be footed unless it is reported
not have any editing attributes or internal
except through an Extension statement.

An

as a column and does
attributes assigned

179 LIMIT CN NUMBER OF FUNcrIONS EXCEEDED

The maximum nunber of functions which can be specified
specification was exceeded.
Refer to Appendix B,
Defaults.
180 Iu.mAL

I

in a report
Limits and

REPORI' FOR FACH RANGE I SI'ATEMENT

The specified "REPORl' FOR FACli RANGE" statement is invalid.
181

I

REL

'IO I CLAUSE INa::>MPA'llIBLE WITH

I

FOR EACH

I

The accumulation required for the statistic is incompatible with the
scope of the statistic.
182 <XNSTRUCl' MAY ONLY BE SPECIFIED ONCE

The syntax only allows the construct to be given
specification of the construct is invalid.

peN 1177185-002

C - 28

once;

multiple

183 <Dl\TA-l-w1E> RWJIRED EOR 1'1»1 'ro BE SUl+WUZED

The statistical functioo requires the specification of a <data name>

after the left parenthesis.
184 STATISTIC MAY OOLY SlJ+WUZE NUMERIC ITEM

Item nust be numeric. cnly <XU:ll', MAXIMll-t, and
(Xl striD3 or Boolean itans.
185 INVALID OR MISSIH:; MJ\.TQi Kf.Y

MINlM[I.t

can be taken

~TA-.lW-m

If a system file is to be irprt mat.chi.Bl another input data
structure, the name of the match key <data itam> nust follCM the
word MATQfiN3, DF.SCENDIR;, or ASCflmIl'l:;.· When nultiple match keys
are used, keys specified after the first key nust follCM the AND
Wich joins the match key clauses.
Each match key must be a data
item in· the specified system file.
186 MISSIOO 'WITH' aAl1SE

In specifying input of a system file matching arxxher input data
structure, each match key specified must be follcwed by the word
WI'lH and the name of the mat.chi.Bl data item in the related data
structure.
187 INVALID OR MISSIOO REIATED f.Wl'OI KE.Y llM'A-NAME

In specifyirr:J match keys to be used to inplt a system file, a
related match key corresponding to each key in the matched system
file nust be specifiEr followiD3 the match key <data name> am the
'NOrd WI'IH.
All related match keys IlUlSt be data items in the data
structure with '-hidl the system file is being matched.
Note the
following:
1.

If MA'l'CiIN3 was specified, this related data structure
must be a data structure previously specified at the same
or tmmediate outer iqput level.

2.

If MASTER M\'l'CiIN3 was specified, this related data
structure IIDJst be a data structure previously specified at
the same input level.

C - 29

~

188 MISSING

-

'UNMATCHED' OR 'DUPLICATES'

To specify that UIJDatched or duplicate
exceptions, the \\lOrd NC1l'IOO nust be
~ or DUPLICATES, respectively.

189 MATCl-IIN.1 CUWSE IS REQUIRED
SPECIFIED FOR SYS'l'&t FILE

~

I

records are to be noted as
followed by the keyword

MASTER I HAS BEEN

that a system file is to be input as the master matching
file, the keyword MASTER and the remainder of the matching clause is
required. MASTER cannot be specified alone.

To specify

190 INVALID TABIE IDENl'IFIER - NlM3ER OR NAME REClJIRED
The table name was not a <name> or <Il\lItber>.
191 MISS:m:; TABLE FlmuES
U

or ". II (a period)
defined table entry.
UOl.lIERS

was encountered

prior

to at least

cne

192 ~ (/) REXJJIRFD
A slash nust appear
TABLE statement.

between

left am right items specified

in the

193 INVALID TABIE ENrRY - NUMBER OR STRIN:i RWJIRED
The left or right entry in the TABIE statement was
<nunber>.

l'¥)t

a <string> or

194 TABlE IDENl'IFIER ALREADY EXISTS OR IS > 10 aiARACTERS
A table identifier for the table already

appeared, or the table name

was too long.

195 NUMBER OF TABLES
'!he maximum
nine.

EXCEh"'~

LIMIT OF 9

number of tables allowej

C - 30

in a report specification

is

196 TABLE REFERENCED OOFS WI' EXIsr

The table name appearing in the EN1'RY flmctioo
table must be defined before it is referenced.

was

lX)t

defined.

A

197 TABLE ENl'RY TYPE MI~Tai

'Ibis message can reflect any of the follodD:J errors:
1.

The table entry items Ql the left side of the table are
not all the same type.

2.

'nle table entry items em the right side of the table are
not all the same type

3.

. 'Ihe item appearing in the <F.Nl'RY functiQl> to be matched
during table referencing is not. the same type as the left
table entries.

198 NUMBER OF

El~1'RIES

IN TABLE EXCEEIl) 999

'!be table size limit was exceeded.
199 ASSIGt'MWI' 'ro 'l'EIf.fiNAL INVALID IN BA.'1'CH IDlE

or accepted data was assigned to
tenninal, but the processing l1Cde of the generated report program is
batch. 1herefore, the assignment is invalid.

A listiB3 was assigned to tenninal,

200 A LISTllG ASSIlH-1Em' 'ID TElMINAL ALREADY GIVEN

One and cn1y cne listing can be assigned directly to a tenn:i.nal..
201 SUBSCRIPI' ITEM CANNOI' BE

STATI~~ICAL

-

The <data name>

subscript.

references a statistical
This is not allowed.

202 DERIVED ITEM DEFINED B1Jl' NEVER USED -

'nle <data

<data name>

~>

item which was used as a

<data name>

references an item Which was defined but never used.

For exanple, a derived item X used cnly in a:xJNT(X) is CXlIlSidered as
never used because axm(X) is calculated exactly as CXXJm'. X is
rot used or needed for the calculation. Similarly, any derived item

C - 31

used ally for calculating
axm(X).

203 FIIE lCl' ASSIGNED
A VIA clause

ro

was

X is not used or needed

for calculating

RANI:Di A<X!ESS DEVICE

given

for

a file

Which

can

only be accessed

sequentially.
204 SI'RING VAIlJE MAY BE TRUNCATED OR
nnn (]fARACTERS

~ED

WITH SPACES 'ro

The group is to be treated as a string type item of length nrm. 'the
group value may be truncated or extended with spaces to nnn
characters, depending al its actual . size.
'!be value rum is the
specified or defaulted STRING-SIZE.
It can· ·be reset (refer to
PR:CFSS-OPl'ICE SET STA'lD1Etll' in Section 4).
Except. in the case where the group is used as a systEm file match
key, group values are not tnmcated.
'Ihat is, they are not
truncated When used to access data structures as specified in the
INPUr statement.

205 tJNREXXX;NIZED EUR-1 A'r1'RIBUTE
'!he ally all~le fol:m attributes are RlBM-wIDl'H,
srARr-POINT VERl'ICAL-SPACIOO, or roR-t-'lYPE.

206 LIMIT CN NtHER OF NEb""TED <PRINr

S~ICATI~>

A maxinun of 20 levels of nestiD3 is allONeCi
print specificatioos> of the PRINT statement.
207 PRINT

S~ICATICN

EOBM-LEKn'H,

EXCEEDED
in the <oonditiooal

INVALID IN GIVm a:>NrF.XT

Certain <print specifications>
cannot be used- in HEADERS and
POOIml'ES; i.e., NF cannot be used in a FIRST FOR-t HFADER, and <data
name> <string> cannot be used in an 0l'HER :rom FWlNOI'E.
208 tJNRECXX;NIZED PRINl' SPECIFICATICE

The <print specificaticns> given are unrecognizable.
209 IN'l'mER MUST BE BE'IWEEN 1 AND 132 INCLUSIVE

'!be specified. integer nust be a n\llli)er

C -

32

betw~

1 and 132 inclusive.

The specified integer nust be a Il\lIIber between 1 and 9999 inclusiva.
211 INTmER MtB1' BE BEIWEEN 0 AND 99 nc:lJSIVE

The specified integer nust be a l'lUltber between 0 and 99 inclusive.
212

TT,T,fUAI, CHANNEL NUMBER

The Channel IlIJIIi)ers allowable are 1 through 11.

213

TT,T,fUAI,

LINE NtImER

Line nun'bers nust be greater than zero an:) less than or equal to the
form length given in the Form Attributes specificaticn.
214

Sl'R:[l:I;

SIZE EXCEETS roiM WIDIH

The size of the string being built in the <text> is greater than the
fonn width.
215 S'I'ATEMENl' INVALID WID

usm

WITH EAaI lOat HEADER

If you have specified FAQf mR4 HEAlER. you canoot
HEADER or 0lHER mat HEADER subsequently.

use FIRST R>R-t

If you have specified FAQf ~'tHt FtXJ'lK7I'E previously.
FIRST FO~ RX11NC7I'E or arHER R>R4 RX11NC7I'E.

you carmot use

217 EAQf

ro~

HEADER

TTl.fX3AL

WITH FIRSI' OR 0lHER

m~

HEADER

If you have specified FIRST FO~ HFAIER or 0lHER FOR-! HEADER
previously, you carmot use EAQi mHo! HFADER •.
218 FAClf

FO~

POOlH11'E TTI,fXW., WI'1H FIRST OR 0lHER

mR-t

FCX>'JlVl'E

If you have specified FIRST FORM FOOIN:1rE or 0lHER
previously, you cannot use FACH FOR-! RX11NC7I'E.

C -

33

Ft>1f.1 FCX>'JlVl'E

219 SPECIFICATION RFSULTS IN EOR-t OVERFI.Dll

'!be <print specification> results in fonn overflON.
Either NOl'IN3
OVERFIDW was indicated or form overf1a« is strictly prohibited
(such as fonn overflow occurriBJ \14tile scme HFADER or FC.:XJINJrE is
beiD:J defined).
R>~

220 INTmER GIVEN IN -IN'IO- S~ C1JERFI.£H) THE LINE OR
:II..LmAILY TRUNCATES '!liE ITEM

mro nn ro5ITIOOS specificatioo was given that was less than the
size of the item's editiD3 picture (..nether user-defined or
default), or there were not enough positions left in the line to do
the insert.
If IN1'O nn PQ;ITI~ is not. specified, an IN1'O m
IOSITIOOS is supplied internally, with nn equal to the size of the
i tern' s editing picture.

An

221 C1JRRENl' PRINT POSITIOO lWEFnm:>, -AT-

S~

II.LFDAL

'!be current

print positiCXl must be defined before an AT LIlm
POSITIW can be used.
A <data name> <striB3 > and nDSt cases of
<conditional print specification> result in the current print
position becanir¥J undefined.
222 'lHE -AT- SPEC INDICATES TTl.JOCW. LINE ItND/OR POSITlCE NlMmRS
An AT LINE RlSITICE

of an <insert> specifies insertion before the
current line nurrber, or before the current J?OSition nuIlber, or both.

224 aH)ITIONAL PRlNI'

S~ TT.T.fl1AL

IN A EOOJ.NarE

A <conditialal print specificatioo>

A <string>, an <integer> ,
the specification.

call1'X)t

be made in a footnote.

or a ccmna is expected

C - 34

at this point in

226

TT.T .'fX7AI,

KSITIW GIVEN

In a <text> 'specificatioo, the positioo given is beyaxi the foJ:m
leo;th or before the current position.
227 PATl'ERNS WIIL lC1' BE PRINTED.

MISSIt«; EITHER "8m'

R>R+-PA'rl'ERNS" OR "WITH PA'rl'ERN" CXl6TRJCTS

For patterns to be printed, the

£Oll~

~ificat.i.aw DUSt

two

be

made:
SET FORM-PATl'ERNS 'ro

m -to indicate the IlUIIiler
to print.

WITH PA'.r1'ERN ( <text> ) -to define 'Abat a pattem
looks like.

228 LINE CNEWI.DIl IEI-ECliD
'lhe noting
fOlJlXi.

of

The end of the

LINE~

was specified,

am line overflow

overfl~

£Om footoote writes

overfl~

£onn footoote

into the first

'AS

fcmn

footoote area.

The end of the
footnote area.

231

~

writes into the other fonn

HEADER mJNS INro PAGE HFADItGS

The overflow header begins in the page headir¥J area.

232 AN -AT LINE- SPEC II.Lmi\LLY INSERl'S INl'O THE HEADER ARFA
An -AT LINE- specificatioo

inserts into the area reserved

headings.

C - 35

for page

233 AN -AT LINE- SPEC IILmALLY INSERTS INro THE FOO1'1C1'E
"ARFA
An -AT LINE- specification

Dootnotes.

inserts into the area reserved

for page

"

234 UNEXPa:TED END OF EXPRESSICN Ft>UND

This error can be caused
expressioo
(for exanple,
operatioos) •

the syntax errors found in
invalid/misspelled
data
names

by

the

or

235 FORM WIDI'H PIlJS STAR!' ron~ IS GRFATER THAN 132

'!be max.i.rm.Jm line size for fonns is 132 character positions.
The
line size for fonns CCI'lSists of the fom width plus the start point.
Yoo can apportioo the character positialS as you desire, but the
total nurrber nust be 132" or less.
236 HFADER AND RX7.lNCY1'E

~

OVERIAP

'!be area reserved for headers overlaps into the area reserved
footnotes. 'lbere is the IXlSsibility of a run-time excepticn.

for

237 NtHmR OF REXDRllS PER ARFA Mtb"T BE MUIJrIPLE OF
SORl'-FILE BI~.

RP3REP cannot detennine if the n\lRt)er of records given in the SEl'
S>Rl'-FIIE SIZE statement is a multiple of the ruunber which will be
used for SORr-FIIE BI.D:KIR;. If the BEl' SORl'-FILE BI.DCI<]lI; is not
use:.i, then the SORl'-FlLE BI.OCKIN3 will be detennined fran the value
found in the vocabu.lary.
Refer to the SEl' SORl'-FILE BI.DCKlN3
statenent
in the Vocabu.lary
Language
User' s Guide and the
data-processil'¥J option SET SORI' BI.DCI<]lI; statement.
If the default value is used, then the number of J:t:cords given in
the SET OORI'-FIIE SIZE statement nust be multiples of 10; for
e~le, 10, 20, 30.
238 - 240 (00l' n~ USE)

C -

36

241 MAXIMUM NUMBER OF DIGITS ALl.O'JED IN PICTURE CIAUSE
EXCEEDED ITEM NAME:
PICTURE:
In numeric picture clauses, a maximum number of 23 digits is allowed
for the A Series and B 2000/B 3000/B 4000 Series systems, and a
maximum number of 18 digits is allowed for the BlOOD Series
systems.
The numeric picture clause of the item to be printed has
exceeded this limit.
242 UNRECOGNIZED INSERr SPECIFICATION -

1

ZERO 1 EXPECrED

The <insert> specifications FORM-NUMBER WIlli, PAGE-NUMBER WIlli, or
OVERFl..(M-NUMBER WIlli must be followed by ZERO, ZEROS, LEADING ZERO,
or LEADING ZEROS.
243 (Nor IN USE)
244 (Nor IN USE)
245 rMS II FIELD ITEMS CAN ONLY BE USED IN QUALIFICATION
rMS

II FIELD items cannot be reported on or used in calculations.

246 INVALID.

REPIACED BY '=1 COODITION

A GREATER THAN or Nor LESS THAN condition was specified in the
<access
clause>, but STARTING was not specified previously.
STARTING must be specified for these conditions to be valid.
247 1-TO-1 ACCESSING IMPLIED. I STARrING' IGNORED; ONLY
FIRST RECORD SATISFYING CONDITION IS INPUI'
A one-to-one access order is to be used.
The first record which
satisfies the specified condition is to be accessed.
248 SUBSCRIPI' IS OUI' OF BOUNDS - LESS THAN 1 OR EXCEEDS
MAXIMUM VALUE

<integer> which is used as a subscript
of the array.

An

C - 37

is not within the bounds

249 SUBSCRIPI' MUST BE WITHIN '!HE BOUNDS OF THE ARRAY
A subscripted <data name> is specified in the INPUr statement. You
must ensure that the subscript is within the bounds of the array.
250 THE NUMBER OF CONTROL BREAKS EXCEEDS LIMIT
The number of control breaks declared inclusively b¥ the GROUP or
RANGE statement and the REPORT statement has exceeded the limit of
nine.
251 REPORTER LIMIT FOR SPECIAL IMS II ITEMS EXCEEDED
ITEM NAME:
DATA SEl":
This message applies to REPORI'ER IlIon the A Series of Systems when
J:l.1S II control items (count, record type, and population)
are
referenced.
In the COBOL report program, these items must be
referenced using the format <data-set name> «control-item name».
The
maximum length of <data-set name> ( <control-i tern name> ),
including all qualifiers, is 60 dharacters.
252 THE NUMBER OF ORDERING KEYS EXCEEDS LIMIT
The number of ordering keys has exceeded the limit of nine.
253 ONLY COBOL74 CDDE IS GENERATED, NO ACTION IS TAKEN
For the REPORrER III System, only COBOL74 code is generated.
GENERATE statement cannot be used with REPORTER III.

The

254 THE ABSTRACT STATEMENT IS ONLY ALll.MED IN THE
INPur SECI'ION OF A MULTIPLE REPORT
The ABSTRACT statement was found in either a single report or in a
Report Section of a multiple report.
255 CNLY 'TAPE' WILL BE GENERATED FOR TAPE-7 AND TAPE-9
The specification 'TAPE-7' and 'TAPE-9' in the FlLE~D clause of
the IDcr'RACT statement will cause 'TAPE I to be generated in the
report program source code.

C - 38

256 LIMIT CN FRAcrION

LENGrH

EXCEEDED, 6 DIGITS CNLY

The maximum number of digits after the decimal point allowed
fraction number is six.

in a

257 UPPER-BOJNDS/LCMER-BOJNDS ARE NJr AVAlIABLE
The constructs UPPER-BOJNDS and DQWER-BOJNDS are invalid constructs
in ANSI-74 and ANSI-85 COBOL when numeric data items are being
referenced.
258 DECIMAL-POINr-IS-cxMv1A HAS BEEN SPECIFIED
DECIMAL-POINr-IS-cxMv1A has been specified in the vocabulary.
All
pictures defined for derived items and editing pictures for existing
data items must use commas in place of decimal points and periods in
place of commas for all numeric items.
259 (IDr IN USE)
260 (IDr IN USE)
EXCEPTICNS
Exceptions encountered during the execution of a generated report
program are noted by the REPORTER III System. These exceptions reflect
abnormalities in input data values in the report specification which did
not suspend execution of the report program but which did affect the
information produced in the report. The exceptions are recorded on an
Exceptions Listing, the contents of which is discussed below.
For each exception, information about the cause of the exception and the
program environment at the time it happened is given. Exception numbers
are assigned to the exceptions in numerical order as they occur.
The
exception type and exception message identify the exception condition.
Up to two "buckets" of information may be given for each exception to
provide further clarification.
Each of these exception buckets may
contain a value relevant to the specific exception, an additional
message, or other evidence of the condition that caused the exception.
The call number for an exception provides an index which can be used to
locate the source of the exception call in the COBOL listing of the
generated report program.

C - 39

1177185-003

In the case of multiple reports, a report number is given if the
exception applies to one of the reports but not to all of the reports.
A list of data item values relevant to the processing environment at the
time of the exception may be provided. A standard editing picture based
on INI'EGER-SIZE, FRAcrIOO-SIZE, and STRING-SIZE is used for pr inting
item values.
(Refer to the discussion under PROCESS~PTION SET
STATEMENT in Section 4.) However, for string item values, a maximum of
55 characters is printed.
The following is a list of the types of exceptions.
The type number,
message, and exception bucket description(s) (if any) are presented for
each type of exception.
Type 1 INVALID KEY ON WRITE

Bucket 1 contains the file name.
Bucket 2 contains the value of the actual key for a random file.
Type 2 INVALID KEY ON READ

Bucket 1 contains the file name.
Bucket 2 contains the value of the actual key for a random file.
Type 3 IMSII ERROR:

IMSTA'IUS

= <category

mnemonic>

«Category mnemonic> is defined in DMS II.)
For the A Series and the B 2000/B 3000/B 4000 Series of Systems,
Buckets
1 and 2 contain the DMS II numeric attributes
IMSTA'IUS(DMSTRUCIURE) and DMSTA'IUS(UV1ERRORTYPE), respectively, to
further identify the error source and subcategory.
For B 1000 Series of Systems, Bucket 1 gives the data
name.
Type 4 (NOT IN USE)

1177185-003

C -

40

structure

Type 5 ERROR IN CAI.aJIATIN3 RAOOE LIMITS

BuCket 1 gives additional information as follows:
"UPPER LIMIT ERROR" indicates

the

qpper

range

limit.

an CN SIZE ERROR while calculating
limit is set by default to

The

HIGH-VAIlJES •
"IN~

ERROR"

range increment.

indicates an ON SIZE ERROR ~le setting
The default increment is then zero.

the

"lDWER LIMIT ERROR" indicates an CN SIZE ERROR while calculating
lONer limit. A default value of zero is used for the lONer

the

limit.
Type 6 ERROR IN CAI.aJIATING SI'ATISTICS
An CN SIZE ERROR occurred

during the calculation.
being calculated is assigned NULL values.

'!he function

Bucket 1 gives the name of the function being calculated.

c -

40A

peN 1177185-002

Bucket 2 gives the type of statistics for which the function
primarily is used. Statistics 1Ahose calculatioos deperxi en this
function are affected.
If the functioo was calculated at a exntrol break, the data items
listed
reflect
the first
logical
record
for the next
oontrol-break grouping. If it was calculated on FINAL, the data
items listed reflect the last logical record reported.
Type 7

ERR)R

IN CAUlJIATIOO EXPRESSICN

An W SIZE ERR:>R WclS encountered while evaluatiD3 an expression.
The result of the expressioo is assigned NULL values.

Bucket 1 gives the name of the item ~ich is to contain the
result of the calculation. It can be a <data name> referenced in
the report. specification or an <internal data name> used by the
generated program to reference the result of the expressicn. The
data
items listed reflect
the logical
record ~ch was
processir¥3.
Type 8 ERR:>R IN ALX!EPl"ED I»\TA

Bucket 1 gives further explanation of the error.
Bucket 2 exntains the errooealS data being scanned (up to 60
cilaract.ers) •
Ebr accepted data assigned to a hardware device
other than the systan om', the errooeous data should be corrected
and the report program run again. For erroneous data accepted
fran the system 0I1l', this exception is not noted; instead an
appropriate
message is displayed and an Aa:EPr is issued
requesting an cn-site oorrectioo.

If the matching capability was used to input a system file, and
if ".tOl'DG UNMA'lQiED" was specified, a Type 9 exceptioo occurs

..nen

an unmatched record

Bucket 1 gives

the

encountered.

'MaS

name of the

system

file

oontaining

the

unmatched record.
The data items listed reflect the unmatched record and the record

for

~ch

a match was sooght.

c - 41

Type 10 MATQJ KEY

our

OF ORDER

A key used to input a system file with the matching capability
has a value Wlich is out of order.
It can be a key of the
matched system file or its related data structure.
Bucket 1 gives the name of the key.
Bucket 2 gives the previous
before the fault.

value

of the key, i. e. ,

the value

The data items listed reflect. the record out of sequence.
Type 11 INVALID Drm! EtCXJNTERED IN DM'A

Bucket 1 gives further explanaticn of the error.
Bucket 2 contains the invalid date. 'nle fomat of the date is
either CALENMR or Jln..IAN as specified by the message in Bucket

1.
Whenever agir¥3 or data CQ'lversioo is specified and invalid dates
are
encountered, this exceptioo occurs.
Invalid dates in
GRmORIAN, MILITARY, or CAL!HlAR focnat are displayed in CAI.mlAR
fomat. Invalid dates are dates ~ere the month is rx:Jt between 1
and 12, am/or the day is rx:Jt between 1 ar¥i the last day
(numerically) in the IIDlth.
After the invalid date is displayed in the exception file, the
\\OrltiD:3 COP.i of the date is Changed to January 1, 1999 and
processing CXXltinueS.
Type 12 PRX,;1W-1 C2U>ACI'lY EXCEEDED

of

INlmER-SIZE, which is used to detennine the size
program
accumulators and inter.mediate results, is ~ small.
As a
result, an CE SIZE ERRlR occurred.
Bucket 1 contains the CDBOL data name involved.
Type 13 IlJPLICATE RECDRD IN MATCHED FILE

If the matching capability was used to input a system file, and
if "NOI'IOO DUPLICATES" was specified, a Type 13 exceptioo occurs
when a duplicate record is encountered.

c -

42

Bucket 1 gives the
duplicate r~~rd.

name

of

system

the

file

containing

the.

'nle data items listed reflect the duplicate record.
Type 14 ERR:>R IN RANIXM SAMPLIOO
An illegal value pertaining to a parameter
to Appendix S, Limits and Defaults.

Bucket 1 iOOicates

Wich

was detected.

am

parameter was illegal

Refer

gives

the

reaSCXl.

Bucket 2 gives the actual
Bucket 1.

value

of the parameter

indicated by

Type 15 IN1'E1U\L SYST&1 ERROR

'nlis exceptioo indicates the occurrence

of a manm III
internal system error. You shcW.d coo.tact the local Burralghs
systems representative and save all listings and associated
documentatial related to this run.

Bucket 1 iOOicates the type of system error encountered.
Bucket 2 gives pertinent

infonaatial

relating

to that specific

error.
Type 16 SUt+1ARY I'lDt VAWE

~Isrmr

'Ihe following was detected: an item explicitly or inplicitly
related to a oootrol break has lIDre than ale value asaociatai
with a given value of the oootrol break.
Bucket 1 gives the name of the item.
Bucket 2 gives the incalsistent value detected.
Type 17 R)Rtt PRIm'DG EXCEPl'IOO
An exception

CDlditioo was detected
(user-fonnatted report).

Buckets 1 am 2 give
further
infonnatioo about the exceptioo.

c -

dur~ the

explanatioo

43

printing of forms

arx1

additiooal.

APPENDIX D

All

reserved \VOrds of the REPORrER III report language are listed below
alphabetic order.
Cautioo nust be exercised When using report
l.ar¥Juage reserved words as names in a report specification for the
folloriB3 reasalS:

in

1.

contexts, such names can be confused
cause syntax errors to be generated.

In certain
~rds ~

as reserved

2.

When a reserved word is used as a macro name, the 'IIIOrd
subsequently is no longer recognized as a reserved \«)rd.

3.

If a name is specified which is the same as a subsequently
specifioo
keyword,
that
keyword
becanes
functionally
inoperative.

If a vocabulary name is identical to a report language reserved word, it
can be renamed by means of an Extensial, for exanple, ACCl'-AGE IS REDEF
OF AGE.

If the beginning portial of a reserved 'NOrd is underlined in the
followi1'¥3 list, that portion of the 'NOrd is also a reserved word, as is
any portion of the word Which inc1 \Xles the underlined portion am
adjacent Character (s) •
In the case of sane reserved 'NOrds, wether or not they can be
alXlreviated depends an where they are used (for exanple, "SPACES" can be
abbreviated When used in the "NULL Spg:" syntax but not When used in the
"PRItll'SPECIFlCATICNS" syntax). To avoid oonfusion, such reserved ~rds
are not. underlined in the following list.
All reserved lNOrds Which
carmot. be ali:>reviated under any circumstances also are not underlined in
the following list.

AREASlZE

ABBREVIATED
ABSTRACI'

AS
PSCENDING
ASSIGN
AT

Aa::EPT
ACCEPl'ED-DATA
AGE
AIL
AND
APPRJXIMATELY
AREAS

AVERAGE

AVG

D - I

BACI<UP

FILE

BASE-~

-BL

FINAL

Bt.ANK

JroLUH»

su:x::KDI;

mn'ING

BUIlD

POOINal'E

BY

JroR
Jroas
IDRM-I.!HnH
FORM-NlImER
FOR+-PNrl'ElWS
JroRM-<7VERFUM

FIRST

CAIDma\R-l'l\.'l'E
CENlURY~

ClWG!S
CliANNEL

FO~-'lYPE
~

CXB>L
OOIlJMN-SPACllG

FRACTIW-SlZE
FRCM

CXJ.mINE
cntPILE
aNl'IGlXlS

~LlHmi

OOUNT
GENERATIOO

GW
DATE

GLOIWrn\TA

~

GRFATER

DDDDD-DM'E

GRmORIAN-Di\TE

J:DM.tYY~

GlUJP
GlUJPDD

DJ:H.fYY-IWl'E
mx:REASES
DELIMITm

Gl'R

DESCfH)l1G

mvICE
DISK
DISKPAQ(
DISPIAYnG
DIV
IlJPLICA'l'ES

ID!N1'IFICATIW

IF

OOPs

IN
INCUJDn~

INCREASES
INroRMATIOO
INrol'
INTmER-SIZE
Im'ElUiANGE

~

ELSE
mI'RY

WL

mro

EilJALs

IS

EVERY
EXCEPl'ICH»
EXm1l'I~

JULIAN-~

E>CrAACr
EXTRACT-V<X'.ABUI.ARY
EXTRACT-VOCAL

FALSE

0-2

LFADDli

tal
LESS

LINES
LINE-NtH:ER
LINE~

LIsr
LlSTIR;
IrolCAL-PAGE-FILE

PACK-ID
PAa<NAME

LDWER-fO.6Il;

PMES
PJl.GE-UHmi

IDS

PAGE-NlI4BERS

LT

PAGE-<JVERFI.Of

PJ\GE-wnmI
PARAMETERS
MAb~

PA$WORD

MA'l'QIIl«;

PATl'ERN

MAXDD1

PEICENl'

MEAN-~

PICl'URE
K>SITlCE
POSITICHS
PREFIXED
PRESET J4'cr

MILITAR!-I»\TE
MINDD1
iiii5Im-1l1\'1'E
K>D
tvUE
tem'roR
t-INl'H
t«Nl'HS

PRINT
PRINTER
PRXESSIt13
PUNCH

NAME

NEO
NEXT
N&i
NF
NL
WI'

RANlXK..Y
Ri\lGE
RAN3ES
RFADER
RECDROS

00l'm:;
NULL

NUL1.rBOOLl!'AN-l'ftJB
NULL-NlH:RlC-I'lBIS

REDEFINITlOO

N'UIU-S'l'RIlG-I'llMS

REPI..ACE.
REPORl'S
ROUNDED

RELATED

NUMERIC

RJN

OBJ'B:T

IU~~

cxnJRRElCES

RUNNIOO-'lUl'AL

OF
OFF
CN
ON-LINE
<H..Y
OR
ORIER

D -

3

SEI'
SIZE
SCR.l'
SORl'-FILE
SXJRCE
SP.A(ES
SP!X:IAL
SPEX:IFIC'ATIa;s

mo

STANDARD
START-POINTS'l'ARl'JKj

STD-IEV1ATIaf
STRATA
S'l'RIN3
~IZE

SUFFIXm
~
SlMWUZE
StH4\RY

&WPRESS
smrAX
~CAILY

D - 4

APPaIDIX E

A glossary of terms used within this manual is provided in this
appendix.
'nle terms are listed in alphabetic order, and a descriptioo
is given for each term.
Descripticn

data

Accepted Data Itan

item defined in the ACXD'r
statement.
This data item serves as a
nm-time
parameter
for
report
specification.
Its actual value is
read in bY the generated report ptogram
before processing begins.

OXltrol-Break ltan

A
data item
used
to group
the
information
to
be reported.
All
logical records -nich contain the same
value of the oontrol-break item are
grouped
together
for purposes
of
r~
the
infonnation
and
calculatil'XJ
statistics
00
the
infonnation •

A

collecticn of
structures
and
between them.

A

CI'le

the

or nore data
relatia'lShips

Data Item

elementary item of information,
e.g., account balance.
Data items in
REPORl'ER III are referenced by <data
name>s, <nUl1'ber>s, character <striB.:J>s,
or <item desc>s.

Data Structure

A collection of records, e. 9., a master
accounts file. Access to infonnation
in data structures is specified in the
report lar¥)uage by the INPln' statement.
Valid data structures for
REPORrER III include
system
files
describable in cx>ooL an:i I»1S II data

An

set.

E - 1

Derived Data Item

A data item described in tenus of other
data items via an <item desc> •
The
value of this data is derived fran
input items, accepted i terns, constants,
or
other
derived
data
item.
canbinations of arithmetic operations,
logical operations, and REPORl'ER III
intrinsic functions can be used to
canpute the derived item.
A derived
data item represents an extension of
the logical record.

Edit.iB;J Picture

A

COOOL construct \tAlich describes l'la.N'
the value of an item of infonnation is
to be printed.

An

unusual condition
detected
at
run-time
by the
generated
report
program \\hich warrants notification of
the user.
The total of a printed colurm appeariD3

beneath the printed colunn.
FoDn OVerflow

condition Which occurs when a <print
specification>
given
in the PRINT
statement other than an unoorxiitialal
NE)l IDIM specification causes printiD3
~
overflow the fo~, i.e., to go
beyond the last printable line.
A

collection of related data items
which could be viewed as a siD31e data
item, e.g., data oc::mprising m::nth, day,
and year.

A

Input Data Item

A data item which .is part of the
infonnaticn to Qe used for the report.
FOr
a single-report
specification,
input data items are described in the
vtX:2bulary am are defined by reference
to the appropriate data structures in
the
INPUl'
statement.
For
a
multiple-report
specification, input
data items are defined in the Input

E - 2

Section by the INPUT statement
extensioris.

and by

Input. Procedure

User-written
COBOL code defined to
RP3VOC aOO included in a vocabulary,
..trich
is referenced
in the INPUT
statement of a report specification to
provide access to data structures in a
manner
'Ahich
is not provided by
REroRl'ER III -generated input routines.

I tan

An

abbreviated tenn for data item.
(Refer to Data Item in this glossary.)

A reserved wo~ required to ~lete
the meaning of a language statement. A

has a specific
i.e., semantic, meaning.

keyword

functional,

group of associated records
contains
all
pertinent
infonnaticn
about a siD:Ile entity,
e.g., an account. Records cxxL-prising a
logical record can cane fran a single
data
structure,
nultiple
data
structures,
or
a
user-written
procedure.
Certain infonnation within
a
logical record. can caltain null
values
indicatiD3
the absence
of
related
infonnaticn.
'!be
INPUT
statement in a report specification
specifies what infonnatioo each reoord
contains and how this infonnation is
accessed.

A record or

-n1ch

Macro

A definition Which allows a name to
represent a portion of language text.•
Reference to the macro name causes the
defined language text to be substituted
for the nane. Macros can exist in the
vocabulary or be defined in the report
specifications
via
the
REPIACE
statement.

E -

3

Halstatistical ·Data Item

An input data item, accepted data item,

or derivEd data item Which is not
defined in terms of any statistical
function or statistical data item.
Hcmatatistical Expressicn

expression Which does not (X)lltain
statistical
functions
or
statistical
data
items.
A
nonstatistical expression can be of
type ari ~ic, string, or l3cx)lean.

An

aD¥

One-to-many access is specifiErl in the
INPl1l'
statement.
In
ooe-to-many
access, multiple records of a data
structure are accessed for each record
of a related data structure.
One-to-one access is specified in the
INPl1l' statement. In cne-to-one access,
one record of a data structure is
accessed
for
eadl
reoord
of an
unrelated data structure (indeperxient
access)
or related
data structure
(dependent access).
A
reserved
word included
in the
lar¥juage to improve the readability of
a statement.
'!be user may include or
anit an optional 1NOI'd.
Iaage-Br.eak ltan

A control-break item which categorizes
information into range groupings based
en ~re an item within the logical
record, i.e., the ranged item, falls
into specified value ranges.
Limits
for these ranges am the ranged item
itself
are defined
in the
GRXJP
statement or RANGE statement.

aangad Item

A rar¥3ed item is specified in a GRXJP
statement or RANGE statement together
with
associated value ranges.
The
values of a ranged item detennine the
values of the corresp:>ndiD] range-break
item which categorizes infonnation into
E - 4

range
groupings
for
purposes
reporting am surnnarization.

of

oollection of related data items
and/or
groups
(e.9. ,.: i ~an
acoo~t
record) •
'!be term record is used to
mean a record, list element, or member,
depending
en the
tenn Which
is
appropriate
for the type
of data
structure under consideration.

A

report

A

can be ene of the

foll~:

an autanatically fonnatted report (used
for the REroRl', TITLE, and SUl+1ARIZE
statements and the run sunmary) , a
user-formatted report (corresponding to
the
PRINI'
statenent) ,
a
madrlne-readable
extract
file
(specified
.using
the
E>cr'RACl'
statement),' or an .exception report
(oontainicg exceptions encountered).

Information
report.

Wlich

is to appear

in a

English word or an abbreviatioo
thereof which is part of the
REPORl'ER III lar¥Jllage.

An

scope of a statistic is the group
of informatioo to be sumnarized. 'lbe
scope
is all reported information,
e.g.,
~~,
or the informatien
associated
with
a
particular
control-break item value.
'ale

statistical item used in generating
randan nurrbers.
'!he seed is used in
the randan n\.ll1'ber function.
'!be same
seed should be specified when identical
randan nUllbers are desired for each run
of the report. progrdm.
A

E - 5

Rules that describe Which syntactically
legal
REroRrER III statements
have
valid meanings, and what those meanings
are.

Statistical Data ltaD

A derived data item which is defined in

terms

of one or more
statistical
functions or other statistical data
items.
For
example,
the canpany
payroll, when derived dS the total
sa~
of all
employees,
is
a
statistical data item.
An expression which contains one or
more
statistical
functions
oc
statistical data items. A statistical
expression can be of type arithI~tic,
string, or Boolean.

storage Picture

A COBOL construct Which defines

Strata

Strata is used in the singular sense to

the
internal
attributes,
and
thus
detennines machine storage allocation
for an item of infonnatioo.

mean a subpcpulation,

or subset, of
information to be sauple<l.
Strata is
used in the plural sense to mean llore
than ooe sUqX>pulation, or subset, of
infox:mation to be sanpled.
Infor.mation related to a control-break
of all
item,
or the
sum
total
information
reported.
Sumnary
infcmnation consists of one or more
sumnary i

terns.

A sumnary
item
cootains
sumnary
infonnation.
A· sumnary item has a
unique
value
for
a
pdrticular
control-break item value or for all
reported information.
SlmDary StaUstics

Those
statistical
items Which are
printed via the SUMMARIZE statement.
E -

6

Syntax

A set of rules
constructed
statements •

that describe

legally

REroRl'ER III language

Tex;-minal Backup

A tenninal backup file is a disk file
(analogous to a printer backup file)
created
by
the
generated
report
program.
It is accessible ally by
On-Line REPORl'ER III am can be paged
(viewed) at a tenninal or printed 00 a
line printer at the user' s request.

Vocabulary

A dictionary of data descriptioos
definitions
created by RP3VOC
referenced
by
REPORI'ER

am

am

III
report-laB,;JUage specificatioos via the
VOCABUlARY statement.
Word

cat1binatioo of not nore than
characters Which can c.x:nsist of
alphabetic Characters A thru Z,
nl.Unet'ic characters 0 thru 9, am
hyphen ( -) • A 'NOrd must ccntain
least
ale alPlabetic d1aracter
cannot begin or end with a hyphen.

A

E - -7

30
the

the
the

at
and

INDEX

ABBREVIATED MON'IH option, 4-2
ABSTRACT statement, 3-8, 4-4
ACCEPT statement, 3-7, 3-9, 4-7, B-3
Accepted data item, 2-16, E-l
Accepted data values, 4-7
Access clause, 4-13
Access
one-to-many, 4-199 ff., E-4
one-to-one, 4-193 ff., E-4
AGE function, 3-14, 4-17
Angle brackets, 2-8
APDISK, 6-8

Arithmetic expression, 3-13, 4-114
ASSIGN LISTING statement, 3-11, 4-21
ASSIGN statement, 3-10, 4-233, B-7
Auditing applications, 1-1
Autanatic execution procedure, 6-5, 6-21, 6-31
Average, 4-301
option, 4-24
Basic
arithmetic expression, 4-114
Boolean expression, 4-117
infonnation about the report language, 2-1
language constructs, 3-13, 4-1, B-1
Batch rrode, 4-231
BDMSOOBOL74, 6-9
~i1er,
6-2, 6-5, 6-9, A-2
Blank, 2-7
Boolean expression, 3-13, 4-114, 4-117
BUIID Internal Attributes clause, 4-26 ff.
BUILD statement, 4-30 ff.
Burroughs mailer sets, 4-212
BASE-DATE

C-b-heading desc, 4-38 ff.
C-b-subheading desc, 4-43 ff.
Character set, 2-1
Character strings, 2-10
Clauses, 4-1
CLIENT sample vocabulary, 2-28
COBOL

6-27, 6-34, A-2
editing picture, 3-13, 4-47, B-1
program, 1-2
source code, 6-30
Ol-level record, 2-19
88-level condition name, 2-18
~iler,

1

peN 1177185-002

INDEX (continued)

OOBOL74 carpiler, A-2
A Series operations, 6-1 ff.
B 1000 Series operations, 6-16 ff.
B 2000/B 3000/B 4000 Series operations, 6-26 ff.
Column desc clause, 4-48 ff.
Column listings, 4-279
Column(s)
printing of, 4-268
specifying, 4-283
Columns clause, 4-55 ff.
OOMBINE statement, 3-10, 4-63
Ccmnent indicator, 2-2
Conpilation of source program, A-l ff.
COmplex Boolean ~ression, 4-102
Ccmpound-data-structure clause, 4-64 ff.
COmpound-data-structure-clause list, 4-67 ff.
Condition name, 2-18
Conditional print specification, 4-70, 4-71
Confi~tian letters, 4-212
Connectors, 2-4
Control-break headings, 4-72 ff., 4-268, 4-279
Control-break items, 2-13, 2-14, 3-8, 4-140, E-1
Critical paths, 2-9
CUSTV sample vocabulary, 2-32, 2-33
Data base
definition of, 2-11, E-l
Data-base clause, 4-77 ff.
Data-base global data, 4-99
Data-base name, 2-19
Data item
definition of, 2-10, E-l
Data-item name, 2-17
Data name, 3-13, B-2
Data Name, 4-79 ff.
Data-processing-option statement, 3-9, 4-85, B-9
Data-set clause, 4-86 ff.
Data-set name, 2-20
Data structure, E-1 ff.
Data structure
definition of, 2-11
Data-structure clause, 4-91
Date-convert function, 3-14, 4-90 ff.
Date fonnat, 3-14
Date-Format clause, 4-96 ff.

PCN 1177185-002

2

INDEX (continued)

Default autanatic execution
for A Series, 6-5
for B 1000 Series, 6-21
for B 2000/B 3000/B 4000 Series, 6-31
Default Fonn Attributes, 4-151 ff.
Default identifiers, 4-53 ff.
Default operation, 4-243 ff.
Default processing mode, 4-231 ff.
Defaults, B-1 ff.
Definition of words, 2-2 ff.
Derived data i tern, 2-16, 4-124
definition of, E-2
Designing reports, 3-1
OMS II Data-structure clause, 4-91 ff.
for A Series, 4-99
for B 1000 Series, 4-99 ff.
for B 2000/B 3000/B 4000 Series, 4-105 ff.
Editing Attributes, 4-111
Editing picture
definition of, E-2
(see also OOBOL)
ENTRY function, 3-14, 4-112 ff.
Error and warning messages, C-l ff.
Exanples of report-language specifications, 1-4, 3-15 ff., 5-1 ff.
Exception
definition of, E-2
buCkets, C-39 ff.
nurr~rs, C-39 ff.
Exceptions
list of, C-39 ff.
Execution of object program, A-2
Execution procedure
for A Series, 6-65 ff.
for B 1000 Series, 6-20 ff.
for B 2000/B 3000/B 4000 Series, 6-31 ff.
Execution using Work Flow Language (WFL)
for A Series, 6-65 ff.
Expressions, 2-10, 3-13, 4-114 ff.
Extension, 2-16, 4-124 ff., 4-174, 0-1
Extension statement, 3-9, 4-126
External file name, 3-13, 4-349, B-2, B-3
for A Series, 4-127 ff.
for B 1000 series, 4-128 ff.
for B 2000/B 3000/B 4000 series, 4-129 ff.
EXTRACl' FILE AREA statement, B-4
EA"TRAcr FILE ARFASIZE statement, B-4
3

peN 1177185-002

INDEX (continued)

statement, 3-9, 4-137, B-4
Extract-item desc, 4-131 ff.

EXTRACI'

File Mod, 4-145 ff.
File name, 2-19
Files required for execution
A Series, 6-1, 6-2
B 1000 series, 6-16, 6-17
B 2000/B 3000/B 4000 series, 6-26, 6-27
Footings clause, 4-149, 4-150
For.m attributes, 4-151 ff.
Fonn overflow, 4-203, 4-204, E-2
FULL-LENGTH IDNTH option, 4-154 ff.
Functions, 3-14, 3-15, B-1
Global data, 4-77
Glossary of tenns, E-l
Group, 2-10, E-2
Group name, 2-18
Input data file, 3-7
Input data item, 2-16, E-2
Input procedure, E-3
Input-procedure name, 2-20
Input required for execution
A Series, 6-2 ff.
B 1000 Series, 6-17 ff.
B 2000/B 3000/B 4000 series, 6-27 ff.
Input Section, 3-7
specification for, 3-6
INPUT statement, 2-16, 3-7, 3-10, 4-161, B-4
Insert, 4-163 ff.
Integer, 4-181
Internal attributes, 4-170 ff.
INVENT sample vocabulary, 2-26, 2-27
Item, 2-10, B-1, E-3
Item desc, 2-16, 4-174
Keywords, 2-3, 2-7, E-3
Language statements, 3-8
order of, 3-7
Level number, 2-21
Limits of report language, B-1
Line overflow, 4-58, 4-203
Link name, 2-19
Litera1(s), 3-13, 4-180 ff., B-3
lDgica1 records, 2-11 ff., 2-14, 2-15, 4-301, E-3
peN

1177185-002

4

INDEX (continued)

Macro, 4-212, E-4
Macro name, 2-18
Mailing labels, 4-212
Maxinrum, 4-301
length of a numeric literal, B-3
length of a string, B-3
number of operators, B-2
number of strings, B-3
Mean square, 4-301
Memory size, 4-182
Method of language definition, 2-3 ff.
Mininrum, 4-301
Multiple-report specification, 3-5 ff., 3-7, B-ll
Multiple reports, 3-5 ff.
Name, 2-3, 3-7
Nonnumeric literals, 3-14, 4-180
Nonstatistical
data item, 2-16, E-4
e~ression, 4-l82B, E-4
Null spec, 4-183 ff.
Numbers, 3-14, 4-180
rules for fonning, 4-180
Numeric literals, 2-10, 3-14, 4-180
On-line mode, 4-231 ff.
One-to-many, see Access
One-to-one, see Access
Operations
for A Series, 6-1 ff.
for B 1000 series, 6-16 ff.
for B 2000/B 3000/B 4000 series, 6-26 ff.
Optional words, 2-3, 2-7, E-4
ORDER statement, 3-10, 4-169, B-4
Ordering keys, 3-8
Page overflow, 4-60
Parentheses, B-2
Password, 3-1, 4-188
PASSWORD statement, 3-10, 4-188
Path prompts, 2-9
Pattern matching, 4-121
Pennanent macro, 2-18
PRESELECT

Boolean expression, 4-189 ff.
clause, 4-192 ff.

5

peN 1177185-002

INDEX (continued)

Print
exceptions, 4-203, 4-204
specifications, 4-205 ff.
PRINT statement, 3-10, 4-212, B-5
Process-option
ASSIGN statement, 3-10, 4-233, B-7
SAVE statement, 3-10, 4-237, B-7
for A Series execution, 6-6
for B 1000 Series execution, 6-21
for B 2000/B 3000/B 4000 Series execution, 6-32
SET statement, 3-11, 4-241, B-8
statement(s), 3-5, 3-10, 4-243 ff., B-7
SUPPRESS statement, 3-11, 4-245, B-8
for A Series execution, 6-6
for B 1000 Series execution, 6-22
for B 2000/B 3000/B 4000 Series execution, 6-32
Processing mode clause, 4-231 ff.
Punctuation, 2-7
QEXCEPI'IONS internal
QEXTss internal file
QFRMrr internal file
QPAGrr internal file
QPRTrr internal file
QRANss internal file

file name, see
name, see ROnn
name, see RDnn
name, see ROnn
name, see ROnn
name, see ROnn

ROnn

file
file
file
file
file

file equates
equates
equates
equates
equates
equates

Random-sample Desc, 4-249 ff.
Range-break item, 2-14, 2-15, 4-252 ff., 4-258, E-4
Range-break-item Desc, 4-252 ff.
Ranged item, 4-252, E-4
RANGE statement, 3-11, 4-228, B-5
Record, 2-11, E-5
Relational operator, 3-14, 4-259 ff.
REnn default external file name, see ROnn file equates
REPLACE statement, 3-5, 3-11, 4-262 ff., B-5
Report-item Mod, 4-268 ff.
Report Language, 1-3, 2-1
Analysis Program, 3-5, 6-2, 6-28
character set, 2-1
method of definition, 2-4
specifications, 1-4, 3-1, 3-5
statement(s), 3-1, 4-1, B-3 ff.
syntax descriptions, 6-2

peN 1177185-002

6

INDEX (continued)

Report-option
ASSIGN statement, B-I0
SAVE statement, B-I0
SET statement, 3-11, 4-272, B-I0
statement(s}, 3-11, 4-276, B-I0
SUPPRESS statement, 3-11, 4-278, B-I0
Report-preparation process, A-I ft., 6-1 ff.
Report-program generator (RP3GEN), 6-2
Report Section, 3-5 ff., 3-8
Report-specification file
for A Series, 6-5
for B 1000 Series, 6-20
for B 2000/B 3000/B 4000 Series, 6-10, 6-11
Reported infonnation, E-5
REPORTER III system features, 1-1 ff.
REPORI' statement, 3-11, 4-279, B-S
Reserverl word(s}, 2-3, 2-4, 2-7, D-l ff., E-5
RFnnrr default external file name, see BOnn file equates
RLnnrr default external file name, see BOnn file equates
ROnn file equates
for A Series, 6-10, 6-11
for B 1000 Series, 6-24, 6-25
for B 2oo0/B 3000/B 4000 series, 6-36, 6-37
Row Desc, 4-283 ff.
RP3CRD, see RP3REP file equates
RP3DAT, see RP3REP file equates
RP3DSK, 6-29
RP3GEN, 6-2" 6-16, 6-32, 6-33
RP3GEN file' equates
.
for A Series, 6-8
for B 1000 series, 6-23
for B 2000/B 3000/B 4000 series, 6-34
RP3GEN program, 3":'5, 6-6, 6-22, 6-32
RP3GRM, 6-2, 6-16, 6-19
RP3PAR, 6-7, 6-8
RP3PRN, 6-8
RP3PRr, see RP3REP file equates
RP3REP, 1-4, 3-5, 6-2, C-l
RP3REP file equates
for A Series, 6-4
for B 1000 series, 6-18
for B 2oo0/B 3OO0/B 4000 series, 6-29
RP3REP program, 6-6, 6-22, 6-23, 6-32, 6-33
RP3VOC, 4-188, 6-16
RXnnss default external file name, see ROnn file equates
SAMPLE statement, 3-12, 4-288, B-5
S~le vocabularies, 2-1, 2-21 ff.
7

peN 1177185-002

INDEX (continued)

sampling selected input, 4-288 ff.
SAVE LISTING statement, 3-12, 4-293
SELECT statement, 3-12, 4-294 ff.
Semantic rules, 2-3, 2-9 ff.
SEr MD10RY SIZE process statement, 4-182
Set name, 2-20
SEl' 8ORI' BlOCKING statement, 3-9, 4-297 .
SEl' SORI' SIZE statement, 3-9, 4-298, 4-299
SHIPV sample vocabulary, 2-34
S~le Boolean ~ression, 4-117
Single-report specification, 3-5
Source program, 3-5
Special Characters, 2-7
Specification
constraints, 3-7 ff.
fonn, 2-2
Standard deviation, 4-301
Stat parameters, 3-15,. 4-301
Statistic, 4-301
. Statistical .
data item, 2-16, E-6
expression, 4-300, E-6
function, 3-16, 4-301
String, 4-180, 4-181
String expression, 3-14, 4-114, 4-117
Sum of squares, 4-301
SUMMARIZE statement, 3-12, 4-312A ff., B-5
Smmary item, 2-17, E-6
SUPPRESS SORI' statement, 3-9, 4-323
Syntactic
rules, 2-3 ff.,
variables, 2-8
Syntax diagrams, 2-4 ff.
System
features, 1-1
flow, A-I ff.
operation, 1-3
Table, 3-8
TABLE statement, 3-12, 4~335, B-5
Terminology for data identification, 2-10 ff.
TITLE statement, 3-12, 4-341, B-6
TOI'AL-POP, B-8
'l"OTAL-OOPUlATION clause, 4-348

peN 1177185-002

8

INDEX (continued)

User-contro11ed execution procedure
for A Series, 6-6 ff.
for B 1000 Series, 6-22 ff.
for B 2000/B 3000/B 4000 Series, 6-32 ff.
Variance, 4-301
Vocabulary, 2-18, 3-1, E-7
examples, 2~21 ff.
files, 4-349, 6-2, 6-16, 6-26
language, 1-2
listing(s) of, 2-17, 2-21 ff., 4-349
names, 2-17 ff.
VOCABULARY statement, 2-17, 3-12, 4-349
VOCAST sample vocabulary, 2-24
V~W sample vocabulary, 2-22
Warning message (s), C-1 ff.
Word(s), 2-2 ~f.
Work Flo.v Language (WFL), 6-11

q

'peN

1177185-002

</pre><hr>Source Exif Data: <br /><pre>File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.3
Linearized                      : No
XMP Toolkit                     : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:56:37
Create Date                     : 2014:11:18 15:41:02-08:00
Modify Date                     : 2014:11:18 16:48:17-08:00
Metadata Date                   : 2014:11:18 16:48:17-08:00
Producer                        : Adobe Acrobat 9.55 Paper Capture Plug-in
Format                          : application/pdf
Document ID                     : uuid:6077f58d-9b0a-cd49-b837-3b519be082f4
Instance ID                     : uuid:704fcd42-c2c9-284b-8846-8733306ac419
Page Layout                     : SinglePage
Page Mode                       : UseNone
Page Count                      : 592
</pre>
<small>EXIF Metadata provided by <a href="https://exif.tools/">EXIF.tools</a></small>

<div id="ezoic-pub-ad-placeholder-110">
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- usermanual link ad -->
<ins class="adsbygoogle"
     style="display:block"
     data-ad-client="ca-pub-0545639743190253"
     data-ad-slot="6172135303"
     data-ad-format="link"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
</div>
				<div id="catlinks" class="catlinks catlinks-allhidden" data-mw="interface"></div>				<div class="visualClear"></div>
							</div>
		</div>
		<div id="mw-navigation">
			<h2>Navigation menu</h2>

			<div id="mw-head">
									<div id="p-personal" role="navigation" class="" aria-labelledby="p-personal-label">
                                                 <!--                              <div id="p-search" role="search">

                                                <form action="https://usermanual.wiki/search.php" id="searchform">
                                                        <div id="simpleSearch">
                                                        <input type="search" name="search" placeholder="Search UserManual.wiki" title="Search UserManual.wiki [ctrl-option-f]" accesskey="f" id="searchInput" tabindex="1" autocomplete="off"><input type="hidden" value="Special:Search" name="title"><input type="submit" name="go" value="Go" title="Find a User Manual" id="searchButton" class="searchButton">                                                 </div>
                                                </form>
                                        </div>-->
                                                <ul>
<li id="pt-mycontris"><a href="https://usermanual.wiki/upload" title="Upload User Manual" accesskey="y">Upload a User Manual</a></li>
</ul>
					</div>
									<div id="left-navigation">
										<div id="p-namespaces" role="navigation" class="vectorTabs" aria-labelledby="p-namespaces-label">
						<h3 id="p-namespaces-label">Versions of this User Manual:</h3>
						<ul>
 <li id="ca-nstab-main"><span><a href="https://usermanual.wiki/Document/1177185REPORTERIIIReportLanguageOperationsReferenceManualJan85.162428059" title="User Manual Wiki" accesskey="c">Wiki Guide</a></span></li> <li id="ca-nstab-main"><span><a href="https://usermanual.wiki/Document/1177185REPORTERIIIReportLanguageOperationsReferenceManualJan85.162428059/html" title="HTML" accesskey="c">HTML</a></span></li> <li id="ca-nstab-main" class="selected" ><span><a href="https://usermanual.wiki/Document/1177185REPORTERIIIReportLanguageOperationsReferenceManualJan85.162428059/help" title="Discussion / FAQ / Help" accesskey="c">Download & Help</a></span></li>
													</ul>
					</div>
									</div>
				<div id="right-navigation">
										<div id="p-views" role="navigation" class="vectorTabs" aria-labelledby="p-views-label">
						<h3 id="p-views-label">Views</h3>
						<ul>
													
		<li id="ca-view"><span><a href="#">User Manual</a></span></li>

                                                                                                                        <li  class="selected"  id="ca-edit"><span><a href="https://usermanual.wiki/Document/1177185REPORTERIIIReportLanguageOperationsReferenceManualJan85.162428059/help" title="Ask a question" accesskey="e">Discussion / Help</a></span></li>

													</ul>
					</div>
									</div>
			</div>
			<div id="mw-panel">
				<div id="p-logo" role="banner"><a class="mw-wiki-logo" href="https://usermanual.wiki/Main_Page" title="Visit the main page"></a></div>
						<div class="portal" role="navigation" id="p-navigation" aria-labelledby="p-navigation-label">
			<h3 id="p-navigation-label">Navigation</h3>

		</div>
			<div class="portal" role="navigation" id="p-tb" aria-labelledby="p-tb-label">


		</div>
				</div>
		</div>
		<div id="footer" role="contentinfo">
							<ul id="footer-info">
											<li id="footer-info-lastmod">© 2024 UserManual.wiki</li>
									</ul>
							<ul id="footer-places">
											<li id="footer-places-privacy"><a href="https://usermanual.wiki/ContactUs" title="UserManual.wiki:Contact Us">Contact Us</a></li>
											<li id="footer-places-about"><a href="https://usermanual.wiki/DMCA" title="UserManual.wiki:DMCA">DMCA</a></li>
									</ul>
										<ul id="footer-icons" class="noprint">
											<li id="footer-poweredbyico">

</li>
									</ul>

		</div>

</div></body></html>
<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="52a2048b1b91b9889377efd9-|49" defer></script>