Yes, we use them extensively; they facilitate easy migration, implementation 
and regression. How they are used in a DSN depends upon the dataset's usage.

DLIB datasets contain a qualifier of the form Vvvrr
        vvrr = version and release

Target  datasets contain a qualifier of the form Vvvrrllw
        vvrrll = version, release and modification level
        w is a "wave" identifier to differentiate maintenance levels if ll does 
not do so
 
Customized datasets contain two qualifiers: [scope].[designator]
        [scope] is the constant GLOBAL, SYSPLEX or IMAGE
        [designator] is &SYSNAME when "scope" is IMAGE or &SYSPLEX when "scope" 
is SYSPLEX

Functional datasets contain two qualifiers: [scope].[designator]
        [scope] is the constant SYSPLEX or IMAGE
        [designator] is &SYSNAME.w when "scope" is IMAGE or &SYSPLEX.w when 
"scope" is SYSPLEX
        w is a "wave" identifier to differentiate reformatting (i.e. upgrades 
that require a functional dataset to be reformatted)


There are at least  two associated static system symbols for all non-DLIB 
datasets associated with a product. SMP/E DLIB DDDEFs point to real DLIB DSNs 
and no aliases are defined for them. Each symbolic name indicates the team that 
is responsible for it (e.g. Z = z/OS team; N = Networking team; D = Data 
management team) and the product (i.e. pppp) with which it is associated. The 
following symbols are defined here for Tivoli NetView:

        &tppppVRL    [for example &NCNMVRL=V050300A]
        &tppppFWI    [for example &NCNMFWI=A]


The symbolic-relate aliases are defined similar to:

        $NT.NETVIEW.CNMCLST             symbolic relate to      $NT.NETVIEW 
.&NCNMVRL..CNMCLST 
        $NT.NETVIEW.DSIPARM             symbolic relate to      
$NT.NETVIEW..&NCNMVRL..DSIPARM

        $NC.NETVIEW.SYSPLEX.DSIPARM     symbolic relate to      
$NC.NETVIEW..&SYSPLEX..DSIPARM
        $NC.NETVIEW.IMAGE.DSIPARM       symbolic relate to      $NC.NETVIEW. 
&SYSNAME..DSIPARM

        $NF.NETVIEW.IMAGE.DSILOGP               symbolic relate to      
$NF.NETVIEW..&NCNMDOMN&NCNMFWI..DSILOGP    [e.g. $NF.NETVIEW.CNM01A.DSILOGP]


The symbolic alias names are generally NOT specified in members of PARMLIB. 
Instead the symbolic alias association (i.e. the DSN with embedded symbolics) 
is specified in PARMLIB.
For example, PROGxx specifies  $NT.NETVIEW .&NCNMVRL..SCNMLNK1

Implementation and regression is often possible by changing the values of the 
symbols with SYMUPDTE and activating a new LNKLST.


Advantages:
        Implementations and regressions do not require any changes to existing 
executables (e.g. JCL and REXX)
        The symbolic-relate aliases never need to be redefined (unless a 
dataset is retired), even when the associated dataset moves to another volume

Disadvantages:
        An extra one-time step to define them
        SMP/E maintenance is NEVER done in place. A new set of target datasets 
must be defined and a ZONEEDIT is required to change DDDEFs to point to the new 
DSNs


I apologize in advance for any inaccuracies in the above. I'm busy today and I 
was in a hurry. I nonetheless wanted to post because I believe symbolic-relate 
aliases are worth the effort.


Cheers,
Alan 
   





-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of 
McKown, John
Sent: Thursday, November 03, 2011 9:58 AM
To: [email protected]
Subject: do u? Use SYMBOLICRELATE?

I'm just curious about something. Does anybody use SYMBOLICREATE to create 
aliases so that the actual DSN can automatically change based on a static 
system symbol? I'm thinking about things such as version numbers or z/OS 
&SYSNAME. Does anybody even have system relative DSNs? I'm thinking perhaps 
like SYS2.&SYSNAME..PARMLIB with an alias of SYS2.SYSTEM.PARMLIB so that a job 
can simply refer to SYS2.SYSTEM.PARMLIB and get the correct, system-specific, 
PARMLIB. I'm trying to determine if it is actually useful. My manager likes for 
product libraries to have the release/maintenance as a node in the DSN. But 
this means that we need to make JCL changes when we upgrade. Or we need to put 
the executable libraries in the LNKLST. We currently do the latter, but I don't 
really care for it for "low use" products. But is it better to create a normal 
ALIAS without the maintenance level and simply reDEFINE the alias when I 
upgrade? Rather than change the IEASYMnn member of PARMLIB. Or just!
  do it like we do now and require JCL changes so that the JCL itself documents 
which version/maintenance level is desired?

This is coming up, in my mind only so far, because I plan to use UNIX sysplex 
sharing and use something similar. I plan to have a system-specific version of 
then /usr/local subdirectory. In order to simplify things, I'll use a symbolic 
link with $SYSSYMR like:

cd /usr
mkdir SY1-local
mkdir SY2-local
ln -s '$SYSSYMR/&SYSNAME.-local' system-local

and then in /etc/profile, have:

export PATH=${PATH}:/usr/system-local/bin:/usr/local/bin

so that a system local version of a program will override the "global" 
/usr/local version.

John McKown
Systems Engineer IV
IT

Administrative Services Group

HealthMarkets(r)

9151 Boulevard 26 * N. Richland Hills * TX 76010
(817) 255-3225 phone *
[email protected] * www.HealthMarkets.com

Confidentiality Notice: This e-mail message may contain confidential or 
proprietary information. If you are not the intended recipient, please contact 
the sender by reply e-mail and destroy all copies of the original message. 
HealthMarkets(r) is the brand name for products underwritten and issued by the 
insurance subsidiaries of HealthMarkets, Inc. -The Chesapeake Life Insurance 
Company(r), Mid-West National Life Insurance Company of TennesseeSM and The 
MEGA Life and Health Insurance Company.SM


----------------------------------------------------------------------
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

----------------------------------------------------------------------
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