Page 1 of 1

Getting VSAM code 44?

Posted: Mon Dec 11, 2017 11:29 pm
by Anil
Hi,

I am getting VSAM Status 44. When I looked for it's explnation it shows:

Code: Select all

A BOUNADRY VIOLATION DUE TO ATTEMPT TO WRITE A RECORD OF IMPROPER LENGTH 
What is the meaning of that, how to solve it ? Please help me.

Re: Getting VSAM code 44?

Posted: Tue Dec 12, 2017 12:04 am
by enrico-sorichetti
the length of record that You are trying to write does not agree with the record length of the vsam cluster
speck To your support to find out the characteristics of the VSAM cluster and WHY there is a mismatch between the COPYBOOK and the same

Re: Getting VSAM code 44?

Posted: Tue Dec 12, 2017 12:55 am
by Robert Sample
The COBOL FD for the VSAM data set needs to match the physical attributes the data set has; each WRITE or REWRITE also needs to match the COBOL FD. A file status 44 means the program is attempting to write a record larger (or smaller) than the FD specified, or a REWRITE is being attempted where the record length is not the same as the record that was read.

This information is EASILY available in the Enterprise COBOL Language Reference manual -- why did you not read that first?

Re: Getting VSAM code 44?

Posted: Tue Jul 03, 2018 8:00 pm
by Anil
Thanks Robert. I was able to find what it meant from the manual but making it work in my program was challenging. After some effort I could get it. I took a wrong file as input. :|