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

Create totals from negative and positive values


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

Active User


Joined: 20 May 2010
Posts: 121
Location: canada

PostPosted: Thu Oct 03, 2013 3:16 am
Reply with quote

Hi, Please help me:

I have file with 3 columns A - flag, B - amount, C- amount. this is sample:

F 100 200
K -10 100
K 30 -30
F -15 -20
F 20 -15
K 10 10

I need neg & pos totals by flags:

Flag column B (+) column B(-) column C (+) column C (-)
F 120 -15 200 -35
K 40 -10 110 -30

is it possible in sort or icetool?

Thanks.
Back to top
View user's profile Send private message
anatol

Active User


Joined: 20 May 2010
Posts: 121
Location: canada

PostPosted: Thu Oct 03, 2013 3:47 am
Reply with quote

better in code - to see the positions


Code:
 F    100   200 
 K    -10   100 
 K     30   -30 
 F    -15   -20 
 F     20   -15 
 K     10    10 


I need:

Code:
FLAG COLUMN B (+) COLUMN B(-) COLUMN C (+) COLUMN C (-)         
F       120         -15           200          -35               
K        40         -10           110          -30               
Back to top
View user's profile Send private message
Skolusu

Senior Member


Joined: 07 Dec 2007
Posts: 2205
Location: San Jose

PostPosted: Thu Oct 03, 2013 4:13 am
Reply with quote

anatol,

It is tough to provide solutions with least details. You haven't mentioned anything about

1. The LRECL or RECFM of the Input/Output file
2. The length of each field to be summed.
3. The format of the field to be summed is it display or binary zoned decimal or packed decimal fields?


Assuming your input is display numeric fields(SFF) format, you can follow the below steps to get the desired results.


1. Create Key + 4slots of Packed decimal zeros and put the numeric values at the end say pos 81.

2. Use INREC IFTHEN to check for the values at position 81 for the length of the each field to find a space or plus sign for positive numeric values and then OVERLAY the 1 zero packed decimal slot with the value at 81 treating it as SFF and code HIT=NEXT for validating all the fields

3.Use another IFTHEN to check for the values at position 81 for the length of the each field to find a minus sign for negative numeric values and then OVERLAY the 2nd zero packed decimal slot with the value at 81 treating it as SFF and code HIT=NEXT for validating all the fields

4. Repeat step 2 and 3 for the next field which is at 87.

5. Sort on the key

6. SUM on the 4 PD slots

7. Using OUTREC convert the PD fields to readable format using edit masks
Back to top
View user's profile Send private message
anatol

Active User


Joined: 20 May 2010
Posts: 121
Location: canada

PostPosted: Thu Oct 03, 2013 5:08 am
Reply with quote

Thank you... the sample I've provided is not actual data - I need just idea for totals... it could be recfm=fb. lrecl=80... positions is irrelevant... need idea, i think I can create something, using your steps... Thanks
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 INCLUDE OMIT COND for Multiple values... DFSORT/ICETOOL 5
No new posts Replace Multiple Field values to Othe... DFSORT/ICETOOL 12
No new posts How to create a list of SAR jobs with... CA Products 3
No new posts Null values are considered in Total c... DFSORT/ICETOOL 6
No new posts create rexx edit Macro that edits the... CLIST & REXX 3
Search our Forums:

Back to Top