On 2013-10-10, at 14:28, Roberts, John J wrote: > >> What will happen (JES2, specifically) if substituting a symbol in an >> instream data set causes a record to exceed the otherwise LRECL (over which >> the programmer now has little control)?: > > Oh how I wish there was just an option for the JCL stream to be > RECFM=VB,LRECL=255 (or more). If this was the case we could get rid of the > arcane continuation rules, and issues like symbol substitution mostly > overcome. > You can accomplish much of that nowadays, by writing directly to SYSOUT=(,INTRDR), and I believe the limit is far greater than 255 (I haven't stressed it). The bottleneck is the SUBMIT command (*so* Twentieth Century).
But you have precious little control. Empirically, on JES2; z/OS <= 1.13: o If all the records are or equal length, RECFM=F; otherwise RECFM=V. o LRECL is chosen to snugly hold the longest record. This leaves a dreadful substitution pitfall. o Other than in instream data sets, all data beyond column 72 is ignored; no solace for continuation PITA. With less expermenting, I believe JES3 is similar, except that RECFM is unconditionally F. FTP restricts you to JESLRECL<=254 (252 data bytes). Blessedly, in JCL commands, after substitution the data may exceed 72 columns with no truncation. I haven't stressed that limit, also. As a PITA to automatic generation of JCL, no symbol nor paired apostrophe may be split at 71-72 (both documented) Also, a paired ampersand may not be split at 71-72 (no such restriction is documented, AFAICT. Someday when I feel wicked I'll submit a PMR.) -- gil ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
