Read the much improved doc in the z/OS V2.4 TSO/E REXX Reference for
MVSVAR(SYMDEF,xxx). I think everything will be clearer.
I wrote a REXX Program a few years ago to extract and display the various
Static and Dynamic System Symbols that are defined in z/OS. I also included
our inhouse defined symbols. We don't currently have any Symbol names that are
longer than eight characters, (or I would have to alter my program).
Here is the code. Please alter the inhouse variable to include your internal
symbols or set it to '' (null) if you don't have any before you run it.
/*--------------------------- SYMDEF REXX ----------------------------*/
/* Extract MVS Static and Dynamic Symbols and Display their Values. */
/*--------------------------------------------------------------------*/
SYMDEF:
Parse Source . ctype ename etype emode . system subsys .
static = 'SYSALVL SYSCLONE SYSNAME SYSOSLVL SYSPLEX SYSR1'
inhouse = 'SYSR2 SYSCLON1 PLEX HRDWNAME LPARNAME SMFID OSLEVEL',
'CSID IMSP IMST TSID VMUSERID'
dynamic = 'DS JOBNAME SEQ'
utctime = 'YYMMDD HHMMSS YR4 YR2 MON DAY HR MIN SEC ',
'WDAY JDAY'
lcltime = 'LYYMMDD LHHMMSS LYR4 LYR2 LMON LDAY LHR LMIN LSEC',
'LWDAY LJDAY'
Say 'MVS Static System Symbols...'
Do n = 1 to Words(static)
symbol = Word(static,n)
Say Left(symbol,8) '=' MVSVar('SYMDEF',symbol)
End /* Do n = 1 to Words(static) */
If inhouse \= '' Then
Do
Say ' '
Say 'MVS Static System Symbols...(Inhouse)'
Do n = 1 to Words(inhouse)
symbol = Word(inhouse,n)
Say Left(symbol,8) '=' MVSVar('SYMDEF',symbol)
End /* Do n = 1 to Words(inhouse) */
End
Say ' '
Say 'MVS Dynamic System Symbols...(Non Date/Time)'
Do n = 1 to Words(dynamic)
symbol = Word(dynamic,n)
Say Left(symbol,8) '=' MVSVar('SYMDEF',symbol)
End /* Do n = 1 to Words(dynamic) */
Say ' '
Say 'MVS Dynamic System Symbols...(UTC Timezone)'
Do n = 1 to Words(utctime)
symbol = Word(utctime,n)
Say Left(symbol,8) '=' MVSVar('SYMDEF',symbol)
End /* Do n = 1 to Words(utctime) */
Say ' '
Say 'MVS Dynamic System Symbols...(Local Timezone)'
Do n = 1 to Words(lcltime)
symbol = Word(lcltime,n)
Say Left(symbol,8) '=' MVSVar('SYMDEF',symbol)
End /* Do n = 1 to Words(lcltime) */
Exit 0
--
Dale R. Smith
Factotum
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN