View previous topic :: View next topic
|
Author |
Message |
avashisht
New User
Joined: 16 Sep 2005 Posts: 11
|
|
|
|
I want to split my input file below into 2 output files as shown below. I am trying to use the SORT card described below, but its not working. My Input file is a VB.
Input:
Code: |
-+----6----+----7----+---
*************************
ABC 0060
XYZ 0020
PQR 0030
TTTT
SSSS
UUUU
VVVV 0060
WWWW 0020
ZZZZ 0030 |
Output:
File1:
Code: |
XYZ 0020
PQR 0030
TTTT
SSSS
UUUU
WWWW 0020
ZZZZ 0030 |
File2:
Code: |
ABC 0060
XYZ 0020
TTTT
SSSS
UUUU
VVVV 0060
WWWW 0020 |
Code I am using:
Code: |
//SYSIN DD
OPTION COPY
OUTFIL FILES=1,OMIT=(74,04,CH,EQ,C'0030')
OUTFIL FILES=2,OMIT=(74,04,CH,EQ,C'0060')
/*
|
I am getting following error:
Code: |
ICE084I 0 BSAM ACCESS METHOD USED FOR SORTIN
ICE231I 0 STORAGE USED FOR OUTFIL : BELOW 16M = 23552, ABOVE 16M = 4203520
ICE210I 0 SORTOF1 : EXCP USED, LRECL = 4004, BLKSIZE = 27998, TYPE = VB (SDB)
ICE210I 0 SORTOF2 : EXCP USED, LRECL = 4004, BLKSIZE = 27998, TYPE = VB (SDB)
ICE218A 3 63 BYTE VARIABLE RECORD IS SHORTER THAN 81 BYTE MINIMUM FOR SORTOF1 FIELDS
ICE751I 1 EF-K49534 CB-K90013 F0-K30362 E8-K51706 |
|
|
Back to top |
|
|
Escapa
Senior Member
Joined: 16 Feb 2007 Posts: 1399 Location: IL, USA
|
|
|
|
ICE218A 3 63 BYTE VARIABLE RECORD IS SHORTER THAN 81 BYTE MINIMUM FOR SORTOF1 FIELDS
Does this ring anything? |
|
Back to top |
|
|
avashisht
New User
Joined: 16 Sep 2005 Posts: 11
|
|
|
|
I found some records in the input file which have a length of 59 bytes. I want those records in both the output files as my control card specifies. |
|
Back to top |
|
|
Bill Woodger
Moderator Emeritus
Joined: 09 Mar 2011 Posts: 7309 Location: Inside the Matrix
|
|
|
|
Well, your control card does not specify this, as there is no data on the short records which matches what you are testing.
Find out how to avoid looking at that part of the record when they are short.
Also, if you've "found" these records, are there other things on the file you are not aware of? |
|
Back to top |
|
|
avashisht
New User
Joined: 16 Sep 2005 Posts: 11
|
|
|
|
The file is pretty consistent in this regard. These records ending at 59 bytes are the only ones which are falling short of the Criteria in Control Card. Rest all the records have length more than 80 bytes atleast. |
|
Back to top |
|
|
avashisht
New User
Joined: 16 Sep 2005 Posts: 11
|
|
|
|
Do I have to conver the VB file to FB before attempting to split and then convert it back to VB? Or, is there a way I can accomplish this in one step. |
|
Back to top |
|
|
Bill Woodger
Moderator Emeritus
Joined: 09 Mar 2011 Posts: 7309 Location: Inside the Matrix
|
|
|
|
OK, so remember when "avoiding" them for the other test, they are actually 63 bytes long, 59 of data of 4 of RDW. |
|
Back to top |
|
|
avashisht
New User
Joined: 16 Sep 2005 Posts: 11
|
|
|
|
How do I avoid them from the test? Even if I avoid them from the test, will I still be able to get those records in both the output files? |
|
Back to top |
|
|
Frank Yaeger
DFSORT Developer
Joined: 15 Feb 2005 Posts: 7129 Location: San Jose, CA
|
|
|
|
You just need to use DFSORT's VLSCMP option, e.g.
Code: |
OPTION COPY,VLSCMP
...
|
|
|
Back to top |
|
|
avashisht
New User
Joined: 16 Sep 2005 Posts: 11
|
|
|
|
Great.. That did the trick.. Thanks Frank. Bill, thanks to you too! |
|
Back to top |
|
|
Bill Woodger
Moderator Emeritus
Joined: 09 Mar 2011 Posts: 7309 Location: Inside the Matrix
|
|
|
|
No problem, thanks for the thanks. |
|
Back to top |
|
|
|