Hi All,myself Cobol85 for fun and as a rite of passage since June '16. I've written my
This is my first time posting and I'm very new to Cobol. I've been teaching
The program works fine on my local desktop and my pretty report getsgenerated locally.
However -- When I port the source to the Tandem, I get an error that appearsto indicate an array (table) is too big..? As you can see below, the table rows
I am compiling the code on "NonStop Himalaya System" mainframe.CARD-PRFX-TAB
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-TABLE-INDEX.
306 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
When I change the number of rows from 1943 to 100 (for example) in lines 302and 310 above, the program compiles on the Tandem without errors.
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
COBOL85 - T9257H01 - (15 MAR 09)indicates the following regarding error 189:
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". It
Cause. The size of a data item exceeds the maximum size permitted for theData
Division section in which it is defined.if there is an environmental limitation I'm hitting?
I'm pretty sure Cobol can handle more than a 2000 row array so I'm wondering
Sorry if my questions seems rudimentary, I'm definitely trying to review allavailable materials before asking a question.
Thanks for your time!
-Victor
It looks like I may have come across a solution.
Apparently there is something called "EXTENDED-STORAGE SECTION" on the
Tandem compiler.
Thanks for the props!
I'm going to update the code to use from
"dynamic-ish" arrays instead of the very fixed one I used.
I just wanted
to be able to use the static array as an educational tool.
Learning by increment..
I don't know of a COBOL compiler where an ODO has implicit dynamicallocation. As far as storage is concerned, you'll get the amount for the "TO" value.
ODO limits things like SEARCH, SEARCH ALL, WRITE, INSPECT, STRING, UNSTRING.limits on the compiler. I've never heard of it before. Very imlementation-specific.
EXTENDED STORAGE looks to be an Extension to COBOL due to "environment"
Learning by increment..
Revelation by thunderclap. Before Enlightenment, chop wood, carry water, after Enlightenment, chop wood, carry water.
DD
On 12/1/2016 7:38 AM, docdwarf@panix.com wrote:
Learning by increment..
Revelation by thunderclap. Before Enlightenment, chop wood, carry water,
after Enlightenment, chop wood, carry water.
Hey Doc,
While looking at Xmas ads on the web I saw a children's card that you
might get a chuckle out of:
https://www.amazon.com/Unknown-GAM-160-01-Poopyhead-Card-Game/dp/B010Q1HMZ8
It seems there is also a board game called "Exploding Kittens". What is
the world coming to?
http://www.explodingkittens.com/
Perhaps you would be interested in a free COBOL compiler for Windows as
a Christmas gift?
http://www.arnoldtrembley.com/GnuCOBOL.htm
Sysop: | DaiTengu |
---|---|
Location: | Appleton, WI |
Users: | 1,007 |
Nodes: | 10 (1 / 9) |
Uptime: | 185:36:13 |
Calls: | 13,137 |
Calls today: | 2 |
Files: | 186,574 |
D/L today: |
497 files (115M bytes) |
Messages: | 3,305,079 |