IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

How to handle a numeric of size 20 in cobol


IBM Mainframe Forums -> COBOL Programming
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
sourav_dasgupta

New User


Joined: 26 Dec 2007
Posts: 18
Location: Chennai, India

PostPosted: Wed Feb 04, 2009 6:57 pm
Reply with quote

Hi I have a file in which I have a field like the following
Code:

----+----3----+----4----+----5----+----6----+----7----+----8----+---
-0000000000049926.00                    00090047            20090202
 0000000000000157.40                    00090047            20090202
 0000000000111862.80                    00090047            20090202
 0000000000174050.96                    00090047            20090203
-0000000000326189.75 0000000000000000.0000090047            20090203
-0000000000243879.65                    00090047            20090203
-0000000000000517.82                    00090045            20090203
 0000000000332567.91 0000000000000000.0000010010            20090203
 0000000000090452.91 0000000000000000.0000010010            20090203


The field starting from 21st position till 40th position has to be treated like a numeric field and I have to add all these rows value for this position to find out the sum total in cobol. But cobol does not support numeric of more than 18 size. Can any one please help me to find out how to do that?
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 8696
Location: Dubuque, Iowa, USA

PostPosted: Wed Feb 04, 2009 7:01 pm
Reply with quote

Quote:
But cobol does not support numeric of more than 18 size.
Find the COBOL Programming Guide manual in the manuals link at the top of the page and look at the ARITH(EXTEND) compiler option. You will find your statement is not true if ARITH(EXTEND) is used.
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


Joined: 22 Apr 2006
Posts: 6250
Location: Mumbai, India

PostPosted: Wed Feb 04, 2009 7:21 pm
Reply with quote

or if you are restricted to an old compiler where the ARITH(EXTEND) option was not yet available, you could split the 20-digit numbers into "left" and "right" halves, add the right halves together, carry (if necessary) to the left halves, add the left halves, then concatenate the halves back together into your 20-digit number and then since you are limited to 18 digits, you'd need to define that 20-digit number as alphanumeric.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> COBOL Programming

 


Similar Topics
Topic Forum Replies
No new posts Issues Converting From ZD to Signed N... DFSORT/ICETOOL 4
No new posts Replace each space in cobol string wi... COBOL Programming 3
No new posts COBOL -Linkage Section-Case Sensitive COBOL Programming 1
No new posts COBOL ZOS Web Enablement Toolkit HTTP... COBOL Programming 0
No new posts Calling DFSORT from Cobol, using OUTF... DFSORT/ICETOOL 5
Search our Forums:

Back to Top