Mainframe programmers are problem-solvers. In at the moment’s massive, advanced knowledge facilities, we’re usually confronted with ad-hoc questions from administration – questions that echo the outdated Nationwide Enquirer slogan, “Inquiring Minds Need to Know.” And administration often needs solutions proper now:
- What does this dataset appear to be?
- What are its traits?
- How a lot area does it occupy?
- When was it created and final referenced?
For a single dataset, this kind of info can often be obtained with a look at an ISPF panel or two. For a listing of datasets, although, it’s not so easy. We have to acquire detailed knowledge for every dataset, probably maintain observe of operating totals, and supply a report.
Why REXX and LISTDSI Are a Pure Match
The REXX programming language is right for fixing these types of issues, and the REXX LISTDSI perform permits the programmer to simply acquire all types of details about a z/OS dataset.
LISTDSI returns knowledge in nicely over 30 variables that may inform us every thing from the dataset’s group and report size to its encryption key label, variety of listing blocks, and SMS class names.
When utilized in a loop to learn an enter record of dataset names, LISTDSI variables like SYSALLOC and SYSUSED may be accrued to maintain a operating complete of disk area. Different variables, like SYSEXPIRE and SYSUPDATED, can be utilized to establish potential issues – for instance, disk datasets which have expired or have been modified however not backed up.
Operating LISTDSI in TSO or Batch
LISTDSI is a TSO/E exterior perform and should run in a TSO handle area. That is often not an issue, nevertheless, because it’s attainable to run TSO in batch just by specifying PGM=IKJEFT01.
The best format of LISTDSI is just a REXX perform specifying the dataset title, for instance:
x = LISTDSI(the-dataset)
the place ‘the-dataset’ is a variable containing the one dataset title for which we wish info.
The variable ‘x’, the perform code, is critical as a result of LISTDSI should be known as as a REXX perform. A zero perform code signifies success, 4 signifies partial success (some however not all knowledge returned), and 16 signifies a failure.
The precise dataset info is positioned in quite a few predefined REXX variables, all of which start with the characters ‘SYS’ – akin to SYSVOLUME, SYSDSORG, SYSRECFM, and so forth. The contents of those variables can then be written out utilizing REXX ‘SAY’ statements or used for different processing within the exec.
ProductSyncsort
Storage Administration
Take management of IBM Z storage with automated, dependable, and cost-optimized administration.
Optionally available Parameters That Return Even Extra Element
By default, LISTDSI merely obtains details about the dataset from the catalog and the amount VTOC. Nonetheless, a number of further parameters can observe the dataset title within the LISTDSI name to return additional info, together with listing block counts and SMS class names.
Crucial of those parameters are:
- RECALL/NORECALL, which controls whether or not DFSMShsm is allowed to recall datasets from archive throughout LISTDSI processing
- SMSINFO/NOSMSINFO, which returns the category names for SMS-managed datasets.
Recognized Limitations to Be Conscious Of
There are, sadly, nonetheless just a few limitations to LISTDSI processing.
No info is returned for tape or Unix Methods Providers recordsdata, and era dataset names should be absolutely specified (no relative GDGs). For VSAM datasets, solely a restricted subset of data is returned (SYSVOLUME, SYSUNIT, and SYSDSORG).
It’s attainable these drawbacks can be eliminated in a future z/OS launch. Even with these limitations, nevertheless, LISTDSI is an awfully easy solution to get detailed details about z/OS datasets.
That info is returned in easy-to-use REXX variables, and gives a fast method for the programmer – going through a sudden demand for knowledge – to offer what’s wanted, when it’s wanted, to fulfill these inquiring managerial minds.
Instance: Displaying Key LISTDSI Variables
The determine under reveals a easy REXX exec that shows among the extra fascinating LISTDSI variables for a specified dataset title, together with the date and time the dataset was created:
Turning LISTDSI Output into Operational Perception
LISTDSI offers mainframe groups a quick, versatile solution to extract essential dataset particulars utilizing acquainted REXX constructs – making it simpler to reply questions, spot points, and maintain storage info flowing when it issues most.
To go even additional and acquire deeper visibility, automation, and management throughout your storage setting, be taught extra about how Syncsort
Storage Administration helps simplify and optimize z/OS storage operations.
The put up Methods to Use the REXX LISTDSI Operate to Get z/OS Dataset Data Rapidly and Simply appeared first on Exactly.


