View previous topic :: View next topic
|
Author |
Message |
morpheus007
New User
Joined: 27 Dec 2005 Posts: 58
|
|
|
|
we have a VB VSAM file with RECORDSIZE(2048 32760).We have a requirement to delete records that have '07' in the 350th byte.
We are trying to get this done thru an OMIT COND=(354,2,CH,EQ,C'07) into a flat file and then Delete/Define the VSAM file and put the remaining recs back.
However we find that there are records which are less than 350 in length and for those SORT fails.
Is there any option in DFSORT to skip the records that are less than 350 bytes and only apply the OMIT COND on the remaining records. |
|
Back to top |
|
|
senjay
Active User
Joined: 10 May 2007 Posts: 147 Location: India
|
|
|
|
Hi,
Use OPTION VLSHRT |
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8797 Location: Welsh Wales
|
|
|
|
Take a look in the manual for
|
|
Back to top |
|
|
Frank Yaeger
DFSORT Developer
Joined: 15 Feb 2005 Posts: 7129 Location: San Jose, CA
|
|
|
|
I'd suggest:
Code: |
OMIT COND=(1,2,BI,GE,+355,AND,354,2,CH,EQ,C'07)
|
That will ensure that records which do not have the bytes in 354-355 that you are testing for are kept. This is probably more efficient than using VLSHRT or VLSCMP. |
|
Back to top |
|
|
|