View previous topic :: View next topic
|
Author |
Message |
ssgauli Warnings : 1 New User
Joined: 06 Jan 2008 Posts: 3 Location: hyd'bad
|
|
|
|
Using sort card how to replace binary value of '200807' to '200606' for the length of 4 bytes binary.
Requirement :
1) I have a file of record length 737.
2) With a field of length 4 bytes binary from starting position 1 to length of 4 bytes binary.
3) Need to change value from '200807' to '200606' (Note : i need to change only first 4 bytes that to from binary to binary of 4 bytes )
4) remaining field from position 5 to 737 need to written as it is from input file.
For example :
From >>>>>>> i need to change LD-MEAS-PRD-ID from '200807'
Code: |
LD-MEAS-PRD-ID LD-ARR-ID-CHAIN LD-BUS-UNIT-COR
4/BI 6/PS 6/AN
(1-4) (5-10) (11-16)
1------------- 2-------------- 3--------------
********************************* TOP OF DATA
200807 400000004 ABC |
TO >>>>>>>> LD-MEAS-PRD-ID to '200606'
Code: |
LD-MEAS-PRD-ID LD-ARR-ID-CHAIN LD-BUS-UNIT-COR
4/BI 6/PS 6/AN
(1-4) (5-10) (11-16)
1------------- 2-------------- 3--------------
********************************* TOP OF DATA
200606 400000004 ABC |
Note : I could not find any solution in the search that's the reason i am posting my query into the forum.
I hope you got my query. |
|
Back to top |
|
|
Arun Raj
Moderator
Joined: 17 Oct 2006 Posts: 2481 Location: @my desk
|
|
|
|
Shrinivas,
The below SORT job will do what you asked for.
Code: |
//STEP01 EXEC PGM=SORT
//*
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=your.input.file,DISP=SHR
//SORTOUT DD DSN=your.output.file,DISP=SHR
//*
//SYSIN DD *
INREC IFTHEN=(WHEN=(1,4,BI,EQ,200807),OVERLAY=(1:X'00030F9E'))
SORT FIELDS=COPY
//* |
Thanks,
Arun |
|
Back to top |
|
|
ssgauli Warnings : 1 New User
Joined: 06 Jan 2008 Posts: 3 Location: hyd'bad
|
|
|
|
Arun , Thanks very much for the help. |
|
Back to top |
|
|
Frank Yaeger
DFSORT Developer
Joined: 15 Feb 2005 Posts: 7129 Location: San Jose, CA
|
|
|
|
Or you could use this INREC statement which uses a decimal constant instead of a hex constant for better readability:
Code: |
INREC IFTHEN=(WHEN=(1,4,BI,EQ,200807),
OVERLAY=(1:+200606,TO=BI,LENGTH=4))
|
|
|
Back to top |
|
|
|