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

Formatting VB File


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

New User


Joined: 20 Sep 2007
Posts: 97
Location: India

PostPosted: Mon Mar 20, 2017 12:29 pm
Reply with quote

Hi,
I have a I/P File with sample records below:
Code:
ABC|1234567|bla bla bla...|bla bla bla|....|   |
DEF|32145789|horse  horse|horse|hor|Horse Mouth
GHI|754568|UniCORM|UNICORN ROAMING|OH MY GOD   |UNICORM ROAMING


I need to have a O/P file with 1st 2 fields removed. So the O/P File withh have:
ABC|1234567| Removed from 1st record
DEF|32145789| Removed from 2nd recoerd
GHI|754568| Removed from 3rd record
... and so on for all the records.

Here are the consideration we need to have:
1. I/P File is in huge 'VB' format & O/P file is desired in the same format
2. There are multiple spaces between records that should not be Squeezeed
3. 1st 3 byte is always populated with characters other than Spaces
4. 1st field has a Max length of 3 bytes while the 2nd field has a Max length of 15 bytes
5. There are 184 fields delimited by '|' with last field is not appended with '|'

I tried using PARSE but need to provide a FIXLEN (Max 20,000 bytes). Then by "SQZ"ing the record, all the inlaying spaces are squized.

Can you please help me use ICETOOL to have the desired file achieved?
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7310
Location: Inside the Matrix

PostPosted: Mon Mar 20, 2017 1:22 pm
Reply with quote

Don't SQZ. Just use VLTRM=C' ' on OUTFIL.
Back to top
View user's profile Send private message
Learncoholic

New User


Joined: 20 Sep 2007
Posts: 97
Location: India

PostPosted: Mon Mar 20, 2017 2:48 pm
Reply with quote

Thanks Bill,
This worked for me. I used the below Control Card:

Code:
OUTFIL FNAMES=OUTDD01,VLTRIM=C' ',               
             PARSE=(%001=(ENDBEFR=C'|',FIXLEN=15),
             %002=(ENDBEFR=C'|',FIXLEN=15),       
             %003=(FIXLEN=20000)),               
      BUILD=(1,4,%003)                           


Thanks a Lot.
Back to top
View user's profile Send private message
Arun Raj

Moderator


Joined: 17 Oct 2006
Posts: 2481
Location: @my desk

PostPosted: Mon Mar 20, 2017 6:29 pm
Reply with quote

If there are input fields to be ignored, then a '%=' would do for each of those.
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 Get two files from one file with diff... DFSORT/ICETOOL 10
No new posts View GDG data which is copied from a ... JCL & VSAM 2
No new posts How to read unpacked field created in... DFSORT/ICETOOL 11
No new posts How to add 2 digits to COMP-3 file? DFSORT/ICETOOL 11
No new posts VSAM file Storage Calculation JCL & VSAM 3
Search our Forums:

Back to Top