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

performing airthmetic with numeric fields


IBM Mainframe Forums -> DFSORT/ICETOOL
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
Kmr.deepakcs

New User


Joined: 11 Oct 2013
Posts: 37
Location: India

PostPosted: Thu Oct 24, 2013 5:54 pm
Reply with quote

Dear experts,
I have one query which is as follows.

I was studying the topic arithmetic with numeric fields by sort.
The point is that i stuck on one thing where it saying when ua want to subtract a pd data to another data you have to check its decimal point before doing arithmetic calculation.
"In order to do arithmetic on these fields, you must ensure that the integer and decimal parts of the numbers match up correctly. For example, in the first record, the first PD value is +1524900810 representing +15249008.10 and the second PD value is +20000 representing +20.000. In order to subtract the second PD value from the first PD value, you need to put them in the following forms:
+15249008.100
+00000020.000"
OUTREC FIELDS=(1,8,
5X,
((11,6,PD,MUL,+10),SUB,31,7,PD),
EDIT=(SI,III,III,IIT.TTT),SIGNS=(,-))
..and we have to multiply by 10 to check first pd decimal point.
Bt i am confusing how it will check decimal point after multiplied by 10.

Please clear me....

Deepak kumar
Back to top
View user's profile Send private message
Kmr.deepakcs

New User


Joined: 11 Oct 2013
Posts: 37
Location: India

PostPosted: Thu Oct 24, 2013 5:58 pm
Reply with quote

Code:
OUTREC FIELDS=(1,8,
     5X,
     ((11,6,PD,MUL,+10),SUB,31,7,PD),
       EDIT=(SI,III,III,IIT.TTT),SIGNS=(,-))
Back to top
View user's profile Send private message
Akatsukami

Global Moderator


Joined: 03 Oct 2009
Posts: 1788
Location: Bloomington, IL

PostPosted: Thu Oct 24, 2013 6:13 pm
Reply with quote

"It" (i.e., your sort product) will not check the decimal point; packed decimal fields do not carry decimal points. In HLLs such COBOL and PL/I, there are various means of coding variables to ensure that packed decimal numbers are aligned properly. In *sort control cards, however, you must do it yourself; that is why you multiply the first number by 10; you know -- but have no means of sharing the information with *sort -- that it must be shifted one place to the left.
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 -> DFSORT/ICETOOL

 


Similar Topics
Topic Forum Replies
No new posts Issues Converting From ZD to Signed N... DFSORT/ICETOOL 4
No new posts Convert HEX to Numeric DB2 3
No new posts Find a record count/numeric is multip... COBOL Programming 1
No new posts Concatenate 2 fields (usage national)... COBOL Programming 2
No new posts Cobol-DB2 Programming - Better perfor... DB2 1
Search our Forums:

Back to Top