On Tue, 29 Nov 2016 14:16:09 -0800 (PST),myself Cobol85 for fun and as a rite of passage since June '16. I've written my
Hi All,
This is my first time posting and I'm very new to Cobol. I've been teaching
generated locally.The program works fine on my local desktop and my pretty report gets
to indicate an array (table) is too big..? As you can see below, the table rowsHowever -- When I port the source to the Tandem, I get an error that appears
CARD-PRFX-TABLE-INDEX.I am compiling the code on "NonStop Himalaya System" mainframe.
298 **************************
299 * DEFINE Card Prefix TABLE
300 **************************
301 01 CARD-PRFX-TABLE.
302 05 CARD-PRFX-TABLE-ROWS OCCURS 1943 TIMES
303 DESCENDING KEY IS CARD-PRFX-NBR
304 OF CARD-PRFX-TABLE
305 INDEXED BY
CARD-PRFX-TAB306 10 CARD-PRFX-NBR PIC 9(11).
307 10 INST-FIID PIC X(04).
308 10 INST-NAME PIC X(35).
309 10 INST-REGN PIC X(04).
** Error 189 ** 01 or 77 level data item too large for section:
310 01 CARD-PRFX-TABLE-MAX-ROWS PIC S9(05) BINARY VALUE +1943.
...
...
COBOL85 - T9257H01 - (15 MAR 09)
No object file produced
Number of compiler errors = 2
Number of compiler warnings = 0
Maximum symbol table size = 186530 bytes
Last message on page 17
Elapsed time - 00:00:00
and 310 above, the program compiles on the Tandem without errors.When I change the number of rows from 1943 to 100 (for example) in lines 302
Object file \CTD4S.$MDC016.CESVIC.RDFISSU
TIMESTAMP 2016-11-29 00:09:00
13 Code pages
16 Primary data words
5894 Secondary data words
41 Data pages
0 Resident code pages
0 Extended data pages
5910 Top of stack location in words
1 Code segment
0 Binder Warnings
0 Binder Errors
It indicates the following regarding error 189:COBOL85 - T9257H01 - (15 MAR 09)
The object file is executable on a NonStop Himalaya System
Number of compiler errors = 0
Number of compiler warnings = 0
Maximum symbol table size = 186530 bytes
Elapsed time - 00:00:01
The manual I have is titled "HP COBOL Manual for TNS and TNS/R Programs"..
DataCause. The size of a data item exceeds the maximum size permitted for the
if there is an environmental limitation I'm hitting?Division section in which it is defined.
I'm pretty sure Cobol can handle more than a 2000 row array so I'm wondering
available materials before asking a question.Sorry if my questions seems rudimentary, I'm definitely trying to review all
Thanks for your time!
The limits are defined in the manual you referenced. Look in ChapterI did finally find the Cobol limits in there thanks! It's where I learned about
20, "HP COBOL Limits". The restrictions you're interested in are at
the top of page 20-4.
TNS is a rather odd environment, and programs are mostly limited to a
small collection of relatively small "segments" (in this case, no
single record ("01") can be bigger than 32767 bytes, which your table
is). There are extensions, and a way to run "native" applications,
that can get you around some of those.
Sysop: | DaiTengu |
---|---|
Location: | Appleton, WI |
Users: | 993 |
Nodes: | 10 (0 / 10) |
Uptime: | 215:09:42 |
Calls: | 12,972 |
Files: | 186,574 |
Messages: | 3,268,556 |