Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

Can DFSORT "chop" variable length records into mul

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> DFSORT/ICETOOL
View previous topic :: :: View next topic  
Author Message
Joel

New User


Joined: 07 Feb 2006
Posts: 11

PostPosted: Wed Mar 01, 2006 4:51 am    Post subject: Can DFSORT "chop" variable length records into mul
Reply with quote

Can DFSORT "chop" variable-length records into multiple fixed-length records ? I have written a generic Assembler program to do it but I
wonder if there is a trick to do it with DFSORT.

Sample input:
---------------
ABCDEFGHIJKLMNOPQRSTUVWXYZ
1234567890
...
...

Sample output (output lrecl=4, pad last record with blanks):
--------------------------------------------------------------------
ABCD
EFGH
IJKL
MNOP
QRST
UVWX
YZ
1234
5678
90
...
...
Back to top
View user's profile Send private message

Frank Yaeger

DFSORT Moderator


Joined: 15 Feb 2005
Posts: 7130
Location: San Jose, CA

PostPosted: Wed Mar 01, 2006 6:23 am    Post subject:
Reply with quote

Here's a DFSORT/ICETOOL job that will do what you asked for. I assumed your input file had LRECL=32, but the OUTREC parameter can be changed appropriately for other LRECLs.

Code:

//S1    EXEC  PGM=ICETOOL
//TOOLMSG   DD  SYSOUT=*
//DFSMSG   DD  SYSOUT=*
//IN DD DSN=...  input file (VB/32)
//T1 DD DSN=&&T1,UNIT=SYSDA,SPACE=(CYL,(5,5)),DISP=(,PASS)
//OUT DD DSN=... output file (FB/4)
//TOOLIN   DD    *
COPY FROM(IN) USING(CTL1)
COPY FROM(T1) TO(OUT) USING(CTL2)
/*
//CTL1CNTL DD *
   OUTFIL FNAMES=T1,VTOF,
     OUTREC=(5,4,/,9,4,/,13,4,/,17,4,/,21,4,/,25,4,/,29,4)
/*
//CTL2CNTL DD *
   OMIT COND=(1,4,CH,EQ,C' ')
/*
Back to top
View user's profile Send private message
Joel

New User


Joined: 07 Feb 2006
Posts: 11

PostPosted: Wed Mar 01, 2006 9:17 pm    Post subject: Re: Can DFSORT "chop" variable length records into
Reply with quote

Here's my program in case anyone wants it:

Code:

        @GEN1 CHOP                                                     
         OPEN  (SYSUT1,(INPUT),SYSUT2,(OUTPUT))                         
         LH    4,SYSUT2+82                                             
         LA    6,DUMMY                                                 
DO01     GET   SYSUT1                                                   
           LR    5,1                                                   
           LH    9,0(,5)                                               
           LR    0,5                                                   
           LR    2,6                                                   
           LA    1,2(,9)                                               
           LR    3,1                                                   
           CLCL  0,2                                                   
             BE    DO01                                                 
           LR    6,5                                                   
           MVC   RC,=A(1)                                               
           LA    11,2(,5)                                               
DO02       PUT   SYSUT2                                                 
             LR    10,1                                                 
IF01         CR    9,4                                                 
               BNL   ELSE01                                             
               LR    3,9                                               
               B     EIF01                                             
ELSE01         LR    3,4                                               
EIF01        DS    0H                                                   
             LR    0,10                                                 
             LR    2,11                                                 
             LR    1,3                                                 
             MVCL  0,2                                                 
             AR    11,4                                                 
             SR    9,4                                                 
               BP    DO02                                               
               BZ    DO01                                               
           LA    0,0(4,9)                                               
           AR    0,10                                                   
           LPR   1,9                                                   
           ICM   3,B'1000',=C' '                                       
           MVCL  0,2                                                   
           B     DO01                                                   
         @EXODUS                                                       
DUMMY    DC    H'5',CL5'DUMMY'                                         
SYSUT1   DCB   DDNAME=SYSUT1,DSORG=PS,MACRF=GL,EODAD=EXIT               
SYSUT2   DCB   DDNAME=SYSUT2,DSORG=PS,MACRF=PL,RECFM=FB
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> DFSORT/ICETOOL All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts Removing Duplicates based on certain ... chandracdac DFSORT/ICETOOL 8 Fri Dec 09, 2016 4:40 am
No new posts Limit duplicate records in the SORT pshongal SYNCSORT 6 Mon Nov 21, 2016 12:54 pm
No new posts SQZ pipe delimited file with 1 column... Rick Silvers DFSORT/ICETOOL 2 Sun Nov 06, 2016 8:11 pm
No new posts Joinkeys operation when key1 and key2... Susanta DFSORT/ICETOOL 5 Wed Nov 02, 2016 5:35 pm
No new posts How to get the remainder and quotient... vnktrrd DFSORT/ICETOOL 2 Mon Oct 31, 2016 10:59 am


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us