It is about time I give you some more tip about HSM. HSM has two primary function, one is to migrate dataset (pretty annoying) and the other is to take backups (very reasonable). HSM hides information about what is migrated and what is backed up in two internal datasets called MCDS (Migrated Control Data Set and BCDS (Backup Control Dataset). I have earlier mentioned very briefly a TSO command called HLIST. This command queries the contens of the MCDS and BCDS.
If you execute the TSO HLIST command, HSM will output a list of all your own migrated datasets. The list is sent to your screen as line output. The most annoying thing about this output is that you cannot catch it using SYSOUT trapping. Fortunately HLIST is the only HSM command I know of that gives you the option of redirecting the output to a dataset. The command TSO HLIST ODS(HSMLIST) will output the list in dataset <TSO-prefix>.HSMLIST instead of crashing your screen. If the dataset already exists the latest output will be appended to the existing contens just like when using DISP=MOD. If the dataset does not exist HSM will create it for you.
The use of parameter ODS suddenly turns the HLIST command into something useful. Now the question is: Does HLIST return more information than just a list of migrated datasets? The answer is yes, indeed. For a description of all informations I will recommend you to use a TSO TRAP HELP HLIST, but let me use this opportunity to emphasize some of the most important parameters. The default for HLIST is to produce information about migrated datasets, but the parameter BCDS will produce informations about backup datasets instead. The parameter LEVEL(XXX) will give you informations about all dataset starting with XXX without regard to TSO prefixing. LEVEL might take some time and it does not accept wildcard characters.
When you use the ODS parameter the output sent to the dataset become far more readable than the screen output. Everything is written nicely in columns as many other products tend to do. One of my favourite columns is TRKS ALLOC. It tells you the amount of tracks that will be used on disk when the dataset is recalled or restored.
When you use DSLIST to list your datasets the column called VOLUME contains MIGRAT1 if a dataset is migrated to disk and MIGRAT2 if it is migrated to TAPE. This information is not directly available in the output from HLIST. The column called QTY 2K BLKS contains information when the dataset is migrated to disk. Another column called QTY 16K BLKS contains information when the dataset is migrated to tape. Why make things easy?