----------------------<snip>----------------------

Agreed. Clearly, if tz/OS was being designed ab initio, a standard data set naming convention would probably be used. (Then again, in that case there might not even be data sets as we know them!)

However, after so many decades, we can't expect customers to make wholesale -- and costly -- "busy work" changes in their production environments just to be consistent with others running z/OS (including their competitors).

-------------------<unsnip>--------------------
Changes "by attrition" might work, if you could show a tangible benefit.

---------------------<snip>-----------------

I don't see nearly as many configurations as a busy consultant like Mark, But, I have noticed with our customers that the LLQ of SMP/E-maintained, MVS "classic" data sets seems to always mirror the DDDEF name in target zone. (In fact, I have *never* seen an exception to this "rule" with data sets we deliver!) It's the HLQ(s) that seem to be "fair game" for site-specific customization.

---------------------<unsnip>-----------------
Guilty as charged. I did it for security adminstration reasons, mostly. And a select few used HLQ's that we already had in use for other purposes.

---------------------<snip>-------------------

This observation led to the following idea, which I had previously advanced only to a select few through verbal conversation:

Suppose static system symbols could be created automatically by SMP/E (or an add-on program using the SMP/E API) for each DDDEF in the target zone that references an MVS classic data set!

The first 20 symbols would be defined something like this (from my system):

 SYMDEF(&BNJPNL1='NETV.BNJPNL1')
 SYMDEF(&BNJPNL2='NETV.BNJPNL2')
 SYMDEF(&BNJSRC1='NETV.BNJSRC1')
 SYMDEF(&CBRDBRM='SYS1.CBRDBRM')
 SYMDEF(&CIPLIB='SYS1.CIPLIB')
 SYMDEF(&CMDLIB='SYS1.CMDLIB')
 SYMDEF(&CNMCLST='NETV.CNMCLST')
 SYMDEF(&CNMINST='NETV.CNMINST')
 SYMDEF(&CNMLINK='NETV.CNMLINK')
 SYMDEF(&CNMPNL1='NETV.CNMPNL1')
 SYMDEF(&CNMSAMP='NETV.CNMSAMP')
 SYMDEF(&COB2LIB='CALLLIBS.DUMMY')
 SYMDEF(&CSSLIB='SYS1.CSSLIB')
 SYMDEF(&DBBLIB='SYS1.DBBLIB')
 SYMDEF(&DCFASM='SCRIPT.DCFASM')
 SYMDEF(&DCFDIST='SCRIPT.DCFDIST')
 SYMDEF(&DCFGML='SCRIPT.DCFGML')
 SYMDEF(&DCFIMAGE='SCRIPT.DCFIMAGE')
 SYMDEF(&DCFLOAD='SCRIPT.DCFLOAD')
 SYMDEF(&DCFMAC='SCRIPT.DCFMAC')
 SYMDEF(&DCFSAMP='SCRIPT.DCFSAMP')
 SYMDEF(&DFQLLIB='SYS1.DFQLLIB')
 SYMDEF(&DFQMLIB='SYS1.DFQMLIB')
 SYMDEF(&DFQPLIB='SYS1.DFQPLIB')
 SYMDEF(&DGTCLIB='SYS1.DFQLLIB')
 SYMDEF(&DGTLLIB='SYS1.DGTLLIB')
 SYMDEF(&DGTMLIB='SYS1.DGTMLIB')
 SYMDEF(&DGTPLIB='SYS1.DGTPLIB')
 SYMDEF(&DGTSLIB=SYS1.DGTSLIB')
.
. (there are hundreds and hundreds more))
.

The member containing these symbols could be concatenated with other, existing IEASYMxx members in parmlib. Like other static system symbols, these symbols would be created at IPL time and be available to all programs.

IBM- and ISV-distributed CLISTs, JCL, and other program elements that reference these SMP/E-maintained target libraries could then refer to a data set name by its symbolic name. For example, instead of specifying: EX 'SYS1.SBLSCLI0(BLDCDDIR)' we would write something like: EX '&SBLSCLI0.(BLSCDDIR)' And, backward compatibility would be automatically maintained for existing programs that don't expect to be updated in the near-term to take advantage of this new level of indirection.

Although static symbol substitution support is fairly pervasive in some obvious places within z/OS, it is still missing from some other equally-obvious places -- such as for the data set command operands in these examples. Static symbol substitution for data set names would need a thorough implementation for this scheme to work reliably. (Perhaps the call to the substitution service should be made from within DYNALLOC itself to minimize interface points.)

No matter the exact details of implementation, IMHO it would be time well spent...

------------------------<unsnip>--------------------
Ed, I agree with the concept. But the implementation will be horrendously expensive. Just providing efficient access to those symbols across all the "environments" that would need it could be a massive undertaking. And getting all the ISV's aboard will be nigh-unto impossible unless you can show them a real benefit on the balance sheets. THEN you've got to teach the customers how to use it to their best advantage. GOOD LUCK!!!

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to