Bill,

Here is a DFSORT JOINKEYS job which will give you the desired results 
similar to splice


//STEP0100 EXEC PGM=SORT 
//SYSOUT   DD SYSOUT=* 
//INA      DD * 
VICKY 
FRANK 
CARRIE 
HOLLY 
PAUL 
//INB      DD * 
KAREN 
HOLLY 
CARRIE 
VICKY 
MARY 
//OUT12    DD SYSOUT=* 
//OUT1     DD SYSOUT=* 
//OUT2     DD SYSOUT=* 
//SYSIN    DD * 
  OPTION COPY 
  JOINKEYS F1=INA,FIELDS=(1,10,A) 
  JOINKEYS F2=INB,FIELDS=(1,10,A) 
  JOIN UNPAIRED 
  REFORMAT FIELDS=(F1:1,10,?,F2:1,10) 

  OUTFIL FNAMES=OUT12,INCLUDE=(11,1,CH,EQ,C'B'),BUILD=(1,10) 
  OUTFIL FNAMES=OUT1,INCLUDE=(11,1,CH,EQ,C'1'),BUILD=(1,10) 
  OUTFIL FNAMES=OUT2,INCLUDE=(11,1,CH,EQ,C'2'),BUILD=(12,10) 
//* 


Joinkeys is explained in detail here

https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.2.0/com.ibm.zos.v2r2.icea100/joinkeys.htm

Also here are the examples (look up example 5 )

https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.1.0/com.ibm.zos.v2r1.icea100/ice2ca_JOINKEYS_application_examples.htm


Further if you have any questions please send an email to our hotline 
(dfs...@us.ibm.com) or you can mail me directly.

Thanks,
Sri Hari Kolusu
DFSORT Development
IBM Corporation

IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> wrote on 
10/26/2017 11:41:15 PM:

> From: "George, William@FTB" <bill.geo...@ftb.ca.gov>
> To: IBM-MAIN@LISTSERV.UA.EDU
> Date: 10/26/2017 11:41 PM
> Subject: Re: ICETOOL - Question regarding a statement in the ICETOOL 
Guide
> Sent by: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU>
> 
> Thanks Sri!
> JOINKEYS... that's a new one on me.  I guess I have an outdated DFSORT 
manual.
> Here's the link I have: 
http://publibz.boulder.ibm.com/epubs/pdf/ice1ca30.pdf
> 
> Thanks again
> Bill
> 
> -----Original Message-----
> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU
> ] On Behalf Of Sri h Kolusu
> Sent: Thursday, October 26, 2017 10:56 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: ICETOOL - Question regarding a statement in the ICETOOL 
Guide
> 
> George,
> 
> It was a typo in our publications, it should be 1-10 instead of 1-3.
> The sorting of 1-10 bytes is done with ON statement on SPLICE. 
> Please look at the DFSMSG dataset and you will see the SPLICE 
> control cards generates the SORT statement with 1,10,CH,A
> 
> We will update our pubs. Thanks for bringing it to our attention.
> 
> 
>  "We sort the records of T1 on positions 1-10 and splice the second 
> id byte for matching records. We use KEEPNODUPS to keep non-
> duplicate records. 
> 
> 
> Just an fyi, SPLICE is an Older technique to find the matching records. 
> Ideally we suggest using JOINKEYS
> 
> 
> Thanks,
> Sri Hari Kolusu
> DFSORT Development
> IBM Corporation
> 
> IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> wrote on
> 10/26/2017 03:09:04 AM:
> 
> > From: "George, William@FTB" <bill.geo...@ftb.ca.gov>
> > To: IBM-MAIN@LISTSERV.UA.EDU
> > Date: 10/26/2017 03:09 AM
> > Subject: ICETOOL - Question regarding a statement in the ICETOOL Guide 

> > Sent by: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU>
> > 
> > I am confused about a statement I'm seeing in the DFSORT - ICETOOL 
> > Chapter and its example:
> > Example 3 - Create files with matching and non-matching records I've 
> > copied the example below and my question is regarding the last line 
> > below and it statement on sorting:
> > We sort the records of T1 on positions 1-3 and splice the second id 
> > byte for matching records.
> > 
> > Where in the JCL code does it state to sort the T1 records on 
> > positions
> 1-3??
> > 
> > //S3 EXEC PGM=ICETOOL
> > //TOOLMSG DD SYSOUT=*
> > //DFSMSG DD SYSOUT=*
> > //IN1 DD *
> > Vicky
> > Frank
> > Carrie
> > Holly
> > Paul
> > /*
> > //IN2 DD *
> > Karen
> > Holly
> > Carrie
> > Vicky
> > Mary
> > /*
> > //OUT12 DD SYSOUT=*
> > //OUT1 DD SYSOUT=*
> > //OUT2 DD SYSOUT=*
> > //T1 DD DSN=&&T1,DISP=(MOD,PASS),UNIT=SYSDA,SPACE=(TRK,(5,5))
> > //TOOLIN DD *
> >    COPY FROM(IN1) TO(T1) USING(CTL1)
> >    COPY FROM(IN2) TO(T1) USING(CTL2)
> >    SPLICE FROM(T1) TO(OUT12) ON(1,10,CH) WITH(13,1) USING(CTL3)
> KEEPNODUPS
> > /*
> > //CTL1CNTL DD *
> >    OUTREC FIELDS=(1,10,12:C'11')
> > /*
> > //CTL2CNTL DD *
> >    OUTREC FIELDS=(1,10,12:C'22')
> > /*
> > //CTL3CNTL DD *
> >    OUTFIL FNAMES=OUT12,INCLUDE=(12,2,CH,EQ,C'12'),OUTREC=(1,10)
> >    OUTFIL FNAMES=OUT1,INCLUDE=(12,2,CH,EQ,C'11'),OUTREC=(1,10)
> >    OUTFIL FNAMES=OUT2,INCLUDE=(12,2,CH,EQ,C'22'),OUTREC=(1,10)
> > /*
> > 
> > We copy the IN1 records to the T1 data set and add an identifier of 
> > '11' to show they come from FILE1.
> >  We copy the IN2 records to the end (MOD) of the T1 data set and add 
> > an identifier of '22' to show they come from FILE2.
> >  We sort the records of T1 on positions 1-3 and splice the second id 
> > byte for matching records.
> > 
> > 
> > Thanks for any insights
> > Bill
> > 
> > ______________________________________________________________________
> > CONFIDENTIALITY NOTICE: This email from the State of California is for 

> > the sole use of the intended recipient and may contain confidential 
> > and privileged information. Any unauthorized review or use, including 
> > disclosure or distribution, is prohibited. If you are not the intended 

> > recipient, please contact the sender and destroy all copies of this 
> > email.
> > 
> > ----------------------------------------------------------------------
> > 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
> 
> ----------------------------------------------------------------------
> 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

Reply via email to