sudhakar_lendave
New User
Joined: 21 Nov 2006 Posts: 48 Location: mumbai
|
|
|
|
Hi all,
My input file has records
Code: |
Record-No Record-Id Record-Type
1 A 10
1 A 20
1 A 10
1 A 20
2 A 10
2 A 10
2 A 20
2 A 20
3 A 10
3 A 20
3 A 10
3 A 20
.
.
.
|
I want to swap the records for Record-No 2 and Record-Id=A,
so that Record-Type 20 should come after 10 , as shown for other Record-No
Code: |
Record-No Record-Id Record-Type
1 A 10
1 A 20
1 A 10
1 A 20
2 A 10
2 A 20
2 A 10
2 A 20
3 A 10
3 A 20
3 A 10
3 A 20
.
.
.
|
|
|
Frank Yaeger
DFSORT Developer
Joined: 15 Feb 2005 Posts: 7129 Location: San Jose, CA
|
|
|
|
I'm not sure I understand what you want to do. But if you just want to change the 2/A records to have 10, 20, 10, 20, ..., you can use a DFSORT job like this. I assumed your input file has RECFM=FB and LRECL=80, but the job can be changed appropriately for other attributes.
Code: |
//S1 EXEC PGM=ICEMAN
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=... input file (FB/80)
//SORTOUT DD DSN=... output file (FB/80)
//SYSIN DD *
OPTION COPY
INREC IFOUTLEN=80,
IFTHEN=(WHEN=(1,1,CH,EQ,C'2',AND,17,1,CH,EQ,C'A'),
OVERLAY=(81:SEQNUM,1,ZD,START=0,INCR=5,
31:81,1,CHANGE=(2,C'0',C'10',C'5',C'20')))
/*
|
|
|