View previous topic :: View next topic
|
Author |
Message |
speermb
New User
Joined: 27 Aug 2008 Posts: 30 Location: USA
|
|
|
|
I am running an ICETOOL to find the length of records on a VSAM file. I actually just need the records that are at 625, I couldnt find out how to do that so I tried this way, which isnt working for me either.
SORTIN is a VSAM data set defined as a VB 625.
TOOLIN IS:
Code: |
DISPLAY FROM(SORTIN) LIST(SHOW) -
INDENT(10) BETWEEN(5) -
HEADER('RECORD','NUMBER') ON(NUM,N15) -
HEADER('RECORD','LENGTH') ON(VLEN,N05) -
HEADER(,'RDW IN HEX') ON(1,4,HEX) -
TITLE('RECORD LENGTH REPORT') DATE -
TOTAL('TOTAL') AVERAGE('AVERAGE') -
MINIMUM('MINIMUM') MAXIMUM('MAXIMUM') |
Output is:
Code: |
RECORD LENGTH REPORT 12/23/10
RECORD RECORD
NUMBER LENGTH RDW IN HEX
---------------- ------ ----------
1 0 00000000
2 61889 F1C1C4F0
3 61889 F1C1C4F0 |
What am I doing wrong cause how can the record length EVER be 61889. |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
Suggest you become comfortable with the "Code" tag which will preserve alignment and improve readability (your post has been "Code'd".
61889 is the decimal value of x'F1C1'.
What does a value beginning with 1AD0 represent - that is what is being mistakenly shown as the "rdw". |
|
Back to top |
|
|
Frank Yaeger
DFSORT Developer
Joined: 15 Feb 2005 Posts: 7129 Location: San Jose, CA
|
|
|
|
If you process the VSAM records as TYPE V, DFSORT will add a 4-byte RDW at the beginning of the record before it processes it. Since you didn't specify VSAMTYPE(V), I suspect DFSORT is processing your records as F, not V, so VLEN didn't give you what you want. Try adding VSAMTYPE(F) to your DISPLAY operator. However, you'll get length+4 because of the added RDW.
However, if you just want to find the VSAM records that have a length of 625, I believe a DFSORT job like this will do it (note that I added 4 for the RDW that DFSORT adds):
Code: |
//S1 EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=... VSAM input file
//SORTOUT DD SYSOUT=*
//SYSIN DD *
OPTION COPY
RECORD TYPE=F
INCLUDE COND=(1,2,BI,EQ,+629)
/*
|
|
|
Back to top |
|
|
|