Kolusu, thanks for the fix - I had not noticed this problem in my test
cases, but now believe I have a more accurate process. I appreciate your
time and attention! Have a magnificent Monday!

On Fri, Apr 21, 2017 at 5:51 PM, Sri h Kolusu <skol...@us.ibm.com> wrote:

> Bill,
>
> I apologize for the oversight in parsing the dataset name.  As soon as I
> sent my earlier reply I realized that I did not cover all the scenarios
> for the dataset name.  If the HLQ is less than 6 bytes the parse would
> grab the time which starts before the dataset name.
>
> for example the records in red color
>
> Dec 29 10:23 HOLDDATA.BIN
> Apr  3 12:28 REPORT1.TXT
> Nov 15 11:33 NEWDATA.BIN
> Nov 15 11:34 a.BIN
> Nov 15 11:35 abc.BIN
> Nov 15 11:36 abcd.BIN
> Nov 15 11:37 abcde.BIN
> Nov 15 11:38 abcdef.BIN
> Nov 15 11:39 abcdefg.BIN
> Nov 15 11:40 abcdefgh.BIN
>
> So you need to change your INREC IFTHEN statements to handle these dataset
> names.  Here are the updated control cards ( Only the INREC IFTHEN
> statments need to be changed.)
>
> INREC IFOUTLEN=80,
>       IFTHEN=(WHEN=(1,3,CH,EQ,C'250'),
>        PARSE=(%01=(STARTAFT=C'"',ENDBEFR=C'"',FIXLEN=50)),
>        BUILD=(C'250 ',%01)),
>
>       IFTHEN=(WHEN=(1,3,CH,EQ,C'EZA'),
>        PARSE=(%=(ENDAT=C'.BIN'),
>             %02=(SUBPOS=12,FIXLEN=12)),
>        BUILD=(C'BIN ',%02),HIT=NEXT),
>
>       IFTHEN=(WHEN=(1,3,CH,EQ,C'BIN'),
>       OVERLAY=(5:5,12,JFY=(SHIFT=LEFT)),HIT=NEXT),
>
>       IFTHEN=(WHEN=(1,3,CH,EQ,C'BIN',AND,5,8,SS,EQ,C' '),
>        PARSE=(%03=(ABSPOS=5,STARTAFT=C' ',ENDAT=C'.BIN',FIXLEN=12)),
>         BUILD=(01:C'BIN ',56:%03)),
>
>       IFTHEN=(WHEN=(1,3,CH,EQ,C'BIN',AND,5,8,SS,NE,C' '),
>         BUILD=(01:C'BIN ',56:5,12))
>
>
>
> Further if you have any questions please let me know
>
> Thanks,
> Kolusu
> DFSORT Development
>
>
>
> From:   Bill Ashton <bill00ash...@gmail.com>
> To:     IBM-MAIN@LISTSERV.UA.EDU
> Date:   04/21/2017 01:41 PM
> Subject:        Re: How to parse rows using SORT
> Sent by:        IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU>
>
>
>
> Thanks, Kolusu - that is better now! I will go and learn about HIT=NEXT,
> as
> I have not run into that before.
>
> Have a good weekend!
>
>
> On Fri, Apr 21, 2017 at 4:24 PM, Sri h Kolusu <skol...@us.ibm.com> wrote:
>
> > Bill,
> >
> > You really don't need to complicate the control to get the desired
> > results. I have optimized your control cards a bit which would give you
> > the desired results
> >
> > //SYSIN    DD *
> >   OPTION COPY
> >   INCLUDE COND=(1,003,CH,EQ,C'250',OR,
> >                 1,100,SS,EQ,C'.BIN ')
> >
> >   INREC IFOUTLEN=80,
> >         IFTHEN=(WHEN=(1,3,CH,EQ,C'250'),
> >          PARSE=(%01=(STARTAFT=C'"',ENDBEFR=C'"',FIXLEN=50)),
> >          BUILD=(C'250 ',%01)),
> >
> >         IFTHEN=(WHEN=(1,3,CH,EQ,C'EZA'),
> >          PARSE=(%=(ENDAT=C'.BIN'),
> >               %02=(SUBPOS=12,FIXLEN=12)),
> >          BUILD=(C'BIN ',%02),HIT=NEXT),
> >
> >         IFTHEN=(WHEN=(1,3,CH,EQ,C'BIN'),
> >          PARSE=(%03=(STARTAFT=C' ',ENDAT=C'.BIN',FIXLEN=12)),
> >       BUILD=(01:C'BIN ',56:%03))
> >
> >   OUTREC IFTHEN=(WHEN=GROUP,BEGIN=(1,3,CH,EQ,C'250'),PUSH=(05:5,50))
> >
> >   OUTFIL INCLUDE=(1,3,CH,EQ,C'BIN'),
> >   BUILD=(05,75,SQZ=(SHIFT=LEFT,LEAD=C'get  ',MID=C'/',
> >                     TRAIL=C' //DD:LIST',LENGTH=80))
> > //*
> >
> > The output from this job is
> >
> > get  /sys01/new2017/input/TESTFL1.BIN //DD:LIST
> > get  /sys12/y2017/processed/HOLDDATA.BIN //DD:LIST
> > get  /sys12/y2017/processed/NEWDATA.BIN //DD:LIST
> >
> >
> > Further if you have any questions please let me know
> >
> > Thanks,
> > Sri Hari Kolusu
> > DFSORT Development
> > IBM Corporation
> > Email: skol...@us.ibm.com
> > Phone: 520-799-2237 Tie Line: 321-2237
> >
> > IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> wrote on
> > 04/21/2017 12:45:56 PM:
> >
> > > From: Bill Ashton <bill00ash...@gmail.com>
> > > To: IBM-MAIN@LISTSERV.UA.EDU
> > > Date: 04/21/2017 12:46 PM
> > > Subject: Re: How to parse rows using SORT
> > > Sent by: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU>
> > >
> > > Hi Kolusu, I think I messed up my original note by trying to keep the
> > > characters in order.
> > >
> > > I have attached a file that shows my JCL with input and output
> expected.
> > > The current run, though has a problem with the Parse for %02 and %03.
> I
> > > hope you can help me with this - it is probably simple.
> > >
> > > Thanks!
> > > B
> > >
> > > On Fri, Apr 21, 2017 at 2:05 PM, Sri h Kolusu <skol...@us.ibm.com>
> > wrote:
> > >
> > > > Bill,
> > > >
> > > > Why bother about the position. From the looks of it, you need to
> pick
> > the
> > > > last qualifier. So go find the last byte space and then subtract 12
> > bytes
> > > > to get to your dataset name.
> > > >
> > > > something like this
> > > >
> > > > //STEP0100 EXEC PGM=SORT
> > > > //SYSOUT   DD SYSOUT=*
> > > > //SORTIN   DD *
> > > >
> >
> EZA2284I`-RW-R--R--```1`FTPUSER``FTPUSERS```42160`SEP``2``2016`TESTFL1.BIN
> > > >
> > > >
> > EZA2284I`-RW-R--R--```1`FTPUSER``FTPUSERS``442160`NOV`10`15:26`TEST2.TXT
> > > > //SORTOUT  DD SYSOUT=*
> > > > //SYSIN    DD *
> > > >   OPTION COPY
> > > >   INREC IFTHEN=(WHEN=INIT,
> > > >          PARSE=(%=(ENDBEFR=C' '),
> > > >                 %01=(SUBPOS=12,FIXLEN=12)),
> > > >          BUILD=(%01)),
> > > >
> > > >         IFTHEN=(WHEN=(1,12,SS,EQ,C'`'),
> > > >          PARSE=(%02=(STARTAFT=C'`',FIXLEN=12)),
> > > >          BUILD=(%02))
> > > >
> > > >   OUTREC BUILD=(1,12,SQZ=(SHIFT=LEFT,LENGTH=80,
> > > >                          LEAD=C' get  /thisdirectory/',
> > > >                          TRAIL=C' //DD:LIST'))
> > > > //*
> > > >
> > > >
> > > > The outout from this job is
> > > >
> > > >  get  /thisdirectory/TESTFL1.BIN //DD:LIST
> > > >  get  /thisdirectory/TEST2.TXT //DD:LIST
> > > >
> > > >
> > > > Further if you have any questions please let me know
> > > >
> > > >
> > > > Thanks,
> > > > Kolusu
> > > > DFSORT Development
> > > > IBM Corporation
> > > >
> > > >
> > > >
> > > > From:   Bill Ashton <bill00ash...@gmail.com>
> > > > To:     IBM-MAIN@LISTSERV.UA.EDU
> > > > Date:   04/21/2017 10:47 AM
> > > > Subject:        How to parse rows using SORT
> > > > Sent by:        IBM Mainframe Discussion List
> > <IBM-MAIN@LISTSERV.UA.EDU>
> > > >
> > > >
> > > >
> > > > Hello friends!
> > > >
> > > > I just ran into a problem, and am a bit confused how to correct
> this.
> > > >
> > > > I am reading the output of an FTP list command, and using SORT to
> > capture
> > > > and format the FTP GET commands I need. This process is working fine
> > for
> > > > the most part, and it produces the correct commands most of the
> time.
> > > > However, I just noticed that the file list is different in one of my
> > > > folders, causing me to lose the first character of the filename.
> > > >
> > > > I had been using this:
> > > > PARSE=(%02=(ABSPOS=65,ENDBEFR=C'.',FIXLEN=8),
> > > >        %03=(FIXLEN=3)),
> > > >
> > > > but now I find that one of my folders starts the file name in pos
> 64,
> > and
> > > > not 65.
> > > >
> > > > Is there a way to not use ABSPOS=65, but instead to say I want to
> > start
> > > > following a space after Col 60? In Rexx, I could say to use the 10th
> > word,
> > > > but I don't want to change the SORT to Rexx now, as this input is
> > doing a
> > > > number of different things.
> > > >
> > > > Here is a sample of the file listing (with ` replacing blanks to
> keep
> > > > spacing intact):
> > > >
> > > >
> >
> EZA2284I`-rw-r--r--```1`ftpuser``ftpusers```42160`Sep``2``2016`TESTFL1.BIN
> > > >
> > EZA2284I`-rw-r--r--```1`ftpuser``ftpusers``442160`Nov`10`15:26`TEST2.TXT
> > > >
> > > > My output from the Sort is going to say
> > > > get  /thisdirectory/TESTFL1.BIN  //DD:LIST
> > > > get  /thisdirectory/TEST2.TXT    //DD:LIST
> > > >
> > > > Thanks for your help with this troublesome question!
> > > >
> > > > --
> > > > Thank you and best regards,
> > > > *Billy Ashton*
> > > >
> > > >
> ----------------------------------------------------------------------
> > > > For IBM-MAIN subscribe / signoff / archive access instructions,
> > > > send email to lists...@listserv.ua.edu with the message: INFO
> IBM-MAIN
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> ----------------------------------------------------------------------
> > > > For IBM-MAIN subscribe / signoff / archive access instructions,
> > > > send email to lists...@listserv.ua.edu with the message: INFO
> IBM-MAIN
> > > >
> > >
> > >
> > >
> > > --
> > > Thank you and best regards,
> > > *Billy Ashton*
> > >
> > > ----------------------------------------------------------------------
> > > For IBM-MAIN subscribe / signoff / archive access instructions,
> > > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
> > > [attachment "SORTFILE.txt" deleted by Sri h Kolusu/Silicon Valley/IBM]
> >
> >
> > ----------------------------------------------------------------------
> > For IBM-MAIN subscribe / signoff / archive access instructions,
> > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
> >
>
>
>
> --
> Thank you and best regards,
> *Billy Ashton*
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
>
>
>
>
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>



-- 
Thank you and best regards,
*Billy Ashton*

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to