Yaeger-san, thank very much for telling me the way what I sould code DFSORT control cards.
But unfortunately KEYBEGIN parameter became 'OPERAND DEFINER ERROR' on my z/OS V1.12 (ADCD system) . Then I have checked DFSORT Application Programming Guide for z/OS V1.12, I could not find out KEYBEGIN parameter. Is KEYBEGIN a new keyword provided by new PTF? Is there another way to do same things without KEYBEGIN parameter? Because we don't have a chance to apply the PTF, if the KEYEGIN is provided by PTF. I appreciate your support. Minoru Massaki (M*M) 2012/2/28 Frank Yaeger <yae...@us.ibm.com>: > Minoru Massaki at IBM Mainframe Discussion List <IBM-MAIN@bama.ua.edu> > wrote on 02/27/2012 10:46:57 AM: >> I have to do following by DFSORT >> >> There is a data set which contains records with dsname, time, and >> status as following >> (dsname, time, status fields are fixed length) >> The records are sorted by dsname and time. >> >> dsn-aaa 08:00 open >> dsn-aaa 08:10 close >> dsn-aaa 08:15 delete >> dsn-bbb 07:55 delete >> dsn-ccc 08:05 open >> dsn-ccc 08:07 close >> >> I want to get a record by each dsname from multiple records as following. >> (each dsname has max 8 records(status)) >> >> dsn-aaa 08:00 open 08:10 close 08:15 delete >> dsn-bbb 07:55 delete >> dsn-ccc 08:05 open 08:07 close > > You can use a DFSORT/ICETOOL job like the following. I assumed your > records > were already in order by the dsname as implied by your example. If not, > remove the > OPTION COPY statement: > > //S1 EXEC PGM=ICETOOL > //TOOLMSG DD SYSOUT=* > //DFSMSG DD SYSOUT=* > //IN DD * > dsn-aaa 08:00 open > dsn-aaa 08:10 close > dsn-aaa 08:15 delete > dsn-bbb 07:55 delete > dsn-ccc 08:05 open > dsn-ccc 08:07 close > dsn-ddd 08:01 open > dsn-ddd 08:02 close > dsn-ddd 08:03 open > dsn-ddd 08:04 close > dsn-ddd 08:05 open > dsn-ddd 08:06 close > dsn-ddd 08:07 open > dsn-ddd 08:08 close > //OUT DD SYSOUT=* > //TOOLIN DD * > SPLICE FROM(IN) TO(OUT) ON(1,11,CH) KEEPNODUPS WITHEACH - > WITH(26,14) WITH(40,14) WITH(54,14) WITH(68,14) - > WITH(82,14) WITH(96,14) WITH(110,14) USING(CTL1) > //CTL1CNTL DD * > OPTION COPY > INREC IFTHEN=(WHEN=GROUP,KEYBEGIN=(1,11),PUSH=(125:SEQ=1)), > IFTHEN=(WHEN=(125,1,ZD,EQ,2),BUILD=(1,11,26:12,14)), > IFTHEN=(WHEN=(125,1,ZD,EQ,3),BUILD=(1,11,40:12,14)), > IFTHEN=(WHEN=(125,1,ZD,EQ,4),BUILD=(1,11,54:12,14)), > IFTHEN=(WHEN=(125,1,ZD,EQ,5),BUILD=(1,11,68:12,14)), > IFTHEN=(WHEN=(125,1,ZD,EQ,6),BUILD=(1,11,82:12,14)), > IFTHEN=(WHEN=(125,1,ZD,EQ,7),BUILD=(1,11,96:12,14)), > IFTHEN=(WHEN=(125,1,ZD,EQ,8),BUILD=(1,11,110:12,14)) > OUTFIL BUILD=(1,123) > /* > > Frank Yaeger - DFSORT Development Team (IBM) - yae...@us.ibm.com > Specialties: JOINKEYS, FINDREP, WHEN=GROUP, ICETOOL, Symbols, Migration > > => DFSORT/MVS is on the Web at http://www.ibm.com/storage/dfsort > > ---------------------------------------------------------------------- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- 全先 実 - Minoru Massaki (M*M) E-mail: mmass...@gmail.com ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN