Oops I noticed that you need both second and third qualifier. use the
following JCL
//STEP0100 EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD *
FIRST.SECOND.THIRD
SYS1.PARMLIB
SYS2.NPLEX1.FILE.NODE4
IBM.MAIN.LIST.PARSE.EXAMPLE
SYS1.GDG.CONLEY.TEST.G0005V00
//SORTOUT DD SYSOUT=*
//SYSIN DD *
OPTION COPY
INREC PARSE=(%=(ENDBEFR=C'.'),
%01=(ENDBEFR=C'.',ENDBEFR=C' ',REPEAT=2,FIXLEN=8)),
BUILD=(%01,%02)
OUTFIL OMIT=(1,8,CH,EQ,C' '),
BUILD=(1,16,SQZ=(SHIFT=LEFT,MID=C'.',LENGTH=17))
//*
The output of this JCL is
SECOND.THIRD
PARMLIB
NPLEX1.FILE
MAIN.LIST
GDG.CONLEY
Thanks,
Kolusu
DFSORT Development
IBM Corporation
----- Forwarded by Sri h Kolusu/Silicon Valley/IBM on 03/13/2015 10:47 AM
-----
Sri h Kolusu/Silicon Valley/IBM wrote on 03/13/2015 10:38:07 AM:
> From: Sri h Kolusu/Silicon Valley/IBM
> To: IBM Mainframe Discussion List <[email protected]>
> Date: 03/13/2015 10:38 AM
> Subject: Re: Need assembler trick to quickly get second and third
DSqualifiers
>
> Tom,
>
> It is not assembler but it is quite simple with DFSORT to extract
> the node names.
>
> //STEP0100 EXEC PGM=SORT
> //SYSOUT DD SYSOUT=*
> //SORTIN DD *
> FIRST.SECOND.THIRD
> SYS1.PARMLIB
> SYS2.NPLEX1.FILE.NODE4
> IBM.MAIN.LIST.PARSE.EXAMPLE
> SYS1.GDG.CONLEY.TEST.G0005V00
> //SORTOUT DD SYSOUT=*
> //SYSIN DD *
> OPTION COPY
> INREC PARSE=(%=(ENDBEFR=C'.',REPEAT=2),
> %01=(ENDBEFR=C'.',ENDBEFR=C' ',FIXLEN=8)),
> BUILD=(%01)
>
> OUTFIL OMIT=(1,8,CH,EQ,C' ')
> //*
>
> The output from this job is
>
> THIRD
> FILE
> LIST
> CONLEY
>
> If you notice we eliminated the 2 record which does not have a 3rd
qualifier.
>
> Further if you have any questions please let me know
>
> Thanks,
> Kolusu
> DFSORT Development
> IBM Corporation
> IBM Mainframe Discussion List <[email protected]> wrote on
> 03/13/2015 10:28:18 AM:
>
> > From: Pinnacle <[email protected]>
> > To: [email protected]
> > Date: 03/13/2015 10:28 AM
> > Subject: Need assembler trick to quickly get second and third DS
qualifiers
> > Sent by: IBM Mainframe Discussion List <[email protected]>
> >
> > I have a dataset FIRST.SECOND.THIRD, and I want to get SECOND.THIRD.
> > Normally I would loop to one character at a time to get to the '.',
but
> > I need performance here. I sure some of you assembler gurus could
give
> > me some inscrutable assembler to get there in like one or two
> > instructions. Thanks in advance!
> >
> > Regards,
> > Tom Conley
> >
> > --
> >
> >
> >
> > ----------------------------------------------------------------------
> > For IBM-MAIN subscribe / signoff / archive access instructions,
> > send email to [email protected] with the message: INFO IBM-MAIN
> >
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN