MVSFORUMS.com A Community of and for MVS Professionals
View previous topic :: View next topic
Author
Message
Mukunda Beginner Joined: 11 Dec 2002 Posts: 46 Topics: 15
Posted: Fri Jun 13, 2003 1:42 pm Post subject: Look up and change - When the position is not known
I want to mask certain positions in a flat file with unique values.
I'm aware that I can use 'look up and change' if the position is known.
Something like
Code: OUTFIL OUTREC=(1,4,6,2,CHANGE=(11,C'01',C'AX',
C'02',C'BX',
C'03',C'CX',
C'04',C'DX',
C'05',C'EX',
C'06',C'FX',
C'07',C'GX',
C'08',C'HX',
C'09',C'IX',
C'10',C'JX',
C'11',C'KX',
C'12',C'LX',
NOMATCH=(6,2)),
9,72)
Now, if the position is not known can I do this masking?
Say if '01' occurs anywhere from position 1 to 80, can I substitute it with 'AX'?
Back to top
slade Intermediate Joined: 07 Feb 2003 Posts: 266 Topics: 1 Location: Edison, NJ USA
Posted: Sat Jun 14, 2003 12:00 am Post subject:
Mukunda,
Do you have FileAid?
Back to top
Alain Benveniste Beginner Joined: 04 May 2003 Posts: 92 Topics: 4 Location: Paris, France
Posted: Sat Jun 14, 2003 5:38 am Post subject:
Hi Mukunda,
I have something working on paper with DFSORT but it must be tested not before monday ...
It will work if only you have the new UQ90053 installed at your site.
Can you confirm it to me ?
Thanks
Back to top
Mukunda Beginner Joined: 11 Dec 2002 Posts: 46 Topics: 15
Posted: Sat Jun 14, 2003 6:36 am Post subject:
Slade
I do have File-AID in my shop.
Alain
Unfortunately we do not have DFSORT here . We have only SYNCSORT. But would it be possible for you to post the solution? I'm just curious
Back to top
slade Intermediate Joined: 07 Feb 2003 Posts: 266 Topics: 1 Location: Edison, NJ USA
Back to top
coolman Intermediate Joined: 03 Jan 2003 Posts: 283 Topics: 27 Location: US
Posted: Mon Jun 16, 2003 3:42 am Post subject:
Mukunda,
How about this ?
Code:
C ALL '01' 'AX' 1 80
Hope this helps...
Cheers,
Coolman
________
Levin AE85 Last edited by coolman on Sat Feb 05, 2011 1:24 am; edited 1 time in total
Back to top
Mukunda Beginner Joined: 11 Dec 2002 Posts: 46 Topics: 15
Posted: Mon Jun 16, 2003 6:30 pm Post subject:
Coolman
It was really cool 8).
But I need to change, say the account number - IF 1234 THEN make it 3456.
Account number occurs only once in a record (position variable). C ALL would make ALL 1234's in the record to 3456. If by chance I have an amount field 1234, I will be changing it to 3456.
I guess best way is to approach through program. Thanks.
Back to top
coolman Intermediate Joined: 03 Jan 2003 Posts: 283 Topics: 27 Location: US
Posted: Mon Jun 16, 2003 11:22 pm Post subject:
Mukunda,
How do you identify Account Number in your input variable, or rather let me put it this way, how would differentiate between the Account Number and any other amount, which might be the same in your I/P file (since, Acct. No posn is variable).
Obviously, you will not a fixed record layout from whatever you say ?
Cheers,
Coolman.
________
Airflite Last edited by coolman on Sat Feb 05, 2011 1:25 am; edited 1 time in total
Back to top
Mukunda Beginner Joined: 11 Dec 2002 Posts: 46 Topics: 15
Posted: Tue Jun 17, 2003 12:21 pm Post subject:
Yes, Coolman. That is right. Kind of stupid question...eh . No more discussions needed on this. Thanks
Back to top
gore Beginner Joined: 10 Dec 2002 Posts: 46 Topics: 20 Location: Providence, RI
Posted: Wed Jun 18, 2003 3:58 am Post subject:
I would like to ask a question similar to this one:
I have to replace all instances of a character X'F7' with X'40' in a flat file. The character may be anywhere in the entire record length. I do not have file aid or startool. I have only syncsort in my shop. This has to be accompished through a JCL.
Any ideas on how to go about this.
Thanks,
Gore
Back to top
CaptBill Beginner Joined: 02 Dec 2002 Posts: 100 Topics: 2 Location: Pasadena, California, USA
Posted: Wed Jun 18, 2003 1:08 pm Post subject:
Why does it HAVE "...to be accomplished through a JCL"?
You could use ISPF EDIT in a Batch job and use the edit primary command
Back to top
Alain Benveniste Beginner Joined: 04 May 2003 Posts: 92 Topics: 4 Location: Paris, France
Posted: Wed Jun 18, 2003 6:43 pm Post subject:
Here is a way to CHANGE 2 bytes per 2 others by DFSORT (IBM) using the new SPLICE feature which comes with the UQ90053.
I agree that it looks like something a little bit too 'sophisticated' to do such a thing ...
Code:
//STEP0001 EXEC PGM=ICETOOL
//DFSMSG DD SYSOUT=*
//TOOLMSG DD SYSOUT=*
//OUTX DD SYSOUT=*
//TOOLIN DD *
COPY FROM(IN) USING(ICE0)
COPY FROM(OUT01) USING(ICE1)
COPY FROM(MERGE) USING(ICE2)
SPLICE FROM(MERGE) TO(OUT43) ON(81,5,ZD) WITHEACH -
WITH(03,2) WITH(05,2) WITH(07,2) WITH(09,2) WITH(11,2) -
WITH(13,2) WITH(15,2) WITH(17,2) WITH(19,2) WITH(21,2) -
WITH(23,2) WITH(25,2) WITH(27,2) WITH(29,2) WITH(31,2) -
WITH(33,2) WITH(35,2) WITH(37,2) WITH(39,2) WITH(41,2) -
WITH(43,2) WITH(45,2) WITH(47,2) WITH(49,2) WITH(51,2) -
WITH(53,2) WITH(55,2) WITH(57,2) WITH(59,2) WITH(61,2) -
WITH(63,2) WITH(65,2) WITH(67,2) WITH(69,2) WITH(71,2) -
WITH(73,2) WITH(75,2) WITH(77,2) WITH(79,2)
COPY FROM(OUT43) USING(ICE3)
COPY FROM(OUT01) USING(ICE1)
COPY FROM(MERGE) USING(ICE4)
SPLICE FROM(MERGE) TO(OUTX) ON(81,5,ZD) WITHEACH USING(ICE5) -
WITH(02,2) WITH(04,2) WITH(06,2) WITH(08,2) WITH(10,2) -
WITH(12,2) WITH(14,2) WITH(16,2) WITH(18,2) WITH(20,2) -
WITH(22,2) WITH(24,2) WITH(26,2) WITH(28,2) WITH(30,2) -
WITH(32,2) WITH(34,2) WITH(36,2) WITH(38,2) WITH(40,2) -
WITH(42,2) WITH(44,2) WITH(46,2) WITH(48,2) WITH(50,2) -
WITH(52,2) WITH(54,2) WITH(56,2) WITH(58,2) WITH(60,2) -
WITH(62,2) WITH(64,2) WITH(66,2) WITH(68,2) WITH(70,2) -
WITH(72,2) WITH(74,2) WITH(76,2) WITH(78,2) WITH(80,1)
/*
//IN DD *
01234567890123456789012345678901234567890123456789012345678901234567890123456789
12345678901234567890123456789012345678901234567890123456789012345678901234567890
/*
//OUT01 DD DSN=&&ST01FI01,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT02 DD DSN=&&ST01FI02,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT03 DD DSN=&&ST01FI03,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT04 DD DSN=&&ST01FI04,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT05 DD DSN=&&ST01FI05,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT06 DD DSN=&&ST01FI06,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT07 DD DSN=&&ST01FI07,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT08 DD DSN=&&ST01FI08,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT09 DD DSN=&&ST01FI09,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT10 DD DSN=&&ST01FI10,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT11 DD DSN=&&ST01FI11,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT12 DD DSN=&&ST01FI12,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT13 DD DSN=&&ST01FI13,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT14 DD DSN=&&ST01FI14,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT15 DD DSN=&&ST01FI15,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT16 DD DSN=&&ST01FI16,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT17 DD DSN=&&ST01FI17,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT18 DD DSN=&&ST01FI18,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT19 DD DSN=&&ST01FI19,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT20 DD DSN=&&ST01FI20,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT21 DD DSN=&&ST01FI21,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT22 DD DSN=&&ST01FI22,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT23 DD DSN=&&ST01FI23,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT24 DD DSN=&&ST01FI24,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT25 DD DSN=&&ST01FI25,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT26 DD DSN=&&ST01FI26,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT27 DD DSN=&&ST01FI27,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT28 DD DSN=&&ST01FI28,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT29 DD DSN=&&ST01FI29,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT30 DD DSN=&&ST01FI30,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT31 DD DSN=&&ST01FI31,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT32 DD DSN=&&ST01FI32,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT33 DD DSN=&&ST01FI33,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT34 DD DSN=&&ST01FI34,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT35 DD DSN=&&ST01FI35,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT36 DD DSN=&&ST01FI36,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT37 DD DSN=&&ST01FI37,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT38 DD DSN=&&ST01FI38,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT39 DD DSN=&&ST01FI39,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT40 DD DSN=&&ST01FI40,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT41 DD DSN=&&ST01FI41,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//OUT42 DD DSN=&&ST01FI42,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//MERGE DD DSN=*.OUT02,VOL=REF=*.OUT02,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT03,VOL=REF=*.OUT03,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT04,VOL=REF=*.OUT04,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT05,VOL=REF=*.OUT05,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT06,VOL=REF=*.OUT06,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT07,VOL=REF=*.OUT07,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT08,VOL=REF=*.OUT08,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT09,VOL=REF=*.OUT09,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT10,VOL=REF=*.OUT10,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT11,VOL=REF=*.OUT11,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT12,VOL=REF=*.OUT12,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT13,VOL=REF=*.OUT13,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT14,VOL=REF=*.OUT14,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT15,VOL=REF=*.OUT15,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT16,VOL=REF=*.OUT16,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT17,VOL=REF=*.OUT17,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT18,VOL=REF=*.OUT18,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT19,VOL=REF=*.OUT19,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT20,VOL=REF=*.OUT20,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT21,VOL=REF=*.OUT21,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT22,VOL=REF=*.OUT22,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT23,VOL=REF=*.OUT23,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT24,VOL=REF=*.OUT24,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT25,VOL=REF=*.OUT25,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT26,VOL=REF=*.OUT26,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT27,VOL=REF=*.OUT27,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT28,VOL=REF=*.OUT28,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT29,VOL=REF=*.OUT29,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT30,VOL=REF=*.OUT30,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT31,VOL=REF=*.OUT31,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT32,VOL=REF=*.OUT32,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT33,VOL=REF=*.OUT33,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT34,VOL=REF=*.OUT34,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT35,VOL=REF=*.OUT35,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT36,VOL=REF=*.OUT36,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT37,VOL=REF=*.OUT37,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT38,VOL=REF=*.OUT38,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT39,VOL=REF=*.OUT39,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT40,VOL=REF=*.OUT40,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT41,VOL=REF=*.OUT41,DISP=(SHR,DELETE,DELETE)
// DD DSN=*.OUT42,VOL=REF=*.OUT42,DISP=(SHR,DELETE,DELETE)
//OUT43 DD DSN=&&ST01FI43,
// DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=87)
//ICE0CNTL DD *
INREC FIELDS=(1:1,80,SEQNUM,5,ZD,START=0,INCR=1)
OUTFIL FNAMES=OUT01,
INCLUDE=(ALL),
OUTREC=(1:01,2,81:81,5,86:C'01',/,
1:03,2,81:81,5,86:C'02',/,
1:05,2,81:81,5,86:C'03',/,
1:07,2,81:81,5,86:C'04',/,
1:09,2,81:81,5,86:C'05',/,
1:11,2,81:81,5,86:C'06',/,
1:13,2,81:81,5,86:C'07',/,
1:15,2,81:81,5,86:C'08',/,
1:17,2,81:81,5,86:C'09',/,
1:19,2,81:81,5,86:C'10',/,
1:21,2,81:81,5,86:C'11',/,
1:23,2,81:81,5,86:C'12',/,
1:25,2,81:81,5,86:C'13',/,
1:27,2,81:81,5,86:C'14',/,
1:29,2,81:81,5,86:C'15',/,
1:31,2,81:81,5,86:C'16',/,
1:33,2,81:81,5,86:C'17',/,
1:35,2,81:81,5,86:C'18',/,
1:37,2,81:81,5,86:C'19',/,
1:39,2,81:81,5,86:C'20',/,
1:41,2,81:81,5,86:C'21',/,
1:43,2,81:81,5,86:C'22',/,
1:45,2,81:81,5,86:C'23',/,
1:47,2,81:81,5,86:C'24',/,
1:49,2,81:81,5,86:C'25',/,
1:51,2,81:81,5,86:C'26',/,
1:53,2,81:81,5,86:C'27',/,
1:55,2,81:81,5,86:C'28',/,
1:57,2,81:81,5,86:C'29',/,
1:59,2,81:81,5,86:C'30',/,
1:61,2,81:81,5,86:C'31',/,
1:63,2,81:81,5,86:C'32',/,
1:65,2,81:81,5,86:C'33',/,
1:67,2,81:81,5,86:C'34',/,
1:69,2,81:81,5,86:C'35',/,
1:71,2,81:81,5,86:C'36',/,
1:73,2,81:81,5,86:C'37',/,
1:75,2,81:81,5,86:C'38',/,
1:77,2,81:81,5,86:C'39',/,
1:79,2,81:81,5,86:C'40')
/*
//ICE1CNTL DD *
OUTFIL FNAMES=(OUT02,OUT03,OUT04,OUT05,OUT06,OUT07,OUT08,OUT09,
OUT10,OUT11,OUT12,OUT13,OUT14,OUT15,OUT16,OUT17,
OUT18,OUT19,OUT20,OUT21,OUT22,OUT23,OUT24,OUT25,
OUT26,OUT27,OUT28,OUT29,OUT30,OUT31,OUT32,OUT33,
OUT34,OUT35,OUT36,OUT37,OUT38,OUT39,OUT40,OUT41,
OUT42),
INCLUDE=(ALL),
OUTREC=(1:1,2,
CHANGE=(2,C'01',C'AA',
C'56',C'ZZ'),
NOMATCH=(1,2),
3:3,85),
SPLIT
/*
//ICE2CNTL DD *
OUTFIL FNAMES=OUT02,
INCLUDE=(86,2,CH,EQ,C'01'),
OUTREC=(1:1,2,3:3,85)
OUTFIL FNAMES=OUT03,
INCLUDE=(86,2,CH,EQ,C'02'),
OUTREC=(3:1,2,5:5,83)
OUTFIL FNAMES=OUT04,
INCLUDE=(86,2,CH,EQ,C'03'),
OUTREC=(5:1,2,7:7,81)
OUTFIL FNAMES=OUT05,
INCLUDE=(86,2,CH,EQ,C'04'),
OUTREC=(7:1,2,9:9,79)
OUTFIL FNAMES=OUT06,
INCLUDE=(86,2,CH,EQ,C'05'),
OUTREC=(9:1,2,11:11,77)
OUTFIL FNAMES=OUT07,
INCLUDE=(86,2,CH,EQ,C'06'),
OUTREC=(11:1,2,13:13,75)
OUTFIL FNAMES=OUT08,
INCLUDE=(86,2,CH,EQ,C'07'),
OUTREC=(13:1,2,15:15,73)
OUTFIL FNAMES=OUT09,
INCLUDE=(86,2,CH,EQ,C'08'),
OUTREC=(15:1,2,17:17,71)
OUTFIL FNAMES=OUT10,
INCLUDE=(86,2,CH,EQ,C'09'),
OUTREC=(17:1,2,19:19,69)
OUTFIL FNAMES=OUT11,
INCLUDE=(86,2,CH,EQ,C'10'),
OUTREC=(19:1,2,21:21,67)
OUTFIL FNAMES=OUT12,
INCLUDE=(86,2,CH,EQ,C'11'),
OUTREC=(21:1,2,23:23,65)
OUTFIL FNAMES=OUT13,
INCLUDE=(86,2,CH,EQ,C'12'),
OUTREC=(23:1,2,25:25,63)
OUTFIL FNAMES=OUT14,
INCLUDE=(86,2,CH,EQ,C'13'),
OUTREC=(25:1,2,27:27,61)
OUTFIL FNAMES=OUT15,
INCLUDE=(86,2,CH,EQ,C'14'),
OUTREC=(27:1,2,29:29,59)
OUTFIL FNAMES=OUT16,
INCLUDE=(86,2,CH,EQ,C'15'),
OUTREC=(29:1,2,31:31,57)
OUTFIL FNAMES=OUT17,
INCLUDE=(86,2,CH,EQ,C'16'),
OUTREC=(31:1,2,33:33,55)
OUTFIL FNAMES=OUT18,
INCLUDE=(86,2,CH,EQ,C'17'),
OUTREC=(33:1,2,35:35,53)
OUTFIL FNAMES=OUT19,
INCLUDE=(86,2,CH,EQ,C'18'),
OUTREC=(35:1,2,37:37,51)
OUTFIL FNAMES=OUT20,
INCLUDE=(86,2,CH,EQ,C'19'),
OUTREC=(37:1,2,39:39,49)
OUTFIL FNAMES=OUT21,
INCLUDE=(86,2,CH,EQ,C'20'),
OUTREC=(39:1,2,41:41,47)
OUTFIL FNAMES=OUT22,
INCLUDE=(86,2,CH,EQ,C'21'),
OUTREC=(41:1,2,43:43,45)
OUTFIL FNAMES=OUT23,
INCLUDE=(86,2,CH,EQ,C'22'),
OUTREC=(43:1,2,45:45,43)
OUTFIL FNAMES=OUT24,
INCLUDE=(86,2,CH,EQ,C'23'),
OUTREC=(45:1,2,47:47,41)
OUTFIL FNAMES=OUT25,
INCLUDE=(86,2,CH,EQ,C'24'),
OUTREC=(47:1,2,49:49,39)
OUTFIL FNAMES=OUT26,
INCLUDE=(86,2,CH,EQ,C'25'),
OUTREC=(49:1,2,51:51,37)
OUTFIL FNAMES=OUT27,
INCLUDE=(86,2,CH,EQ,C'26'),
OUTREC=(51:1,2,53:53,35)
OUTFIL FNAMES=OUT28,
INCLUDE=(86,2,CH,EQ,C'27'),
OUTREC=(53:1,2,55:55,33)
OUTFIL FNAMES=OUT29,
INCLUDE=(86,2,CH,EQ,C'28'),
OUTREC=(55:1,2,57:57,31)
OUTFIL FNAMES=OUT30,
INCLUDE=(86,2,CH,EQ,C'29'),
OUTREC=(57:1,2,59:59,29)
OUTFIL FNAMES=OUT31,
INCLUDE=(86,2,CH,EQ,C'30'),
OUTREC=(59:1,2,61:61,27)
OUTFIL FNAMES=OUT32,
INCLUDE=(86,2,CH,EQ,C'31'),
OUTREC=(61:1,2,63:63,25)
OUTFIL FNAMES=OUT33,
INCLUDE=(86,2,CH,EQ,C'32'),
OUTREC=(63:1,2,65:65,23)
OUTFIL FNAMES=OUT34,
INCLUDE=(86,2,CH,EQ,C'33'),
OUTREC=(65:1,2,67:67,21)
OUTFIL FNAMES=OUT35,
INCLUDE=(86,2,CH,EQ,C'34'),
OUTREC=(67:1,2,69:69,19)
OUTFIL FNAMES=OUT36,
INCLUDE=(86,2,CH,EQ,C'35'),
OUTREC=(69:1,2,71:71,17)
OUTFIL FNAMES=OUT37,
INCLUDE=(86,2,CH,EQ,C'36'),
OUTREC=(71:1,2,73:73,15)
OUTFIL FNAMES=OUT38,
INCLUDE=(86,2,CH,EQ,C'37'),
OUTREC=(73:1,2,75:75,13)
OUTFIL FNAMES=OUT39,
INCLUDE=(86,2,CH,EQ,C'38'),
OUTREC=(75:1,2,77:77,11)
OUTFIL FNAMES=OUT40,
INCLUDE=(86,2,CH,EQ,C'39'),
OUTREC=(77:1,2,79:79,9)
OUTFIL FNAMES=OUT41,
INCLUDE=(86,2,CH,EQ,C'40'),
OUTREC=(79:1,2,81:81,7)
OUTFIL FNAMES=OUT42,
OMIT=(ALL)
/*
//ICE3CNTL DD *
INREC FIELDS=(1:1,80,SEQNUM,5,ZD,START=0,INCR=1)
OUTFIL FNAMES=OUT01,
INCLUDE=(ALL),
OUTREC=(1:01,1,81:81,5,86:C'01',/,
1:02,2,81:81,5,86:C'02',/,
1:04,2,81:81,5,86:C'03',/,
1:06,2,81:81,5,86:C'04',/,
1:08,2,81:81,5,86:C'05',/,
1:10,2,81:81,5,86:C'06',/,
1:12,2,81:81,5,86:C'07',/,
1:14,2,81:81,5,86:C'08',/,
1:16,2,81:81,5,86:C'09',/,
1:18,2,81:81,5,86:C'10',/,
1:20,2,81:81,5,86:C'11',/,
1:22,2,81:81,5,86:C'12',/,
1:24,2,81:81,5,86:C'13',/,
1:26,2,81:81,5,86:C'14',/,
1:28,2,81:81,5,86:C'15',/,
1:30,2,81:81,5,86:C'16',/,
1:32,2,81:81,5,86:C'17',/,
1:34,2,81:81,5,86:C'18',/,
1:36,2,81:81,5,86:C'19',/,
1:38,2,81:81,5,86:C'20',/,
1:40,2,81:81,5,86:C'21',/,
1:42,2,81:81,5,86:C'22',/,
1:44,2,81:81,5,86:C'23',/,
1:46,2,81:81,5,86:C'24',/,
1:48,2,81:81,5,86:C'25',/,
1:50,2,81:81,5,86:C'26',/,
1:52,2,81:81,5,86:C'27',/,
1:54,2,81:81,5,86:C'28',/,
1:56,2,81:81,5,86:C'29',/,
1:58,2,81:81,5,86:C'30',/,
1:60,2,81:81,5,86:C'31',/,
1:62,2,81:81,5,86:C'32',/,
1:64,2,81:81,5,86:C'33',/,
1:66,2,81:81,5,86:C'34',/,
1:68,2,81:81,5,86:C'35',/,
1:70,2,81:81,5,86:C'36',/,
1:72,2,81:81,5,86:C'37',/,
1:74,2,81:81,5,86:C'38',/,
1:76,2,81:81,5,86:C'39',/,
1:78,2,81:81,5,86:C'40',/,
1:80,1,81:81,5,86:C'41')
/*
//ICE4CNTL DD *
OUTFIL FNAMES=OUT02,
INCLUDE=(86,2,CH,EQ,C'01'),
OUTREC=(1:1,1,2:2,86)
OUTFIL FNAMES=OUT03,
INCLUDE=(86,2,CH,EQ,C'02'),
OUTREC=(2:1,2,4:4,84)
OUTFIL FNAMES=OUT04,
INCLUDE=(86,2,CH,EQ,C'03'),
OUTREC=(4:1,2,6:6,82)
OUTFIL FNAMES=OUT05,
INCLUDE=(86,2,CH,EQ,C'04'),
OUTREC=(6:1,2,8:8,80)
OUTFIL FNAMES=OUT06,
INCLUDE=(86,2,CH,EQ,C'05'),
OUTREC=(8:1,2,10:10,78)
OUTFIL FNAMES=OUT07,
INCLUDE=(86,2,CH,EQ,C'06'),
OUTREC=(10:1,2,12:12,76)
OUTFIL FNAMES=OUT08,
INCLUDE=(86,2,CH,EQ,C'07'),
OUTREC=(12:1,2,14:14,74)
OUTFIL FNAMES=OUT09,
INCLUDE=(86,2,CH,EQ,C'08'),
OUTREC=(14:1,2,16:16,72)
OUTFIL FNAMES=OUT10,
INCLUDE=(86,2,CH,EQ,C'09'),
OUTREC=(16:1,2,18:18,70)
OUTFIL FNAMES=OUT11,
INCLUDE=(86,2,CH,EQ,C'10'),
OUTREC=(18:1,2,20:20,68)
OUTFIL FNAMES=OUT12,
INCLUDE=(86,2,CH,EQ,C'11'),
OUTREC=(20:1,2,22:22,66)
OUTFIL FNAMES=OUT13,
INCLUDE=(86,2,CH,EQ,C'12'),
OUTREC=(22:1,2,24:24,64)
OUTFIL FNAMES=OUT14,
INCLUDE=(86,2,CH,EQ,C'13'),
OUTREC=(24:1,2,26:26,62)
OUTFIL FNAMES=OUT15,
INCLUDE=(86,2,CH,EQ,C'14'),
OUTREC=(26:1,2,28:28,60)
OUTFIL FNAMES=OUT16,
INCLUDE=(86,2,CH,EQ,C'15'),
OUTREC=(28:1,2,30:30,58)
OUTFIL FNAMES=OUT17,
INCLUDE=(86,2,CH,EQ,C'16'),
OUTREC=(30:1,2,32:32,56)
OUTFIL FNAMES=OUT18,
INCLUDE=(86,2,CH,EQ,C'17'),
OUTREC=(32:1,2,34:34,54)
OUTFIL FNAMES=OUT19,
INCLUDE=(86,2,CH,EQ,C'18'),
OUTREC=(34:1,2,36:36,52)
OUTFIL FNAMES=OUT20,
INCLUDE=(86,2,CH,EQ,C'19'),
OUTREC=(36:1,2,38:38,50)
OUTFIL FNAMES=OUT21,
INCLUDE=(86,2,CH,EQ,C'20'),
OUTREC=(38:1,2,40:40,48)
OUTFIL FNAMES=OUT22,
INCLUDE=(86,2,CH,EQ,C'21'),
OUTREC=(40:1,2,42:42,46)
OUTFIL FNAMES=OUT23,
INCLUDE=(86,2,CH,EQ,C'22'),
OUTREC=(42:1,2,44:44,44)
OUTFIL FNAMES=OUT24,
INCLUDE=(86,2,CH,EQ,C'23'),
OUTREC=(44:1,2,46:46,42)
OUTFIL FNAMES=OUT25,
INCLUDE=(86,2,CH,EQ,C'24'),
OUTREC=(46:1,2,48:48,40)
OUTFIL FNAMES=OUT26,
INCLUDE=(86,2,CH,EQ,C'25'),
OUTREC=(48:1,2,50:50,38)
OUTFIL FNAMES=OUT27,
INCLUDE=(86,2,CH,EQ,C'26'),
OUTREC=(50:1,2,52:52,36)
OUTFIL FNAMES=OUT28,
INCLUDE=(86,2,CH,EQ,C'27'),
OUTREC=(52:1,2,54:54,34)
OUTFIL FNAMES=OUT29,
INCLUDE=(86,2,CH,EQ,C'28'),
OUTREC=(54:1,2,56:56,32)
OUTFIL FNAMES=OUT30,
INCLUDE=(86,2,CH,EQ,C'29'),
OUTREC=(56:1,2,58:58,30)
OUTFIL FNAMES=OUT31,
INCLUDE=(86,2,CH,EQ,C'30'),
OUTREC=(58:1,2,60:60,28)
OUTFIL FNAMES=OUT32,
INCLUDE=(86,2,CH,EQ,C'31'),
OUTREC=(60:1,2,62:62,26)
OUTFIL FNAMES=OUT33,
INCLUDE=(86,2,CH,EQ,C'32'),
OUTREC=(62:1,2,64:64,24)
OUTFIL FNAMES=OUT34,
INCLUDE=(86,2,CH,EQ,C'33'),
OUTREC=(64:1,2,66:66,22)
OUTFIL FNAMES=OUT35,
INCLUDE=(86,2,CH,EQ,C'34'),
OUTREC=(66:1,2,68:68,20)
OUTFIL FNAMES=OUT36,
INCLUDE=(86,2,CH,EQ,C'35'),
OUTREC=(68:1,2,70:70,18)
OUTFIL FNAMES=OUT37,
INCLUDE=(86,2,CH,EQ,C'36'),
OUTREC=(70:1,2,72:72,16)
OUTFIL FNAMES=OUT38,
INCLUDE=(86,2,CH,EQ,C'37'),
OUTREC=(72:1,2,74:74,14)
OUTFIL FNAMES=OUT39,
INCLUDE=(86,2,CH,EQ,C'38'),
OUTREC=(74:1,2,76:76,12)
OUTFIL FNAMES=OUT40,
INCLUDE=(86,2,CH,EQ,C'39'),
OUTREC=(76:1,2,78:78,10)
OUTFIL FNAMES=OUT41,
INCLUDE=(86,2,CH,EQ,C'40'),
OUTREC=(78:1,2,80:80,8)
OUTFIL FNAMES=OUT42,
INCLUDE=(86,2,CH,EQ,C'41'),
OUTREC=(80:1,1,81:81,7)
/*
//ICE5CNTL DD *
OUTFIL FNAMES=OUTX,
OUTREC=(1:1,80)
/*
OUTX gives :
Code:
AA234ZZ789AA234ZZ789AA234ZZ789AA234ZZ789AA234ZZ789AA234ZZ789AA234ZZ789AA234ZZ789
1234ZZ789AA234ZZ789AA234ZZ789AA234ZZ789AA234ZZ789AA234ZZ789AA234ZZ789AA234ZZ7890
Something like this is more easier to understand :
Code:
/* REXX */
SAY TRANSLATE("0123456789","F0"X,"F5"X)
Alain
Back to top
coolman Intermediate Joined: 03 Jan 2003 Posts: 283 Topics: 27 Location: US
Posted: Wed Jun 18, 2003 11:25 pm Post subject:
Remarkable Alain
________
ipad guide Last edited by coolman on Sat Feb 05, 2011 1:25 am; edited 1 time in total
Back to top
gore Beginner Joined: 10 Dec 2002 Posts: 46 Topics: 20 Location: Providence, RI
Posted: Thu Jun 19, 2003 12:33 am Post subject:
Capt Bill can you please show me how to invoke ISPF EDIT in batch mode. I need a sample JCL step. Actually even though I have used REXX TRANSLATE for this purpose but I want to compare the performance using rexx & ISPF edit in batch mode.
Gore
Back to top
Frank Yaeger Sort Forum Moderator Joined: 02 Dec 2002 Posts: 1618 Topics: 31 Location: San Jose
Posted: Mon Aug 11, 2008 6:32 pm Post subject:
With z/OS DFSORT V1R5 PTF UK90013 (July, 2008), you can now use the new FINDREP function of DFSORT's ICETOOL to do find and replace operations. For complete details on FINDREP, see:
www.ibm.com/systems/support/storage/software/sort/mvs/ugpf/ _________________ Frank Yaeger - DFSORT Development Team (IBM)
Specialties: JOINKEYS, FINDREP, WHEN=GROUP, ICETOOL, Symbols, Migration
DFSORT is on the Web at:
www.ibm.com/storage/dfsort
Back to top
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