Page 1 of 1

WER476A in JOIN Processing

PostPosted: Thu May 13, 2010 2:09 am
by mberger
Good afternoon,

I am now attempting to join 2 files:

the first is a VB VSAM file with LRECL 2000(+4), the key is in byte 15(+4) for a length of 6
the second is FB80 with the key value in bytes 1-6

For all matching key values, I want to copy the entire VSAM record to the output file

I defined the output file as:
SORTOUT DD DSN=HLQ.FILE1,
DISP=(NEW,CATLG),
* UNIT=3490,VOL=(,,,99),
UNIT=3390,SPACE=(CYL,(10,10),RLSE),
DCB=(RECFM=VB,LRECL=2004,BLKSIZE=0)

I am using this control card:
SYSIN :
JOINKEYS FILES=F1,FIELDS=(19,6,A)
JOINKEYS FILES=F2,FIELDS=(1,6,A)
REFORMAT FIELDS=(F1:1,4,5)
SORT FIELDS=(COPY)

Error Message Received (RC=16)
WER164B 93,024K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,
WER164B 0 BYTES RESERVE REQUESTED, 1,020K BYTES USED
WER476A FIRST 4 BYTES OF A VARIABLE LENGTH REFORMAT DEFINITION MUST BE FROM A VL JOIN FILE
WER482I JNF1 STATISTICS
WER483B 6,920K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,
WER483B 0 BYTES RESERVE REQUESTED, 1,020K BYTES USED
WER108I SORTJNF1 : RECFM=F ; LRECL= 2000; CISIZE = 6144
WER482I JNF2 STATISTICS
WER483B 6,920K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,
WER483B 0 BYTES RESERVE REQUESTED, 1,020K BYTES USED
WER108I SORTJNF2 : RECFM=FB ; LRECL= 80; BLKSIZE= 27920

It seems to be interpreting the VSAM as having RECFM=F rather than RECFM=VB.
The VSAM file has an avg record length of 860 and a maximum record length of 2000.

Re: WER476A in JOIN Processing

PostPosted: Tue May 18, 2010 2:06 am
by Alissa Margulies
TYPE should be provided if the input file being specified is VSAM. If TYPE is not provided, TYPE=F will be assumed if the SORTJNFn file is VSAM.

JOINKEYS FILES=F1,FIELDS=(19,6,A),TYPE=V

I also suggest that you remove the DCB you coded for SORTOUT. Give that a try and let me know if you continue to encounter a problem.