Focal Point Banner
Community Center Education Summit Technical Support User Groups
Let's Get Social!

Facebook Twitter LinkedIn YouTube
Go
New
Search
Notify
Tools
Reply
  
DYNAM ALLOC LRECL
 Login/Join
 
Member
posted
I'm in mainframe FOCUS. Focexec #1 creates FileA using a DYNAM ALLOC with LRECL specified as 242. The actual length of the data is 241, so this should be fine. I manually create an MFD. Focexec #2 reads File A using that MFD. No error message results, just strange totals, too low.

Then I remember another focexec which creates a file virtually identical to File A, but this focexec specifies the file with LRECL 256, actual length 251. . it has one more field at the end. I read THIS file into focexec #2 with the same MFD, and it works!

I go back to focexec #1 and re-create my original file with LRECL 256, and now THIS works!

Can anyone tell me what happened? My LRECL always was longer than the actual data, and the MFD covers all. Thanks, Phyllis
 
Posts: 15 | Registered: May 17, 2004Reply With QuoteReport This Post
Virtuoso
posted Hide Post
I take it this is MVS. You probably have conflicting MFDs. Focus will only search HOLDMAST if you have already performed a HOLD in the Focus session. If you've placed your "manually created" 241-byte MFD in a partitioned dataset allocated to HOLDMAST, and the 251-byte MFD of the same name has permanent residence in a PFD allocated to MASTER, that would explain your symptoms.
 
Posts: 1925 | Location: NYC | In FOCUS since 1983 | Registered: January 11, 2005Reply With QuoteReport This Post
Silver Member
posted Hide Post
are you using a RECFM of V, VB, or VBA?

variable records require a 4 byte descriptor and VBA has an extra byte for the print control.

might explain your LRECL.

drew
 
Posts: 46 | Location: San Francisco, California | Registered: April 14, 2003Reply With QuoteReport This Post
Member
posted Hide Post
Jack and Drew,

My RECFM is FB.

I used the same MFD throughout. And there is no like-named MFD anywhere that I can see.

Years ago I remember using an LRECL that was too short, forcing the job that followed to read two records for one set of fields, and thereby reading "across records", I think. That resulted in 5 rows when there should have been 10. But this one is not too short. Specified LRECL was 242, and CHECK FILE FILEA tells me length 241.

Thank you both.
Phyllis
 
Posts: 15 | Registered: May 17, 2004Reply With QuoteReport This Post
Master
posted Hide Post
I think if you issue a

? TSO DDNAME <HOLDFILE>

after the file is created it will give to the exact DCB info and can then use them in the second focexec.
 
Posts: 863 | Registered: May 24, 2004Reply With QuoteReport This Post
  Powered by Social Strata  
 


Copyright © 1996-2018 Information Builders, leaders in enterprise business intelligence.