MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

'internal' sort in block of data
Goto page Previous  1, 2
 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Utilities
View previous topic :: View next topic  
Author Message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12378
Topics: 75
Location: San Jose

PostPosted: Wed Jun 06, 2007 9:58 am    Post subject: Reply with quote

rover,

Try this job

Code:

//STEP0100 EXEC PGM=ICETOOL
//TOOLMSG  DD SYSOUT=*
//DFSMSG   DD SYSOUT=*
//IN       DD DSN=Your input file,
//            DISP=SHR
//T1       DD DSN=&&T1,DISP=(,PASS),SPACE=(CYL,(x,y),RLSE)
//T2       DD DSN=&&T2,DISP=(,PASS),SPACE=(CYL,(x,y),RLSE)
//T3       DD DSN=&&T3,DISP=(,PASS),SPACE=(CYL,(x,y),RLSE)
//OUT      DD DSN=your output file,
//            DISP=(NEW,CATLG,DELETE),
//            UNIT=SYSDA,
//            SPACE=(CYL,(X,Y),RLSE)
//TOOLIN   DD *
  SPLICE FROM(IN) TO(T1) ON(1973,08,CH) WITH(1,1973) WITHALL -
  USING(CTL1) KEEPBASE
  SPLICE FROM(T1) TO(T2) ON(1973,19,CH) WITH(1,1962) -
  KEEPBASE WITHALL KEEPNODUPS
  SORT FROM(T2) TO(T3) USING(CTL2)
  SORT FROM(T3) TO(OUT) USING(CTL3)
//CTL1CNTL DD *
  SORT FIELDS=(1973,8,CH,A,
               1981,3,CH,D)

  INREC IFTHEN=(WHEN=INIT,
       OVERLAY=(1963:10X,
                1973:SEQNUM,8,ZD,
                1981:3X)),
        IFTHEN=(WHEN=(05,06,CH,NE,C'HEADER'),
       OVERLAY=(1955:SEQNUM,8,ZD,
                1973:1973,8,ZD,SUB,1955,8,ZD,M11,LENGTH=8),HIT=NEXT),
        IFTHEN=(WHEN=(05,02,CH,EQ,C'01',AND,
                      41,03,SS,EQ,C'YCF,ZAQ'),
       OVERLAY=(1981:41,3)),
        IFTHEN=(WHEN=(05,02,CH,EQ,C'04'),
       OVERLAY=(1963:124,10)),
        IFTHEN=(WHEN=NONE,
       OVERLAY=(1973:SEQNUM,8,ZD))

  OUTFIL FNAMES=T1,
         IFTHEN=(WHEN=INIT,OVERLAY=(1984:SEQNUM,8,ZD)),
         IFTHEN=(WHEN=(05,02,CH,EQ,C'04'),
                 OVERLAY=(1984:SEQNUM,8,ZD)),
          IFTHEN=(WHEN=NONE,
                  OVERLAY=(1992:SEQNUM,8,ZD,
                           1984:1984,8,ZD,SUB,1992,8,ZD,M11,LENGTH=8))
//CTL2CNTL DD *
  OPTION EQUALS
  SORT FIELDS=(1973,08,CH,A,
               1963,10,CH,A,
               1984,08,CH,A)
  INREC IFTHEN=(WHEN=(1981,03,SS,NE,C'YCF,ZAQ'),
       OVERLAY=(1963:10X))


//CTL3CNTL DD *
  SORT FIELDS=(1973,08,CH,A,
               1981,03,CH,A)

  INREC IFTHEN=(WHEN=(05,06,CH,EQ,C'HEADER'),
       OVERLAY=(1981:3X))

  OUTFIL FNAMES=OUT,VLTRIM=C' ',
  IFOUTLEN=1954,IFTHEN=(WHEN=INIT,BUILD=(1,4,5))
/*


Hope this helps...

Cheers

Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
rover
Beginner


Joined: 15 May 2007
Posts: 9
Topics: 2

PostPosted: Tue Jun 12, 2007 2:17 pm    Post subject: Reply with quote

kolusu,

many thanks for help and solution - works great.
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12378
Topics: 75
Location: San Jose

PostPosted: Tue Jun 12, 2007 2:25 pm    Post subject: Reply with quote

rover,

Thanks for the feedback. Glad I could Help 8)
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Utilities All times are GMT - 5 Hours
Goto page Previous  1, 2
Page 2 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group