MVS38J, TSO

LISTDSJ for MVS 3.8J


Overview

LISTDSJ – Dataset Information for MVS3.8J / Hercules
(current version: 2.0.01 2024-04-15)

Inspired by LISTDS and other similar TSO CPs that display dataset attribute information and, in particular, the absence of a LISTDSI-type TSO CP in MVS 3.8J, I started to focus on creating one to fill this void!

Some weeks later, I finalized my functional and design thoughts to embark in writing LISTDSJ for use under TSO and ISPF 2.0 (product from Wally Mclaughlin) as my contribution to the MVS 3.8J hobbyist community.

This program, LISTDSJ, accepts a data set name and provides dataset attributes including PDS directory information in the form of predefined CLIST variables from VTOC DSCBs.

LISTDSJ is similar to LISTDSI introduced and enhanced after MVS3.8J.  Some of the CLIST symbolic names used by LISTSDJ may not use the same values of a current LISTDSI version or may not be defined as in the current version of LISTDSI.

This program is written in IFOX00 Assembler (24-bit addressing) using the MVS 3.8J Tur(n)key 3 Operating System. Therefore, the LISTDSJ functions are limited to the features (support) offered by the above OS and/or documentation within this program. For example, PDS/E is not supported as not offered by the public domain MVS 3.8J Tur(n)key 3 OS. Thus, not supported by LISTDSJ.

All CLIST variables are initialized to question marks (?) and accordingly set to dataset attribute values as processed by LISTDSJ.

Since MVS3.8J is not Y2K compliant, the dates stored in DSCBs will be windowed at 70 by LISTDSJ. For example, a date stored as format YYJJJ (YY-year, JJJ-Julian date) of value 70002 and converting to format of MM/DD/CCYY will be displayed as 01/02/1970.  Another example where the year is less than 70, say 04060 (format YYJJJ) will be converted to 02/01/2004.  Leap year detection is part of the date conversion process.

Dataset information provided by LISTDSJ are for datasets residing on a single volume.

However, if a dataset residing on multiple volumes is requested, a volume list (currently limited to 5 by LISTDSJ) will be provided with reason code 19 and allocations for the FIRST volume only. This is intentional.

LISTDSJ was developed and tested using Volker Bandke’s MVS CD – MVS38J TK3 with Hercules 3.07 hosted on a Windows 10 Pro machine.  ISPF testing used ISPF 2.0 from Wally Mclaughlin.

MVS38J TK4- update 8 (maintained by Jüergen Winkelmann) includes user-mod ZP60014. After applying user-mod ZP60038, LISTDSJ was installed and successfully validated with a CLIST harness under TSO.

LISTDSJ only processes data set types (DSORG) of IS (ISAM), PS (Sequential), PO (Partitioned), DA (Direct).

If LISTDSJ retrieves information for a VSAM dataset, only limited variables are returned – they include SYSDSNAME, SYSVOLUME, SYSUNIT, and SYSDSORG. Reason code 12 will be raised with an Return Code of 4.

LISTDSJ does not support Data Facility Hierarchical Storage Manager (DFHSM) and System Managed Storage (SMS) information as not available on the public domain version of MVS3.8J.

LISTDSJ does not support RACF authority checking when opening a dataset for attribute information.

LISTDSJ allocates, opens, reads directory, closes and frees a partitioned data set (PO) only if the DIR parameter is specified. The data set can be specified as a DSN or FILENAME. Therefore, a pre-allocated dataset may be prematurely (unintentionally) freed.

LISTDSJ cannot interface with any version of REXX as of this post date including BREXX/370. It merely reports on information stored on the VTOC! Refer to the software for more details.

What are some uses of LISTDSJ under TSO?

The LISTDSJ command processor (CP) provides the same functionality as the LISTDSI function in which dataset attributes are returned in the form of CLIST variables for a given dataset name. The best and basic use is illustrated by CLIST $LDI in CBT022 from Bell and Howell and Company. $LDI simply issues the LISTDSI command for a dataset name and displays each CLIST variable on the users terminal.

Perhaps, a more creative use case is listing some dataset attribute information for a TSO session allocated DD name with a CLIST. Click here to download a zip file for this working example using LISTA and LISTDSI.

Enjoy LISTDSJ!

Prerequisite: User Modifications

Two user-mods, ZP60014 and ZP60038, are REQUIRED to process CLIST symbolic variables via the API, IKJCT441, on MVS 3.8J before using LISTDSJ.  Otherwise, LISTDSJ is rendered useless!

More information on the above user-mods can be obtained from the following website:
http://www.prycroft6.com.au/vs2mods/

Check your system to determine if one or both user-mods are required. ZP60038 requires ZP60014.

Although not a pre-requisite, ISPLINK is invoked for table services to create PDS member lists via the LISTDSJ DL0 and DL1 option if ISPF is installed on MVS38J such as ISPF 2.0 (Wally Mclaughlin’s product). If ISPF is not installed, the DL0 / DL1 option is ignored. However, MVS38J will report a system error code 806-4 on program ISPLINK when the LISTDSJ request is processed. LISTDSJ will not abend due to the 806-4 error. This is by design.

Command Line Syntax

 LISTDSJ NAME VOL(volser) DIR PNL ABOUT DS(x) DF(n) FILE DL0/DL1
Parameters can appear in any order except NAME which must be the first parameter 

  • NAME (required) 
    Must be the FIRST parameter in the command line.  Fully qualified data set name is enclosed in single quotes.  Data set names without quotes will be prefixed with USERID.  Use FILE or NAME to specify / associate a data set name as the first parameter. 
  • VOL or VOLUME (optional) 
    Target VOLUME for data set name bypassing catalog search.
  • DIR or DIRECTORY (optional) 
    Retrieve PDS directory information. This option will be ignored when the requested file is not Partitioned.
    NOTE: Last Referenced Date updated when file opened.
  • PNL (optional) 
    CLIST symbolic names use short format, &Snn.
    See Table 3, column ‘S#’ in program documentation for name specifics.
  • ABOUT (optional) 
    Display LISTDSJ date time stamp on TSO session screen. 
    NOTE: Although a data set name, as a placeholder must be specified as the first parameter before the ABOUT keyword, no dataset information is retrieved.  All CLIST variables will contain default values of question marks (?).
  • DS (optional)
    Date separator to be used for dates  (default = S)
    DS(D) use dash separator (-)
    DS(P) use period separator (.)
    DS(S) use slash separator (/)
  • DF (optional)
    Date format layout for MDY type dates (default = 3)
    DF(1) use date format MM_DD_CCYY
    DF(2) use date format DD_MM_CCYY
    DF(3) use date format CCYY_MM_DD
    DF(4) use date format CCYY_DD_MM
  • FILE (optional)
    DDName to be used to resolve dataset name from session allocated files.  Use FILE or NAME to associcate/specify dataset name
  • DL0 or DL1 (optional)
    Create PDS directory list using ISPF table services if ISPF is available such as ISPF 2.0 (Wally Mclaughlin’s product).  This option is ignored if ISPF is not available.
    DL0 creates ISPF table named DIRLST0.
    DL1 creates ISPF table named DIRLST1.

Sample Commands

 1) LISTDSJ ‘HERC01.TEST.CNTL’
Dataset attributes and other information for HERC01.TEST.CNTL are set for each LISTDSJ SYS* CLIST variable excluding DIRECTORY information.

 2) LISTDSJ ‘HERC01.TEST.CNTL’ DIR 
Dataset attributes and other information for HERC01.TEST.CNTL are set for each LISTDSJ SYS* CLIST variable including DIRECTORY information.
Note: Last Referenced Date updated when file opened.

 3) LISTDSJ ‘HERC01.TEST.CNTL’ PNL
Dataset attributes and other information for HERC01.TEST.CNTL are set for each LISTDSJ Snn CLIST variable excluding DIRECTORY information.
Note: Short variable name notation is used for this request (&Snn).

 4) LISTDSJ ‘HERC01.TEST.CNTL’ ABOUT 
Displays LISTDSJ date time stamp on TSO session screen and set all LISTDSJ SYS* CLIST variables to question marks (?).

 5) LISTDSJ SYSPROC FILE 
Dataset attributes and other information for dataset name associated with DDNAME SYSPROC are set for each LISTDSJ SYS* CLIST variables excluding DIRECTORY information.

 

CLIST Variables


*  +--+------------------+-------------------------------------------+
*  |S#| CLIST VARIABLE   | CONTENT                                   |
*  +--+------------------+-------------------------------------------+
*  |  | LASTCC           | Return code from LISTDSJ                  |
*  +--+------------------+-------------------------------------------+
*  |00| SYSDSNAME        | Data set name                             |
*  +--+------------------+-------------------------------------------+
*  |01| SYSLISTDSJMSG    | LISTDSJ message variable                  |
*  |  |                  | Miscellaneous processing message          |
*  +--+------------------+-------------------------------------------+
*  |02| SYSREASON        | LISTDSJ reason code                       |
*  |  |                  | See REASON CODE table, Table 4            |
*  |  |                  |     column REASON CODE                    |
*  +--+------------------+-------------------------------------------+
*  |03| SYSMSGLVL1       | First-level message                       |
*  |  |                  | See RETURN CODE table, Table 2            |
*  |  |                  |     column DESCRIPTION                    |
*  +--+------------------+-------------------------------------------+
*  |04| SYSMSGLVL2       | Second-level message                      |
*  |  |                  | See REASON CODE table, Table 4            |
*  |  |                  |     column DESCRIPTION                    |
*  +--+------------------+-------------------------------------------+
*  |05| SYSCREATE        | Creation Date format CCYY/JJJ             |
*  |  |                  | CCYY-century year, JJJ-julian date        |
*  |  |                  | Note: Century windowed at 70.             |
*  |  |                  | Note: See DS parm to vary date separator  | 
*  +--+------------------+-------------------------------------------+
*  |06| SYSEXDATE        | Expiration Date format CCYY/JJJ           |
*  |  |                  | CCYY-century year, JJJ-julian date        |
*  |  |                  | Note: Century windowed at 70.             |
*  |  |                  | Note: See DS parm to vary date separator  |  
*  +--+------------------+-------------------------------------------+
*  |07| SYSREFDATE       | Last Referenced Date format CCYY/JJJ      |
*  |  |                  | CCYY-century year, JJJ-julian date        |
*  |  |                  | Note: Century windowed at 70.             | 
*  |  |                  | Note: See DS parm to vary date separator  | 
*  |  |                  | Referenced date will be updated when DIR  |
*  |  |                  | option is used on a PDS request.          |
*  +--+------------------+-------------------------------------------+
*  |08| SYSDSORG         | Dataset Organization                      |
*  |  |                  | IS  -ISAM                                 |
*  |  |                  | PS  -Physical Sequential                  |
*  |  |                  | DA  -Direct Access                        |
*  |  |                  | PO  -Partition Organization               |
*  |  |                  | ?   -Undefined                            |
*  |  |                  | VS  -VSAM                                 |
*  |  |                  |                                           |
*  |  |                  | xxU -Unmovable                            |
*  +--+------------------+-------------------------------------------+
*  |09| SYSRECFM         | Record format for non-VSAM datasets       |
*  |  |                  | Character combination        e.g.  FBA    |
*  |  |                  | U -Undefined                              |
*  |  |                  | F -Fixed                                  |
*  |  |                  | V -Variable                               |
*  |  |                  | B -Blocked                                |
*  |  |                  | T -Track Overflow                         |
*  |  |                  | S -Spanned or Standard                    |
*  |  |                  | A -ANSI                                   |
*  |  |                  | M -Machine                                |
*  +--+------------------+-------------------------------------------+
*  |10| SYSLRECL         | Logical record length                     |
*  +--+------------------+-------------------------------------------+
*  |11| SYSBLKSIZE       | Block size                                |
*  +--+------------------+-------------------------------------------+
*  |12| SYSKEYLEN        | Key Length                                |
*  +--+------------------+-------------------------------------------+
*  |13| SYSKEYPOS        | Relative Key Position                     |
*  +--+------------------+-------------------------------------------+
*  |14| SYSPASSWORD      | Password Indication                       |
*  |  |                  | NONE   No password required               |
*  |  |                  | READ   Password required to READ          |
*  |  |                  | R_W    Password required to READ and WRITE|
*  +--+------------------+-------------------------------------------+
*  |15| SYSRACFA         | RACF® Indication                          |
*  |  |                  | NONE                                      |
*  |  |                  | RACF                                      |
*  +--+------------------+-------------------------------------------+
*  |16| SYSADIRBLK       | Directory Blocks Allocated                |
*  |  |                  | Only for PDS when DIR option is specified |
*  +--+------------------+-------------------------------------------+
*  |17| SYSUDIRBLK       | Directory Blocks Used                     |
*  |  |                  | Only for PDS when DIR option is specified |
*  +--+------------------+-------------------------------------------+
*  |18| SYSNUDIRBLK      | Directory Blocks Not Used                 |
*  |  |                  | Only for PDS when DIR option is specified |
*  +--+------------------+-------------------------------------------+
*  |19| SYSMEMBERS       | Number of Members (total members)         |
*  |  |                  | Only for PDS when DIR option is specified |
*  +--+------------------+-------------------------------------------+
*  |20| SYSMEMBERSALIAS  | Number of Alias Members (total within     |
*  |  |                  |   SYSMEMBERS)                             |
*  |  |                  | Only for PDS when DIR option is specified |
*  +--+------------------+-------------------------------------------+
*  |21| SYSVOLUME        | Volume serial ID                          |
*  +--+------------------+-------------------------------------------+
*  |22| SYSUNIT          | Device Unit on which volume resides       |
*  |  |                  | 2305, 2305-2, 2314,                       |
*  |  |                  | 3330, 3340, 3350, 3375, 3380, 3390        |
*  +--+------------------+-------------------------------------------+
*  |23| SYSUNITS         | Space Units                               |
*  |  |                  | CYLINDER                                  |
*  |  |                  | TRACK                                     |
*  |  |                  | BLOCK                                     |
*  |  |                  | ABSOLUTE                                  |
*  +--+------------------+-------------------------------------------+
*  |24| SYSTRKSUSED      | Total Tracks Used                         |
*  +--+------------------+-------------------------------------------+
*  |25| SYSEXTENTS       | Number of Extents allocated               |
*  +--+------------------+-------------------------------------------+
*  |26| SYSTRKSALLOC     | Total Tracks Allocated                    |
*  +--+------------------+-------------------------------------------+
*  |27| SYSSECONDS       | Secondary Allocation in Space Units       |
*  +--+------------------+-------------------------------------------+
*  |28| SYSTRKSUNUSED    | Total Tracks Unused                       |
*  +--+------------------+-------------------------------------------+
*  |29| SYSCYLVOL        | Cylinders for Volume                      |
*  |  |                  | As stored in volume F4-DSCB               |
*  +--+------------------+-------------------------------------------+
*  |30| SYSTRKSCYL       | Tracks per Cylinder for SYSUNIT           |
*  |  |                  | As stored in volume F4-DSCB               |
*  +--+------------------+-------------------------------------------+
*  |31| SYSJCREATE       | Creation Date format YYJJJ                |
*  |  |                  | YY-year, JJJ-julian date                  |
*  |  |                  | as stored by MVS3.8J                      |
*  +--+------------------+-------------------------------------------+
*  |32| SYSJEXDATE       | Expiration Date format YYJJJ              |
*  |  |                  | YY-year, JJJ-julian date                  |
*  |  |                  | as stored by MVS3.8J                      |
*  +--+------------------+-------------------------------------------+
*  |33| SYSJREFDATE      | Last Referenced Date format YYJJJ         |
*  |  |                  | YY-year, JJJ-julian date                  |
*  |  |                  | as stored by MVS3.8J                      |
*  |  |                  | Referenced date will be updated when DIR  |
*  |  |                  | option is used on a PDS request.          |
*  +--+------------------+-------------------------------------------+
*  |34| SYSTRKLEN        | Track Length        for SYSUNIT           |
*  |  |                  | As stored in volume F4-DSCB               |
*  +--+------------------+-------------------------------------------+
*  |35| SYSUNITCAP       | Capacity for SYSUNIT                      |
*  |  |                  | Computed as -                             |
*  |  |                  | SYSCYLVOL * SYSTRKSCYL * SYSTRKLEN        |
*  +--+------------------+-------------------------------------------+
*  |36| SYSBLKSTRK       | Blocks per Track for SYSUNIT              |
*  |  |                  | Computed as -                             |
*  |  |                  | SYSTRKLEN / SYSBLKSIZE                    |
*  +--+------------------+-------------------------------------------+
*  |37| SYSCCREATE       | Creation Date  format CCYY/MM/DD          |
*  |  |                  | MM-month, DD-day, CCYY-century year       |
*  |  |                  | Note: See DF parm to vary date layout     | 
*  |  |                  | Note: See DS parm to vary date separator  | 
*  +--+------------------+-------------------------------------------+
*  |38| SYSCEXDATE       | Expiration Date  format CCYY/MM/DD        |
*  |  |                  | MM-month, DD-day, CCYY-century year       |
*  |  |                  | Note: See DF parm to vary date layout     | 
*  |  |                  | Note: See DS parm to vary date separator  | 
*  +--+------------------+-------------------------------------------+
*  |39| SYSCREFDATE      | Last Reference Date   format CCYY/MM/DD   |
*  |  |                  | MM-month, DD-day, CCYY-century year       |
*  |  |                  | Note: See DF parm to vary date layout     |
*  |  |                  | Note: See DS parm to vary date separator  |
*  |  |                  | Referenced date will be updated when DIR  |
*  |  |                  | option is used on a PDS request.          |
*  +--+------------------+-------------------------------------------+
*  |40| SYSNUMVOLS       | Number of volumes for dataset             |
*  |  |                  | As stored in catalog                      |
*  +--+------------------+-------------------------------------------+
*  |41| SYSDSCAT         | Dataset cataloged indication (Y/N)        |
*  |  |                  | Y      Dataset is cataloged               |
*  |  |                  | N      Dataset is not cataloged           |
*  +--+------------------+-------------------------------------------+
*  |42| SYSDSCATV        | Dataset cataloged volume serial ID        |
*  |  |                  | Volume serial of data set name found      |
*  |  |                  | on catalog                                |
*  +--+------------------+-------------------------------------------+
*  |43| SYSPRIMARY       | Primary Allocation in Space units.        |
*  +--+------------------+-------------------------------------------+
*  |44| SYSUSED          | Allocation used, in Space units.          |
*  +--+------------------+-------------------------------------------+
*  |45| SYSVOLUMES       | List of volume serial numbers for         |
*  |  |                  | single and multiple volume datasets.      |
*  |  |                  | Limited to 5 volumes.                     |
*  +--+------------------+-------------------------------------------+
*  |46| SYSALLOC         | Allocation in Space units.                |
*  +--+------------------+-------------------------------------------+
*  |47| SYSUPDATED       | Dataset Backup Change Indication (Y/N)    |
*  |  |                  | Y      Dataset updated since last backup  |
*  |  |                  | N      Dataset not updated since last     |
*  |  |                  |        backup                             |
*  +--+------------------+-------------------------------------------+
*


Table 3 - CLIST Variables

Reason Codes


*  +-------+---------------------------------------------------------+
*  |REASON |                                                         |
*  | CODE  | DESCRIPTION                                             |
*  +-------+---------------------------------------------------------+
*  |  00   | Normal completion                                       |
*  +-------+---------------------------------------------------------+
*  |  02   | Dynamic allocation processing error                     |
*  |       | 'RC=xxx Allocate PDS error'                             |
*  |       | 'RC=xxx Free PDS error'                                 |
*  +-------+---------------------------------------------------------+
*  |  03   | Data set type cannot be processed                       |
*  +-------+---------------------------------------------------------+
*  |  05   | Dataset not cataloged                                   |
*  |       | 'RC=xxx DSCB-Fx CAMLST NAME error'                      |
*  +-------+---------------------------------------------------------+
*  |  06   | Error obtaining dataset                                 |
*  +-----------------------------------------------------------------+
*  |  07   | Device type not found (DVCLST internal table)           |
*  +-----------------------------------------------------------------+
*  |  12   | VSAM datasets not supported                             |
*  +-------+---------------------------------------------------------+
*  |  13   | Dataset could not be opened or closed                   |
*  |       | 'RC=xxx Open PDS error'                                 |
*  |       | 'RC=xxx Close PDS error'                                |
*  +-------+---------------------------------------------------------+
*  |  14   | Device type not found in UCB                            |
*  +-------+---------------------------------------------------------+
*  |  17   | System or User Abend error                              |
*  +-------+---------------------------------------------------------+
*  |  19   | Dataset resides on multiple volumes                     |
*  +-------+---------------------------------------------------------+
*  |  21   | Catalogue error when locating dataset                   |
*  +-------+---------------------------------------------------------+
*  |  22   | Volume not mounted                                      |
*  |       | 'RC=xxx DSCB-Fx CAMLST NAME error'                      |
*  |       | 'RC=xxx DSCB-Fx CAMLST SEARCH error'                    |
*  |       | 'RC=xxx DSCB-Fx CAMLST SEEK error'                      |
*  +-------+---------------------------------------------------------+
*  |  23   | Permanent I/O error on volume                           |
*  |       | 'RC=xxx DSCB-Fx CAMLST NAME error'                      |
*  |       | 'RC=xxx DSCB-Fx CAMLST SEARCH error'                    |
*  |       | 'RC=xxx DSCB-Fx CAMLST SEEK error'                      |
*  +-------+---------------------------------------------------------+
*  |  24   | Dataset not found                                       |
*  |       | 'RC=xxx DSCB-Fx CAMLST NAME error'                      |
*  |       | 'RC=xxx DSCB-Fx CAMLST SEARCH error'                    |
*  |       | 'RC=xxx DSCB-Fx CAMLST SEEK error'                      |
*  +-------+---------------------------------------------------------+
*  |  26   | Dataset on MSS (Mass Storage) device                    |
*  +-------+---------------------------------------------------------+
*  |  27   | No VOLSER allocated to dataset (volumes=0)              |
*  +-------+---------------------------------------------------------+
*  |  28   | DDNAME must be 1-8 characters                           |
*  +-------+---------------------------------------------------------+
*  |  29   | Dataset or DD name must be specified                    |
*  +-------+---------------------------------------------------------+
*  |  90   | DDN not allocated (not found)                           |
*  +-------+---------------------------------------------------------+
*  |  99   | ABOUT request, no DSN info retrieved                    |
*  +-------+---------------------------------------------------------+
*  Note: Additional information may be included for selected Reason
*        Codes in variable SYSLISTDSJMSG shown in quotes above
*
*

Table 4 - REASON Codes

Return Codes


*  +------+----------------------------------------------------------+ 
*  |RETURN|                                                          | 
*  | CODE |  DESCRIPTION                                             | 
*  +------+----------------------------------------------------------+
*  |  00  |  Successful Request                                      | 
*  +------+----------------------------------------------------------+ 
*  |  04  |  Some dataset information is unavailable. All variable   | 
*  |      |  values are valid except for those with question marks   | 
*  |      |  (?) which could not be resolved or invalid for request. | 
*  +------+----------------------------------------------------------+ 
*  |  16  |  Severe error occurred.                                  | 
*  |      |  None of the variables values are valid.                 | 
*  +------+----------------------------------------------------------+ 
*  | 4004-|  Parm not supplied to LISTDSJ                            | 
*  | 4005 |  None of the variables values are valid.                 | 
*  |      |  Program terminated.                                     | 
*  +------+----------------------------------------------------------+ 
*  | 4008-|  CPPL error no variables found                           | 
*  | 4010 |  None of the variables values are valid.                 | 
*  |      |  Program terminated.                                     | 
*  +------+----------------------------------------------------------+
*  | 4095 |  Program cannot link to LDSJISP                          |
*  |      |  Program terminated.                                     |
*  +------+----------------------------------------------------------+
*  | 4096 |  Program cannot link to LDSJMSG                          |
*  |      |  Program terminated.                                     |
*  +------+----------------------------------------------------------+
*  | 4097 |  Program cannot link to TSO dynamic allocation interface | 
*  |      |  Program terminated.                                     | 
*  +------+----------------------------------------------------------+ 
*  | 4098 |  Program cannot link to CLIST variable processing API    | 
*  |      |  Program terminated.                                     | 
*  +------+----------------------------------------------------------+ 
*  | 4099 |  Program not executing under TSO                         | 
*  |      |  Program terminated.                                     | 
*  +------+----------------------------------------------------------+ 
*  Note: -Symbolic Variable &LASTCC contains LISTDSJ return code 
*        -Messages in the 4xxx range issue a TSO session message 
*

Table 2 - RETURN Codes



TSO CLIST Testing Harness

With CLISTDSJ as a testing harness tool under TSO, a list type and parameters can be used to invoke LISTDSJ to display variable results on a TSO session screen. 

At the TSO Ready prompt, enter the following command:

   READY                                                    
  CLISTDSJ 1 PRMS(”’herc01.test.cntl”’)    

The results may display on multiple screens depending on configured terminal type (MOD2 24×80, MOD4 43×80, MOD5, custom, etc.).

--- CLISTDSJ LIST TYPE '1'                                        
--- LISTDSJ RC=0                                                  
00. SYSDSNAME      ='HERC01.TEST.CNTL                            '
01. SYSLISTDSJMSG  ='                                             
                                         '                        
02. SYSVOLUME      ='PUB000'                                      
03. SYSUNIT        ='3350   '                                     
04. SYSDSORG       ='PO '                                         
05. SYSRECFM       ='FB   '                                       
06. SYSLRECL       ='00080'                                       
07. SYSBLKSIZE     ='19040'                                       
08. SYSKEYLEN      ='000'                                         
09. SYSKEYPOS      ='00000'                                       
10. SYSSECONDS     ='0000001'                                     
11. SYSUNITS       ='CYLINDER'                                    
12. SYSEXTENTS     ='001'                                         
13. SYSCREATE      ='1974-194'                                    
14. SYSJCREATE     ='74194'                                       
15. SYSCCREATE     ='1974-07-13'        
16. SYSREFDATE     ='2019-138'          
17. SYSJREFDATE    ='19138'             
18. SYSCREFDATE    ='2019-05-18'        
19. SYSEXDATE      ='0000-000'          
20. SYSJEXDATE     ='00000'             
21. SYSCEXDATE     ='0000-00-00'        
22. SYSPASSWORD    ='NONE '             
23. SYSRACFA       ='NONE'              
24. SYSTRKSCYL     ='00030'             
25. SYSTRKLEN      ='19254'             
26. SYSBLKSTRK     ='00001'             
27. SYSADIRBLK     ='?????'             
28. SYSUDIRBLK     ='?????'             
29. SYSNUDIRBLK    ='?????'             
30. SYSMEMBERS     ='?????'             
31. SYSMEMBERSALIAS='?????'             
32. SYSREASON      ='00'                
33. SYSMSGLVL1     ='SUCCESSFUL REQUEST'
34. SYSMSGLVL2     ='NORMAL COMPLETION' 
35. SYSCYLVOL      ='00555'             
36. SYSTRKSALLOC   ='00030'             
37. SYSTRKSUSED    ='00001'             
38. SYSTRKSUNUSED  ='00029'                              
39. SYSUNITCAP     ='000000320579100'                    
40. SYSNUMVOLS     ='001'                                
41. SYSDSCAT       ='Y'                                  
42. SYSDSCATV      ='PUB000'                             
43. SYSPRIMARY     ='00001'                              
44. SYSUSED        ='00000'                              
45. SYSVOLUMES     ='PUB000                             '
46. SYSALLOC       ='00001'                              
47. SYSUPDATED     ='Y'
***                                                      


CLISTDSJ can display three list format types. See CLISTDSJ internal documentation for more information.

For type 2 list, condensed to one screen (24×80), use the command:

   READY                                                    
  CLISTDSJ 2 PRMS(”’herc01.test.cntl”’)    

--- CLISTDSJ LIST TYPE '2'                                                  
--- LISTDSJ RC=0                                                             
SYSLISTDSJMSG='                                                              
                                   '                                         
RC='0' SYSMSGLVL1='SUCCESSFUL REQUEST'                                       
SYSREASON='00' SYSMSGLVL2='NORMAL COMPLETION'                                
SYSDSNAME='HERC01.TEST.CNTL                            '                     
SYSDSORG='PO ' SYSRECFM='FB   ' SYSLRECL='00080' SYSBLKSIZE='19040'          
SYSKEYLEN='000' SYSKEYPOS='00000' SYSPASSWORD='NONE ' SYSRACFA='NONE'        
SYSJCREATE='74194' SYSJEXDATE='00000' SYSJREFDATE='19274'                    
SYSCREATE='1974-194' SYSEXDATE='0000-000' SYSREFDATE='2019-274'              
SYSCCREATE='1974-07-13' SYSCEXDATE='0000-00-00' SYSCREFDATE='2019-10-01'     
SYSTRKLEN='19254' SYSBLKSTRK='00001'                                         
SYSVOLUME='PUB000' SYSUNIT='3350   ' SYSCYLVOL='00555' SYSTRKSCYL='00030'    
SYSUNITS='CYLINDER' SYSSECONDS='0000001' SYSEXTENTS='001'                    
SYSTRKSALLOC='00030' SYSTRKSUSED='00001' SYSTRKSUNUSED='00029'               
SYSADIRBLK='?????' SYSUDIRBLK='?????' SYSNUDIRBLK='?????'                    
SYSMEMBERS='?????' SYSMEMBERSALIAS='?????'                                   
SYSUNITCAP='000000320579100' SYSNUMVOLS='001' SYSDSCAT='Y' SYSDSCATV='PUB000'
SYSPRIMARY='00001' SYSUSED='00000'                                           
SYSVOLUMES='PUB000                             ' SYSALLOC='00001' SYSUPDATED='Y'            
***                                            

For type 3 list, 3270-type layout, use the command:

   READY                                                    
  CLISTDSJ 3 PRMS(”’herc01.test.cntl”’)    

--- CLISTDSJ LIST TYPE '3'                                                     
--- LISTDSJ RC=0                                                               
MSG:                                                                        ...
RETURN CD: 0   SUCCESSFUL REQUEST                                              
SYSREASON: 00   NORMAL COMPLETION                                              
                                                                               
HERC01.TEST.CNTL                                                               
DSORG RECFM LRECL BLKSZ KEYL  RKP   PASSWORD RACF CHGD                             
PO    FB    00080 19040 000   00000 NONE     NONE    Y                         
CREDT 1974-07-13  EXPDT 0000-00-00  REFDT 2019-10-01     CATL: Y               
  74194 1974-194    00000 0000-000    19274 2019-274     CVOL: PUB000          
PUB000                                                   VOLS: 001             
ALLOCATION:     TYPE     PRI     USED     SEC        ALLOC                     
        PUB000  CYLINDER 00001   00000    0000001    00001                     
TRACKS: TOT     USED     UNUSED  EXTENTS                                       
        00030   00001    00029   001                                           
DEVICE: CYLS    TRKSCYL  TRKLEN  BLKSTRK  CAPACITY                             
3350    00555   00030    19254   00001    000000320579100                      
PO DIR: BLKS    USED     UNUSED  MEMBERS  ALIAS                                
        ?????   ?????    ?????   ?????    ?????                                
***                                                                            


ISPF Testing Application

Comprised of two panels (application and help) and a CLIST driver under ISPF 2.0, a data set name with optional parameters can be passed to LISTDSJ to display results.

On the ISPF main menu panel, enter the following on the OPTION line:

  OPTION ===> TSO %CLISTDIJ                       

The LISTDSJ panel will be displayed. Enter a dataset name as depicted below.

-------------------------- LISTDSJ for MVS38J ----------------------- v2.0.01 -
COMMAND ===>                                                                   
                                                           PANEL    - PLISTDSJ 
NAME ==> 'herc01.test.cntl'_                               USERID   - HERC01   
PARMS =>                                                   TIME     - 22:51    
                                                           DATE     - 01/10/19 
MSG:                                                                - 19.274   
Return CD:                                                 SYSTEM   - BSP1     
SYSREASON:                                                 TERMINAL - 3277     
                                                           TermSize - 24x80  
                                                           APPLID   - LPWB     
DSORG RECFM LRECL BLKSZ KEYL  RKP   PASSWORD RACF CHGD                         
                                                                               
CREDT             EXPDT             REFDT                CATL:                 
                                                         Cvol:                 
                                                         VOLS:                 
Allocation:     TYPE     PRI     USED     SEC     ALLOC                        
                                                                               
Tracks: TOT     USED     UNUSED  EXTENTS                                       
                                                                               
Device: CYLS    TRKSCYL  TRKLEN  BLKSTRK  CAPACITY                             
                                                                               
PO Dir: BLKS    USED     UNUSED  MEMBERS  ALIAS                                
                                                                               

Below is a sample results panel for dataset HERC01.TEST.CNTL:

-------------------------- LISTDSJ for MVS38J ----------------------- v2.0.01 -
COMMAND ===>                                                                   
                                                           PANEL    - PLISTDSJ 
NAME ==> 'HERC01.TEST.CNTL'                                USERID   - HERC01   
PARMS =>                                                   TIME     - 22:51    
                                                           DATE     - 01/10/19 
MSG:                                                                - 19.274   
Return CD: 0     SUCCESSFUL REQUEST                        SYSTEM   - BSP1     
SYSREASON: 00    NORMAL COMPLETION                         TERMINAL - 3277     
                                                           TermSize - 24x80  
HERC01.TEST.CNTL                                           APPLID   - LPWB     
DSORG RECFM LRECL BLKSZ KEYL  RKP   PASSWORD RACF CHGD                             
PO    FB    80    19040 0     0     NONE     NONE    Y
CREDT 1974/07/13  EXPDT 0000/00/00  REFDT 2019/05/18     CATL: Y               
  74194 1974/194    00000 0000/000    19138 2019/138     Cvol: PUB000          
PUB000                                                   VOLS: 1               
Allocation:     TYPE     PRI     USED     SEC     ALLOC                        
        PUB000  CYLINDER 1       0        1       1
Tracks: TOT     USED     UNUSED  EXTENTS                                       
        30      1        29      1
Device: CYLS    TRKSCYL  TRKLEN  BLKSTRK  CAPACITY                             
3350    555     30       19524   1        000000320579100
PO Dir: BLKS    USED     UNUSED  MEMBERS  ALIAS                                
        ?????   ?????    ?????   ?????    ?????  

Below is the sample help panel for LISTDSJ under ISPF 2.0:

--HELP-------------------- LISTDSJ for MVS38J ----------------------- v2.0.01 -
COMMAND ===>                                               PANEL    - HLISTDSJ 
                                                           USERID   - HERC01   
                                                                               
 NAME ==> xxxxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx                         
 o  required, DSN (dataset name) or DDNAME (see FILE keyword)                  
    DSN in quotes is fully qualified, otherwise, prefix DSN with USERID        
 PARMS => VOLUME(nnnnnn) DIRECTORY PNL ABOUT DS(x) DF(n) FILE DLn              
 o VOLUME    optional, target VOLUME for dataset name.      (abbreviated VOL)  
 o DIRECTORY optional, retrieve PDS directory information.  (abbreviated DIR)  
             Ignored when file is not Partitioned.                             
             NOTE: Last Referenced Date updated when file open.                
 o PNL       optional, CLIST symbolic names use short name format, Snn.        
 o ABOUT     optional, display LISTDSJ date time stamp on TSO session screen.  
             NOTE: No dataset information is retrieved.                        
 o DS        optional, date seperator to be used for dates                     
             D-Dash P-Period S-Slash                                           
 o DF        optional, date format layout for MDY type dates                   
             1-MM/DD/CCYY 2-DD/MM/CCYY 3-CCYY/MM/DD 4-CCYY/DD/MM               
 o FILE      optional, use NAME as a DDNAME for an allocated dataset           
 o DL0 DL1   optional, create PDS member list in ISPF table                    
             DL0 table named DIRLST0, DL1 table named DIRLST1                  
                                                                               
 Type MYTUTOR for LISTDSJ Tutorial.  


Software Disclaimer

No guarantee; No warranty; Install / Use at your own risk.

This software is provided “AS IS” and without any expressed or implied warranties, including, without limitation, the implied warranties of merchantability and fitness for a particular purpose.

The author requests keeping authors name intact to any modified versions.

In addition, the author requests readers to submit any code modifications / enhancements and associated comments for consideration into a subsequent release (giving credit to contributors) thus, improving overall functionality and further benefiting the MVS 3.8J hobbyist public domain community.

Access LISTDSJ now for a demo!

Take LISTDSJ for a ‘test drive’ before downloading and installing onto your MVS38J system.

Point your TN3270 terminal emulator using SSL to

URL: mywhs.belmontes.net
PORT: 5000
SSL : Version 3

Once connected, log on using any of the TK4- default user ids and passcodes.

After successful logon, select option I (I for ISPF) from the TSO Applications Menu. Note, option I is not listed on the menu – this is intentional.

Type TSO %CLISTDIJ in the command field (OPTION ==>) and press <ENTER> to display the ‘LISTDSJ for MVS38j’ panel.

Type ‘HERC01.TEST.CNTL’ (with single quotes) into the NAME field and press <ENTER> to display dataset attributes.

The LISTDSJ CP is executed to create clist variables containing dataset attributes for the request dataset name and display associated values on the ‘LISTDSJ for MVS38J’ panel.

The LISTDSJ help panel can be displayed by pressing <PF1>.

Continue to request another set of dataset attributes for a different data set name including any LISTDSJ parameters.

To end the ‘LISTDSJ for MVS38J’ panel dialog, press <PF3>.

Use <PF3> to terminate from ISPF and TSO Applications Menu returning to the TSO READY prompt.

Log off TSO.

Terminate 3270 session.


Installing LISTDSJ Software

After downloading the ZIP file, the approach for this installation procedure is to transfer the distribution content (HET and/or XMI) from the your personal computing device to MVS with minimal JCL (less than 24 lines for easy copy-paste) and to continue the installation procedure using supplied JCL from the MVS CNTL data set under TSO.

  • Click here to download the LISTDSJ zip file to your PC local drive.

The below README file includes a ZIP file content list, pre-installation requirements and installation steps.

LISTDSJ for MVS3.8J / Hercules                                               
==============================                                               


Date: 4/15/2024  Release V2R0M01
      4/02/2021  Release V2R0M00
      2/27/2021  Release V1R0M40
      5/07/2020  Release V1R0M30
      4/10/2020  Release V1R0M20
      9/30/2019  Release V1R0M10
      5/17/2019  Release V1R0M01
      4/29/2019  Release V1R0M00  **INITIAL software distribution

*  Author:  Larry Belmontes Jr.
*           https://ShareABitofIT.net/LISTDSJ-for-MVS-3-8J
*           Copyright (C) 2019-2021  Larry Belmontes, Jr.


----------------------------------------------------------------------
|    LISTDSJ      I n s t a l l a t i o n   R e f e r e n c e        |
----------------------------------------------------------------------

   The approach for this installation procedure is to transfer the
distribution content from your personal computing device to MVS with
minimal JCL and to continue the installation procedure using supplied
JCL from the MVS CNTL data set under TSO.

   Below are descriptions of ZIP file content, pre-installation
requirements (notes, credits) and installation steps.

Good luck and enjoy this software as added value to MVS 3.8J!
-Larry Belmontes



----------------------------------------------------------------------
|    LISTDSJ      C h a n g e   H i s t o r y                        |
----------------------------------------------------------------------
*
*  MM/DD/CCYY Version  Change Description
*  ---------- -------  -----------------------------------------------
*  04/15/2024 2.0.01   - Add MYTUTOR command to CLISTDIJ
*                      - Add tutorial screens                           
*                      - Correct DSORG setting for unknown     
*                      - Correct RECFM setting for unknwwn    
*                      - Misc documentation updates                     
*                                                                       
*  04/02/2021 2.0.00   - Change software distribution packaging     
*                        (HET and XMI)
*                      - LISTDSJ Shared macros                          
*                      - Externalize message processing (LDSJMSG)       
*                      - Externalize ISPF Service processing (LDSJISP)  
*                      - Misc documentation updates                     
*                                                                       
*  02/27/2021 1.0.40   - Support new variable, &SYSUPDATED              
*                      - Correct TSO environment test      
*                      - Add TSOB  parm keyword    
*                      - Activate reason code 12 (VSAM not supported)
*                      - Activate reason code 14 (not found UCB entry)  
*                      - Activate reason code 7  (not found in internal 
*                        table DVCLST)                                  
*                      - Activate reason code 27 (no volser for DSN)    
*                      - Activate reason code 3 (cannot process DSORG)  
*                      - Add support of '?ABOUT' as first paramter      
*                        for ABOUT information                          
*                      - Various program documentation updates          
*
*  05/07/2020 1.0.30   - Change software distribution packaging and
*                        installation procedure to use a Hercules
*                        Emulated Tape (HET)
*                      - No change to LISTDSJ program
*                                                                       
*  04/10/2020 1.0.20   - Correct TSB addr for TSO ENV testing           
*                      - Minor corrections to LISTDSJ
*                      - Minor updates to CLIST CLISTDIJ
*                      - Updated message member
*                                                                       
*  09/30/2019 1.0.10   - Add comments for DF and DS keywords            
*                      - Add keywords DIRECTORY and VOLUME              
*                      - Changed list of values for &SYSUNITS to        
*                        CYLINDER, TRACK, BLOCK, ABSOLUTE               
*                      - Support new variable, &SYSALLOC,               
*                      - Support USERID prefix for unquoted DSN         
*                      - Changed date seperator and format defaults     
*                        - Date Separator to dash    (-)                
*                        - Date Format to CCYY_MM_DD (3)                
*                      - Support FILE keyword   
*                      - Support DL0 and DL1 keywords
*                      - Enhance calling of IKJCT441 and ISPLINK        
*                                                                       
*  05/17/2019 1.0.01   - Add DS (Date Separator) keyword
*                      - Add DF (Date Format layout) keyword
*                      - Defaults can be customized at installation
*                                                                       
*  04/29/2019 1.0.00   - Initial version released to MVS 3.8J
*                        hobbyist public domain
*
*
*
======================================================================
* I. C o n t e n t   o f   Z I P   F i l e                           |
======================================================================

o  $INST00.JCL          Define Alias for HLQ in Master Catalog

o  $INST01.JCL          Load CNTL data set from distribution tape

o  $RECVXMI.JCL         RECV370 Receive XMI SEQ to MVS PDSs

o  $RECVTSO.JCL         TSO Receive XMI SEQ to MVS PDSs

o  LISTDSJ.V2R0M01.HET  Hercules Emulated Tape (HET) multi-file volume
   volser=VS2001        containing software distribution library.

o  LISTDSJ.V2R0M01.XMI  XMIT file containing software distribution library.

o  DSCLAIMR.TXT         Disclaimer

o  PREREQS.TXT          Required user-mods

o  README.TXT           This File
   Note: See application web page for any updates to readme.txt


Note:   ISPF v2.0+ (ISPF-like product from Wally Mclaughlin) must be     
-----   installed under MVS 3.8J TSO including associated user-mods
        per ISPF Installation Pre-reqs.

Note:   Two user-mods, ZP60014 and ZP60038, are REQUIRED to process
-----   CLIST symbolic variables via the IKJCT441 API on MVS 3.8J before
        using this software.
        More information and download links at:
        http://www.prycroft6.com.au/vs2mods/



======================================================================
* II. P r e - i n s t a l l a t i o n   R e q u i r e m e n t s      |
======================================================================

o  The Master Catalog name for HLQ aliases.

o  The Master Catalog password may be required for some installation
   steps.

o  If loading via tape files, device 480 is utilized.

o  DATASET List after distribution library load for reference purposes:

   DATA-SET-NAME------------------------------- VOLUME ALTRK USTRK ORG FRMT % XT
   LISTDSJ.V2R0M01.ASM                          MVSDLB    40    11 PO  FB  67  1
   LISTDSJ.V2R0M01.CLIST                        MVSDLB     6     2 PO  FB  83  1
   LISTDSJ.V2R0M01.CNTL                         MVSDLB    20     5 PO  FB  55  1
   LISTDSJ.V2R0M01.HELP                         MVSDLB     2     1 PO  FB  50  1
   LISTDSJ.V2R0M01.ISPF                         MVSDLB    15     7 PO  FB  80  1
   LISTDSJ.V2R0M01.MACLIB                       MVSDLB     4     1 PO  FB  50  1
   **END**    TOTALS:      87 TRKS ALLOC        27 TRKS USED       6 EXTENTS    


   Confirm the TOTAL track allocation is available on your device.

   Note: A different DASD device type (e.g. 3380) may yield different usage.

o  TSO user-id with sufficient access rights to update SYS2.CMDPROC,
   SYS2.CMDLIB, SYS2.HELP, SYS2.LINKLIB and/or ISPF libraries.

o  For installations with a security system (e.g. RAKF), you MAY need to
   insert additional JOB statement information.

   //         USER=???????,PASSWORD=????????

o  Names of ISPCLIB (Clist), ISPMLIB (Message), ISPLLIB (Load) and/or
   ISPPLIB (Panel) libraries.

o  Download ZIP file to your PC local drive.

o  Unzip the downloaded file into a temp directory on your PC device.

o  Install pre-requisite (if any) software and/or user modifications.

o  JCL from you local device (after unzip) may be edited using
   Notepad or nano (based on you host OS) and submitted via TCP/IP
   sockets reader if your system configuration supports this option.
   This option can replace some copy-paste tasks during installation.
   For more information on submitting JCL to MVS 3.8J, see
   
Submitting JCL to MVS 3.8J
o For more information on SHRABIT software distribution library, see
SHRABIT Distributions for MVS38J
o For more information on SHRABIT software installation, see
SHRABIT Installations for MVS38J
====================================================================== * III. I n s t a l l a t i o n S t e p s | ====================================================================== +--------------------------------------------------------------------+ | Step 1. Determine software installation source | +--------------------------------------------------------------------+ | HET or XMI ? | +--------------------------------------------------------------------+ a) Software can be installed from one of two sources, HET or XMI. - For tape installation (HET), proceed to STEP 3. **** or - For XMIT installation (XMI), proceed to next STEP. +--------------------------------------------------------------------+ | Step 2. Load distribution source from XMI file | +--------------------------------------------------------------------+ | JCL Member: SHRABIT.LISTDSJ.V2R0M01.CNTL($RECVXMI) | | JCL Member: SHRABIT.LISTDSJ.V2R0M01.CNTL($RECVTSO) | +--------------------------------------------------------------------+ ______________________________________________________________________ //RECV000A JOB (SYS),'Receive LISTDSJ XMI', <-- Review and Modify // CLASS=A,MSGCLASS=X,REGION=0M, <-- Review and Modify // MSGLEVEL=(1,1),NOTIFY=&SYSUID <-- Review and Modify //* -------------------------------------------------------* //* * JOB: $RECVXMI Receive Application XMI Files * //* * using RECV370 * //* -------------------------------------------------------* //RECV PROC HLQ='SHRABIT.LISTDSJ',VRM=V2R0M01,TYP=XXXXXXXX, // DSPACE='(TRK,(10,05,40))',DDISP='(,CATLG,DELETE)', // DUNIT=DISK,DVOLSER=PUB006 <-- Review and Modify //* //RECV370 EXEC PGM=RECV370 //RECVLOG DD SYSOUT=* //XMITIN DD DISP=SHR,DSN=&&XMIPDS(&TYP) //SYSPRINT DD SYSOUT=* //SYSUT1 DD DSN=&&SYSUT1, // UNIT=SYSALLDA,SPACE=(CYL,(10,05)),DISP=(,DELETE,DELETE) //SYSUT2 DD DSN=&HLQ..&VRM..&TYP,DISP=&DDISP, // UNIT=&DUNIT,SPACE=&DSPACE,VOL=SER=&DVOLSER //SYSIN DD DUMMY //SYSUDUMP DD SYSOUT=* // PEND //* //* -------------------------------------------------------* //* Ensure parent HLQ alias is declared //* -------------------------------------------------------* //DEFALIAS EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * PARM GRAPHICS(CHAIN(SN)) LISTCAT ALIAS ENT(SHRABIT) /* Review and modify catalog name below */ IF LASTCC NE 0 THEN - DEFINE ALIAS(NAME(SHRABIT) RELATE(SYS1.UCAT.MVS)) /* //* //* -------------------------------------------------------* //* RECV370 LISTDSJ Software Distribution //* -------------------------------------------------------* //XMIPDS EXEC RECV,TYP=XMIPDS,DSPACE='(CYL,(10,05,10),RLSE)' //RECV370.XMITIN DD DISP=SHR,DSN=your.transfer.xmi <-- XMI File //RECV370.SYSUT2 DD DSN=&&XMIPDS,DISP=(,PASS), // UNIT=SYSDA,SPACE=&DSPACE //* //CNTL EXEC RECV,TYP=CNTL //RECV370.SYSUT2 DD DDNAME=&TYP //CNTL DD DSN=&HLQ..&VRM..CNTL,UNIT=&DUNIT,VOL=SER=&DVOLSER, // SPACE=(TRK,(20,10,10)), // DISP=&DDISP //* //HELP EXEC RECV,TYP=HELP //RECV370.SYSUT2 DD DDNAME=&TYP //HELP DD DSN=&HLQ..&VRM..HELP,UNIT=&DUNIT,VOL=SER=&DVOLSER, // SPACE=(TRK,(02,02,02)), // DISP=&DDISP //* //CLIST EXEC RECV,TYP=CLIST //RECV370.SYSUT2 DD DDNAME=&TYP //CLIST DD DSN=&HLQ..&VRM..CLIST,UNIT=&DUNIT,VOL=SER=&DVOLSER, // SPACE=(TRK,(06,02,02)), // DISP=&DDISP //* //ISPF EXEC RECV,TYP=ISPF //RECV370.SYSUT2 DD DDNAME=&TYP //ISPF DD DSN=&HLQ..&VRM..ISPF,UNIT=&DUNIT,VOL=SER=&DVOLSER, // SPACE=(TRK,(15,05,10)), // DISP=&DDISP //* //ASM EXEC RECV,TYP=ASM //RECV370.SYSUT2 DD DDNAME=&TYP //ASM DD DSN=&HLQ..&VRM..ASM,UNIT=&DUNIT,VOL=SER=&DVOLSER, // SPACE=(TRK,(40,10,10)), // DISP=&DDISP //* //MACLIB EXEC RECV,TYP=MACLIB //RECV370.SYSUT2 DD DDNAME=&TYP //MACLIB DD DSN=&HLQ..&VRM..MACLIB,UNIT=&DUNIT,VOL=SER=&DVOLSER, // SPACE=(TRK,(04,02,02)), // DISP=&DDISP // ______________________________________________________________________ Figure 1a: $RECVXMI.JCL ______________________________________________________________________ //RECV000B JOB (SYS),'TSO RECEIVE XMI', <-- Review and Modify // CLASS=A,MSGCLASS=X,REGION=0M, <-- Review and Modify // MSGLEVEL=(1,1),NOTIFY=&SYSUID <-- Review and Modify //* -------------------------------------------------------* //* * JOB: $RECVTSO TSO RECEIVE APPLICATION XMI FILES * //* * for LISTDSJ software distribution * //* -------------------------------------------------------* //* //* This JOB executes two steps: //* //* 1) IDCAMS to ensure parent HLQ alias (SHRABIT) is //* defined on master catalog //* Note: Alias definition bypassed if alias already //* ----- defined. //* //* 2) Executes TSO in BATCH mode and issues //* TSO RECEIVE commands to load the XMI distribution //* library (an XMI SEQ dataset) to a temporary PDS. //* Each software PDS is loaded from before deleting //* temporary PDS. //* //* //* This JCL may be modified to suit your installation //* needs. //* //* The TSO RECEIVE commands use INdataset, DAtaset, VOL, //* and NOPRompt parms. //* //* //* -------------------------------------------------------* //* * * //* * PROC: PBTSO * //* * Batch TSO * //* * * //* -------------------------------------------------------* //PBTSO PROC //STEP01 EXEC PGM=IKJEFT01 //SYSPROC DD DISP=SHR,DSN=SYS2.CMDPROC //*STEPLIB DD DISP=SHR,DSN=SYS2.LINKLIB //SYSPRINT DD SYSOUT=* //SYSTSPRT DD SYSOUT=* //SYSTSIN DD DUMMY Command Line Input //* // PEND //* //* -------------------------------------------------------* //* Ensure parent HLQ alias is declared //* -------------------------------------------------------* //DEFALIAS EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * PARM GRAPHICS(CHAIN(SN)) LISTCAT ALIAS ENT(SHRABIT) /* Review and modify catalog name below */ IF LASTCC NE 0 THEN - DEFINE ALIAS(NAME(SHRABIT) RELATE(SYS1.UCAT.MVS)) /* //* //* -------------------------------------------------------* //* TSO RECEIVE LISTDSJ Software Distribution //* -------------------------------------------------------* //TSORCV EXEC PBTSO //* -------------------------------------------------------* //* Review and Modify the DSN of the transferred XMI <----- //* used in the TSO RECEIVE SYSTSIN DD. <----- //* -------------------------------------------------------* //STEP01.SYSTSIN DD * /* Modify 'SHRABIT.' with your parent HLQ, if different */ /* Modify 'your.transfer.xmi' with transferred XMI SEQ DSN */ /* Modify 'volser' with VOLSER on your system */ RECEIVE IN('your.transfer.xmi') - DA('SHRABIT.LISTDSJ.V2R0M01.XMIPDS') - VOL(volser) NOPROMPT /* Receive CNTL */ RECEIVE IN('SHRABIT.LISTDSJ.V2R0M01.XMIPDS(CNTL)') - DA('SHRABIT.LISTDSJ.V2R0M01.CNTL') - VOL(volser) NOPROMPT /* Receive HELP */ RECEIVE IN('SHRABIT.LISTDSJ.V2R0M01.XMIPDS(HELP)') - DA('SHRABIT.LISTDSJ.V2R0M01.HELP') - VOL(volser) NOPROMPT /* Receive CLIST */ RECEIVE IN('SHRABIT.LISTDSJ.V2R0M01.XMIPDS(CLIST)') - DA('SHRABIT.LISTDSJ.V2R0M01.CLIST') - VOL(volser) NOPROMPT /* Receive ISPF */ RECEIVE IN('SHRABIT.LISTDSJ.V2R0M01.XMIPDS(ISPF)') - DA('SHRABIT.LISTDSJ.V2R0M01.ISPF') - VOL(volser) NOPROMPT /* Receive ASM */ RECEIVE IN('SHRABIT.LISTDSJ.V2R0M01.XMIPDS(ASM)') - DA('SHRABIT.LISTDSJ.V2R0M01.ASM') - VOL(volser) NOPROMPT /* Receive MACLIB */ RECEIVE IN('SHRABIT.LISTDSJ.V2R0M01.XMIPDS(MACLIB)') - DA('SHRABIT.LISTDSJ.V2R0M01.MACLIB') - VOL(volser) NOPROMPT /* Delete XMIPDS */ DELETE 'SHRABIT.LISTDSJ.V2R0M01.XMIPDS' /* // ______________________________________________________________________ Figure 1b: $RECVTSO.JCL a) Transfer LISTDSJ.V2R0M01.XMI to MVS using your 3270 emulator. Make note of the DSN assigned on MVS transfer. Use transfer IND$FILE options: NEW BLKSIZE=3200 LRECL=80 RECFM=FB - or - NEW BLKSIZE(3200) LRECL(80) RECFM(FB) Ensure the DSN on MVS exists with the correct DCB information: ORG=PS BLKSIZE=3200 LRECL=80 RECFM=FB b) If using RECV370 to load XMI, Copy and paste the $RECVXMI JCL to a PDS member, update JOB statement to conform to your installation standard. - or - If using TSO RECEIVE to load XMI, Copy and paste the $RECVTSO JCL to a PDS member, update JOB statement to conform to your installation standard. c) The first step ensures the HLQ alias is defined and the subsequent steps perform the XMI load. Review JCL and apply any modifications per your installation including the DSN assigned during the transfer above for the XMI file. d) Submit the job. e) Review job output for successful load of the following PDSs: SHRABIT.LISTDSJ.V2R0M01.ASM SHRABIT.LISTDSJ.V2R0M01.CLIST SHRABIT.LISTDSJ.V2R0M01.CNTL SHRABIT.LISTDSJ.V2R0M01.HELP SHRABIT.LISTDSJ.V2R0M01.ISPF SHRABIT.LISTDSJ.V2R0M01.MACLIB f) Subsequent installation steps will be submitted from members contained in the CNTL data set. g) Proceed to STEP 6. **** +--------------------------------------------------------------------+ | Step 3. Define Alias for HLQ LISTDSJ in MVS User Catalog | +--------------------------------------------------------------------+ | JCL Member: SHRABIT.LISTDSJ.V2R0M01.CNTL($INST00) | +--------------------------------------------------------------------+ ______________________________________________________________________ //LISTDSJ0 JOB (SYS),'Define LISTDSJ Alias', <-- Review and Modify // CLASS=A,MSGCLASS=X, <-- Review and Modify // MSGLEVEL=(1,1),NOTIFY=&SYSUID <-- Review and Modify //* -------------------------------------------------------* //* * LISTDSJ for MVS3.8J TSO / Hercules * //* * JOB: $INST00 Define Alias for parent HLQ SHRABIT * //* * Note: The master catalog password may be required * //* -------------------------------------------------------* //DEFALIAS EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * PARM GRAPHICS(CHAIN(SN)) LISTCAT ALIAS ENT(SHRABIT) /* Review and Modify catalog name below */ IF LASTCC NE 0 THEN - DEFINE ALIAS(NAME(SHRABIT) RELATE(SYS1.UCAT.MVS)) /* // ______________________________________________________________________ Figure 2: $INST00 JCL Note: This distribution is installed under the HLQ alias SHRABIT. $INST00 bypasses the DEFINE ALIAS action when the alias is already defined. a) Copy and paste the above JCL to a PDS member, update JOB statement to conform to your installation standard. b) Submit the job. c) Review job output for successful DEFINE ALIAS. Note: When $INST00 runs for the first time, Job step DEFALIAS returns RC=0004 due to LISTCAT ALIAS function completing with condition code of 4 and DEFINE ALIAS function completing with condition code of 0. Note: When $INST00 runs after the ALIAS is defined, Job step DEFALIAS returns RC=0000 due to LISTCAT ALIAS function completing with condition code of 0 and DEFINE ALIAS function being bypassed. +--------------------------------------------------------------------+ | Step 4. Load CNTL data set from distribution tape | +--------------------------------------------------------------------+ | JCL Member: SHRABIT.LISTDSJ.V2R0M01.CNTL($INST01) | +--------------------------------------------------------------------+ ______________________________________________________________________ //LISTDSJ1 JOB (SYS),'Install CNTL PDS', <-- Review and Modify // CLASS=A,MSGCLASS=X, <-- Review and Modify // MSGLEVEL=(1,1),NOTIFY=&SYSUID <-- Review and Modify //* -------------------------------------------------------* //* * LISTDSJ for MVS3.8J TSO / Hercules * //* * JOB: $INST01 Load CNTL PDS from distribution tape * //* * Note: Uses tape drive 480 * //* -------------------------------------------------------* //LOADCNTL PROC THLQ=LISTDSJ,TVOLSER=VS2001, // HLQ='SHRABIT.LISTDSJ',VRM=V2R0M01, // DDISP='(,CATLG,DELETE)', // TUNIT=480,DVOLSER=PUB006,DUNIT=DISK <-- Review and Modify //LOAD001 EXEC PGM=IEBCOPY //SYSPRINT DD SYSOUT=* //INCNTL DD DSN=&THLQ..&VRM..CNTL.TAPE,UNIT=&TUNIT, // VOL=SER=&TVOLSER,DISP=OLD,LABEL=(1,SL) //CNTL DD DSN=&HLQ..&VRM..CNTL,UNIT=&DUNIT,VOL=SER=&DVOLSER, // SPACE=(TRK,(20,10,10)), // DISP=&DDISP, // DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600) // PEND //STEP001 EXEC LOADCNTL Load CNTL PDS //SYSIN DD * COPY INDD=INCNTL,OUTDD=CNTL // ______________________________________________________________________ Figure 3: $INST01 JCL a) Before submitting the above job, the distribution tape must be made available to MVS by issuing the following command from the Hercules console: DEVINIT 480 X:\dirname\LISTDSJ.V2R0M01.HET READONLY=1 where X:\dirname is the complete path to the location of the Hercules Emulated Tape file. b) Issue the following command from the MVS console to vary device 480 online: V 480,ONLINE c) Copy and paste the above JCL to a PDS member, update JOB statement to conform to your installation standard. Review JCL and apply any modifications per your installation. d) Submit the job. e) Review job output for successful load of the CNTL data set. f) Subsequent installation steps will be submitted from members contained in the CNTL data set. +--------------------------------------------------------------------+ | Step 5. Load Other data sets from distribution tape | +--------------------------------------------------------------------+ | JCL Member: SHRABIT.LISTDSJ.V2R0M01.CNTL($INST02) | +--------------------------------------------------------------------+ ______________________________________________________________________ //LISTDSJ2 JOB (SYS),'Install Other PDSs', <-- Review and Modify // CLASS=A,MSGCLASS=X, <-- Review and Modify // MSGLEVEL=(1,1),NOTIFY=&SYSUID <-- Review and Modify //* -------------------------------------------------------* //* * LISTDSJ for MVS3.8J TSO / Hercules * //* * JOB: $INST02 Load other PDS from distribution tape * //* * Tape Volume: File 1 - CNTL * //* * File 2 - CLIST * //* * File 3 - HELP * //* * File 4 - ISPF * //* * File 5 - ASM * //* * File 6 - MACLIB * //* * Note: Default TAPE=480, DASD=DISK on PUB006 * //* -------------------------------------------------------* //LOADOTHR PROC THLQ=LISTDSJ,TVOLSER=VS2001, // HLQ='SHRABIT.LISTDSJ',VRM=V2R0M01, // DDISP='(,CATLG,DELETE)', // TUNIT=480,DVOLSER=PUB006,DUNIT=DISK <-- Review and Modify //LOAD02 EXEC PGM=IEBCOPY //SYSPRINT DD SYSOUT=* //INCLIST DD DSN=&THLQ..&VRM..CLIST.TAPE,UNIT=&TUNIT, // VOL=SER=&TVOLSER,DISP=OLD,LABEL=(2,SL) //INHELP DD DSN=&THLQ..&VRM..HELP.TAPE,UNIT=&TUNIT, // VOL=SER=&TVOLSER,DISP=OLD,LABEL=(3,SL) //INISPF DD DSN=&THLQ..&VRM..ISPF.TAPE,UNIT=&TUNIT, // VOL=SER=&TVOLSER,DISP=OLD,LABEL=(4,SL) //INASM DD DSN=&THLQ..&VRM..ASM.TAPE,UNIT=&TUNIT, // VOL=SER=&TVOLSER,DISP=OLD,LABEL=(5,SL) //INMACLIB DD DSN=&THLQ..&VRM..MACLIB.TAPE,UNIT=&TUNIT, // VOL=SER=&TVOLSER,DISP=OLD,LABEL=(6,SL) //CLIST DD DSN=&HLQ..&VRM..CLIST,UNIT=&DUNIT,VOL=SER=&DVOLSER, // SPACE=(TRK,(06,02,02)), // DISP=&DDISP, // DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600) //HELP DD DSN=&HLQ..&VRM..HELP,UNIT=&DUNIT,VOL=SER=&DVOLSER, // SPACE=(TRK,(02,02,02)), // DISP=&DDISP, // DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600) //ISPF DD DSN=&HLQ..&VRM..ISPF,UNIT=&DUNIT,VOL=SER=&DVOLSER, // SPACE=(TRK,(15,05,10)), // DISP=&DDISP, // DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600) //ASM DD DSN=&HLQ..&VRM..ASM,UNIT=&DUNIT,VOL=SER=&DVOLSER, // SPACE=(TRK,(40,10,10)), // DISP=&DDISP, // DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600) //MACLIB DD DSN=&HLQ..&VRM..MACLIB,UNIT=&DUNIT,VOL=SER=&DVOLSER, // SPACE=(TRK,(04,02,02)), // DISP=&DDISP, // DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600) // PEND //* //STEP001 EXEC LOADOTHR Load ALL other PDSs //SYSIN DD * COPY INDD=INCLIST,OUTDD=CLIST COPY INDD=INHELP,OUTDD=HELP COPY INDD=INISPF,OUTDD=ISPF COPY INDD=INASM,OUTDD=ASM COPY INDD=INMACLIB,OUTDD=MACLIB // ______________________________________________________________________ Figure 4: $INST02 JCL a) Member $INST02 installs remaining data sets from distribution tape. b) Review and update JOB statement and other JCL to conform to your installation standard. c) Before submitting the above job, the distribution tape must be made available to MVS by issuing the following command from the Hercules console: DEVINIT 480 X:\dirname\LISTDSJ.V2R0M01.HET READONLY=1 where X:\dirname is the complete path to the location of the Hercules Emulated Tape file. d) Issue the following command from the MVS console to vary device 480 online: V 480,ONLINE e) Submit the job. f) Review job output for successful loads. +--------------------------------------------------------------------+ | Step 6. FULL or UPGRADE Installation | +--------------------------------------------------------------------+ | JCL Member: SHRABIT.LISTDSJ.V2R0M01.CNTL($UP2001) | +--------------------------------------------------------------------+ ______________________________________________________________________ //LISTDSJU JOB (SYS),'Upgrade LISTDSJ', <-- Review and Modify // CLASS=A,MSGCLASS=X, <-- Review and Modify // MSGLEVEL=(1,1),NOTIFY=&SYSUID <-- Review and Modify //* -------------------------------------------------------* //* * LISTDSJ for MVS3.8J TSO / Hercules * //* * * //* * JOB: $UP2001 * //* * Upgrade LISTDSJ Software from release V1R0M40 * //* * * //* * Review JCL before submitting!! * //* -------------------------------------------------------* //* //* -------------------------------------------------------* //* * * //* * PROC: ASMLKED * //* * Assembler Link-Edit * //* * * //* -------------------------------------------------------* //ASML PROC HLQ=WHATHLQ,VRM=VXRXMXX, // MBR=WHOWHAT //* //ASM EXEC PGM=IFOX00, // PARM='NODECK,LOAD,RENT,TERM,XREF' //SYSGO DD DSN=&&LOADSET,DISP=(MOD,PASS),SPACE=(CYL,(1,1)), // UNIT=VIO,DCB=(DSORG=PS,RECFM=FB,LRECL=80,BLKSIZE=800) //SYSLIB DD DSN=SYS1.MACLIB,DISP=SHR // DD DSN=SYS1.AMODGEN,DISP=SHR // DD DSN=SYS2.MACLIB,DISP=SHR ** YREG ** // DD DDNAME=PVTMAC ** PVTMAC ** // DD DSN=&HLQ..&VRM..MACLIB,DISP=SHR * myMACLIB ** //PVTMAC DD DSN=SYS2.MACLIB,DISP=SHR * placeholder* //SYSTERM DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSPUNCH DD DSN=NULLFILE //SYSUT1 DD UNIT=VIO,SPACE=(CYL,(6,1)) //SYSUT2 DD UNIT=VIO,SPACE=(CYL,(6,1)) //SYSUT3 DD UNIT=VIO,SPACE=(CYL,(6,1)) //SYSIN DD DSN=&HLQ..&VRM..ASM(&MBR),DISP=SHR <--INPUT //* //LKED EXEC PGM=IEWL,PARM='MAP,LIST,LET,RENT,XREF', // COND=(0,NE,ASM) //SYSLIN DD DSN=&&LOADSET,DISP=(OLD,DELETE) // DD DDNAME=SYSIN //SYSLMOD DD DUMMY //SYSPRINT DD SYSOUT=* //SYSUT1 DD UNIT=VIO,SPACE=(CYL,(5,2)) //SYSIN DD DUMMY //* // PEND //* //* -------------------------------------------------------* //* * * //* * PROC: PARTSISPF * //* * Copy ISPF Parts * //* * * //* -------------------------------------------------------* //PARTSI PROC HLQ=MYHLQ,VRM=VXRXMXX, // CLIB='XXXXXXXX.ISPCLIB', // MLIB='XXXXXXXX.ISPMLIB', // PLIB='XXXXXXXX.ISPPLIB', // SLIB='XXXXXXXX.ISPSLIB', // TLIB='XXXXXXXX.ISPTLIB' //* //* -------------------------------------------------------* //* * * //* * ISPF Library Member Installation * //* * * //* * Suggested Location: * //* * DSN defined or concatenated to ISPF Libraries * //* * - ISPCLIB, ISPMLIB, ISPPLIB, ISPSLIB, ISPTLIB * //* * * //* * Note: If you use a new PDS, it must be defined * //* * before executing this install job AND the * //* * ISPF start-up procedure should include the * //* * new PDS in the ISPxLIB allocation step. * //* * * //* -------------------------------------------------------* //ISPFLIBS EXEC PGM=IEBCOPY //SYSPRINT DD SYSOUT=* //ISPFIN DD DSN=&HLQ..&VRM..ISPF,DISP=SHR //CLIBOUT DD DSN=&CLIB,DISP=SHR //MLIBOUT DD DSN=&MLIB,DISP=SHR //PLIBOUT DD DSN=&PLIB,DISP=SHR //SLIBOUT DD DSN=&SLIB,DISP=SHR //TLIBOUT DD DSN=&TLIB,DISP=SHR //SYSIN DD DUMMY //* // PEND //* //* -------------------------------------------------------* //* * Assemble Link-Edit LISTDSJ to SYS2.CMDLIB * //* -------------------------------------------------------* //LISTDSJ EXEC ASML,HLQ='SHRABIT.LISTDSJ',VRM=V2R0M01,MBR=LISTDSJ, // PARM.LKED='MAP,LIST,LET,RENT,XREF,REUS,REFR' //LKED.SYSLMOD DD DISP=SHR, // DSN=SYS2.CMDLIB <--TARGET //* //********************************************************************/ //* 04/10/2020 1.0.20 Larry Belmontes Jr. */ //* - Added ALIAS LISTDSI to LKED step */ //********************************************************************/ //LKED.SYSIN DD * ALIAS LISTDSI NAME LISTDSJ(R) /* //* //* -------------------------------------------------------* //* * If SYSn.LINKLIB or SYSn.CMDLIB is updated * //* -------------------------------------------------------* //DBSTOP EXEC DBSTOP, // COND=(0,NE) //DBSTART EXEC DBSTART, // COND=(0,NE) //* //* -------------------------------------------------------* //* * Update ISPF parts for this release distribution * //* -------------------------------------------------------* //* * Note: Duplicate members are over-written. * //* -------------------------------------------------------* //* //* * - Install libraries marked... * //* * - Search for '<--TARGET' * //* * - Update install libraries per your * //* * installation standard * //* //* -------------------------------------------------------* //ISPFPRTS EXEC PARTSI,HLQ='SHRABIT.LISTDSJ',VRM=V2R0M01, // CLIB='XXXXXXXX.ISPCLIB', <--TARGET // MLIB='XXXXXXXX.ISPMLIB', <--TARGET // PLIB='XXXXXXXX.ISPPLIB', <--TARGET // SLIB='XXXXXXXX.ISPSLIB', <--TARGET // TLIB='XXXXXXXX.ISPTLIB' <--TARGET //SYSIN DD * COPY INDD=((ISPFIN,R)),OUTDD=CLIBOUT SELECT MEMBER=CLISTDIJ COPY INDD=((ISPFIN,R)),OUTDD=MLIBOUT SELECT MEMBER=NO#MBR# /*dummy entry no mbrs! */ COPY INDD=((ISPFIN,R)),OUTDD=PLIBOUT SELECT MEMBER=PLISTDSJ SELECT MEMBER=HLISTDSJ SELECT MEMBER=TLDSI100 SELECT MEMBER=TLDSI001 SELECT MEMBER=TLDSI002 SELECT MEMBER=TLDSI003 SELECT MEMBER=TLDSI004 SELECT MEMBER=TLDSIA01 SELECT MEMBER=TLDSIA02 SELECT MEMBER=TLDSIA03 SELECT MEMBER=TLDSIA04 SELECT MEMBER=TLDSIB01 SELECT MEMBER=TLDSIB02 SELECT MEMBER=TLDSIC01 SELECT MEMBER=TLDSIC02 SELECT MEMBER=TLDSIC03 SELECT MEMBER=TLDSIC04 SELECT MEMBER=TLDSIC05 SELECT MEMBER=TLDSIC06 SELECT MEMBER=TLDSIC07 SELECT MEMBER=TLDSIC08 SELECT MEMBER=TLDSIC09 SELECT MEMBER=TLDSIC10 SELECT MEMBER=TLDSID01 SELECT MEMBER=TLDSID02 SELECT MEMBER=TLDSID03 SELECT MEMBER=TLDSID04 SELECT MEMBER=TLDSIE01 SELECT MEMBER=TLDSIE02 SELECT MEMBER=TLDSIE03 COPY INDD=((ISPFIN,R)),OUTDD=SLIBOUT SELECT MEMBER=NO#MBR# /*dummy entry no mbrs! */ COPY INDD=((ISPFIN,R)),OUTDD=TLIBOUT SELECT MEMBER=NO#MBR# /*dummy entry no mbrs! */ // ______________________________________________________________________ Figure 5: $UP2001.JCL Upgrade from previous version to V2R0M01 a) If this is the INITIAL software distribution, proceed to STEP 7. b) This software may be installed in FULL or UPGRADE from a prior version. Note: If the installed software version is NOT the most recent ----- PREVIOUS version, perform a FULL install. Note: If the installed software version is customized, a manual ----- review and evaluation is suggested to properly incorporate customizations into this software distribution before proceeding with the installation. Refer to the $UPvrmm.JCL members for upgraded software components being installed. Note: $UPvrmm.JCL members exist in each software version. ----- For example, V1R3M00 software contains $UP1300.JCL to upgrade from previous V1R2M00 distribution. For example, V1R2M00 software contains $UP1200.JCL to upgrade from previous V1R1M00 distribution. c) If a FULL install of this software distribution is elected regardless of previous version installed on your system, proceed to STEP 7. d) If this is an UPGRADE from the PREVIOUS version, execute the below JCL based on current installed version: - Upgrading from V2R0M00, use $UP2001.JCL - Upgrading from V1R0M40, use $UP2000.JCL - V1R0M00 is initial release, thus, no updates available! d) After upgrade is applied, proceed to validation, STEP 11. +--------------------------------------------------------------------+ | Step 7. Install TSO parts | +--------------------------------------------------------------------+ | JCL Member: SHRABIT.LISTDSJ.V2R0M01.CNTL($INST03) | +--------------------------------------------------------------------+ ______________________________________________________________________ //LISTDSJ3 JOB (SYS),'Install TSO Parts', <-- Review and Modify // CLASS=A,MSGCLASS=X, <-- Review and Modify // MSGLEVEL=(1,1),NOTIFY=&SYSUID <-- Review and Modify //* -------------------------------------------------------* //* * LISTDSJ for MVS3.8J TSO / Hercules * //* * * //* * JOB: $INST03 Install TSO parts * //* * * //* * Note: Duplicate members are over-written. * //* -------------------------------------------------------* //STEP001 EXEC PGM=IEBCOPY //SYSPRINT DD SYSOUT=* //INCLIST DD DSN=SHRABIT.LISTDSJ.V2R0M01.CLIST,DISP=SHR //INHELP DD DSN=SHRABIT.LISTDSJ.V2R0M01.HELP,DISP=SHR //OUTCLIST DD DSN=SYS2.CMDPROC,DISP=SHR //OUTHELP DD DSN=SYS2.HELP,DISP=SHR //SYSIN DD * COPY INDD=((INCLIST,R)),OUTDD=OUTCLIST SELECT MEMBER=CLISTDSJ SELECT MEMBER=CFLDSI SELECT MEMBER=CLDSI SELECT MEMBER=CLDSI2 COPY INDD=((INHELP,R)),OUTDD=OUTHELP SELECT MEMBER=LISTDSJ SELECT MEMBER=CFLDSI SELECT MEMBER=CLDSI SELECT MEMBER=CLDSI2 /* // ______________________________________________________________________ Figure 6: $INST03 JCL a) Member $INST03 installs TSO component(s). Note: If no TSO components are included for this distribution, ----- RC = 4 is returned by the corresponding IEBCOPY step. b) Review and update JOB statement and other JCL to conform to your installation standard. c) Submit the job. d) Review job output for successful load(s). +--------------------------------------------------------------------+ | Step 8. Install LISTDSJ Programs | +--------------------------------------------------------------------+ | JCL Member: SHRABIT.LISTDSJ.V2R0M01.CNTL($INST04) | +--------------------------------------------------------------------+ ______________________________________________________________________ //LISTDSJ4 JOB (SYS),'Install LISTDSJ', <-- Review and Modify // CLASS=A,MSGCLASS=X, <-- Review and Modify // MSGLEVEL=(1,1),NOTIFY=&SYSUID <-- Review and Modify //* -------------------------------------------------------* //* * LISTDSJ for MVS3.8J TSO / Hercules * //* * * //* * JOB: $INST04 Install LISTDSJ Software * //* * * //* * - Install libraries marked... * //* * - Search for '<--TARGET' * //* * - Update install libraries per your * //* * installation standard * //* * * //* -------------------------------------------------------* //* //* -------------------------------------------------------* //* * * //* * PROC: ASMLKED * //* * Assembler Link-Edit * //* * * //* -------------------------------------------------------* //ASML PROC HLQ=WHATHLQ,VRM=VXRXMXX, // MBR=WHOWHAT //* //ASM EXEC PGM=IFOX00, // PARM='NODECK,LOAD,RENT,TERM,XREF' //SYSGO DD DSN=&&LOADSET,DISP=(MOD,PASS),SPACE=(CYL,(1,1)), // UNIT=VIO,DCB=(DSORG=PS,RECFM=FB,LRECL=80,BLKSIZE=800) //SYSLIB DD DSN=SYS1.MACLIB,DISP=SHR // DD DSN=SYS1.AMODGEN,DISP=SHR // DD DSN=SYS2.MACLIB,DISP=SHR ** YREG ** // DD DDNAME=PVTMAC ** PVTMAC ** // DD DSN=&HLQ..&VRM..MACLIB,DISP=SHR * myMACLIB ** //PVTMAC DD DSN=SYS2.MACLIB,DISP=SHR * placeholder* //SYSTERM DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSPUNCH DD DSN=NULLFILE //SYSUT1 DD UNIT=VIO,SPACE=(CYL,(6,1)) //SYSUT2 DD UNIT=VIO,SPACE=(CYL,(6,1)) //SYSUT3 DD UNIT=VIO,SPACE=(CYL,(6,1)) //SYSIN DD DSN=&HLQ..&VRM..ASM(&MBR),DISP=SHR <--INPUT //* //LKED EXEC PGM=IEWL,PARM='MAP,LIST,LET,RENT,XREF', // COND=(0,NE,ASM) //SYSLIN DD DSN=&&LOADSET,DISP=(OLD,DELETE) // DD DDNAME=SYSIN //SYSLMOD DD DUMMY //SYSPRINT DD SYSOUT=* //SYSUT1 DD UNIT=VIO,SPACE=(CYL,(5,2)) //SYSIN DD DUMMY //* // PEND //* //* -------------------------------------------------------* //* * Assemble Link-Edit LISTDSJ to SYS2.CMDLIB * //* -------------------------------------------------------* //LISTDSJ EXEC ASML,HLQ='SHRABIT.LISTDSJ',VRM=V2R0M01,MBR=LISTDSJ, // PARM.LKED='MAP,LIST,LET,RENT,XREF,REUS,REFR' //LKED.SYSLMOD DD DISP=SHR, // DSN=SYS2.CMDLIB <--TARGET //* //********************************************************************/ //* 04/10/2020 1.0.20 Larry Belmontes Jr. */ //* - Added ALIAS LISTDSI to LKED step */ //********************************************************************/ //LKED.SYSIN DD * ALIAS LISTDSI NAME LISTDSJ(R) /* //* //* -------------------------------------------------------* //* * Assemble Link-Edit LDSJMSG to SYS2.CMDLIB * //* -------------------------------------------------------* //LDSJMSG EXEC ASML,HLQ='SHRABIT.LISTDSJ',VRM=V2R0M01,MBR=LDSJMSG, // PARM.LKED='MAP,LIST,LET,RENT,XREF,REUS,REFR' //LKED.SYSLMOD DD DISP=SHR, // DSN=SYS2.CMDLIB(&MBR) <--TARGET //* //* -------------------------------------------------------* //* * Assemble Link-Edit LDSJISP to SYS2.CMDLIB * //* -------------------------------------------------------* //LDSJISP EXEC ASML,HLQ='SHRABIT.LISTDSJ',VRM=V2R0M01,MBR=LDSJISP, // PARM.LKED='MAP,LIST,LET,RENT,XREF,REUS,REFR' //LKED.SYSLMOD DD DISP=SHR, // DSN=SYS2.CMDLIB(&MBR) <--TARGET //* //* -------------------------------------------------------* //* * * //* * If SYSn.LINKLIB or SYSn.CMDLIB is updated * //* * * //* -------------------------------------------------------* //DBSTOP EXEC DBSTOP, // COND.IEFPROC=(0,NE) //DBSTART EXEC DBSTART, // COND.IEFPROC=(0,NE) // ______________________________________________________________________ Figure 7: $INST04 JCL a) Member $INST04 installs program(s). Note: If no components are included for this distribution, ----- an IEFBR14 step is executed. b) Review and update JOB statement and other JCL to conform to your installation standard. c) Submit the job. d) Review job output for successful completion. +--------------------------------------------------------------------+ | Step 9. Install ISPF parts | +--------------------------------------------------------------------+ | JCL Member: SHRABIT.LISTDSJ.V2R0M01.CNTL($INST05) | +--------------------------------------------------------------------+ ______________________________________________________________________ //LISTDSJ5 JOB (SYS),'Install ISPF Parts', <-- Review and Modify // CLASS=A,MSGCLASS=X, <-- Review and Modify // MSGLEVEL=(1,1),NOTIFY=&SYSUID <-- Review and Modify //* -------------------------------------------------------* //* * LISTDSJ for MVS3.8J TSO / Hercules * //* * * //* * JOB: $INST05 Install ISPF parts * //* * * //* * Note: Duplicate members are over-written. * //* * * //* * * //* * - Uses ISPF 2.1 product from Wally Mclaughlin * //* * - Install libraries marked... * //* * - Search for '<--TARGET' * //* * - Update install libraries per your * //* * installation standard * //* * * //* -------------------------------------------------------* //* //* -------------------------------------------------------* //* * * //* * PROC: PARTSISPF * //* * Copy ISPF Parts * //* * * //* -------------------------------------------------------* //PARTSI PROC HLQ=MYHLQ,VRM=VXRXMXX, // CLIB='XXXXXXXX.ISPCLIB', // MLIB='XXXXXXXX.ISPMLIB', // PLIB='XXXXXXXX.ISPPLIB', // SLIB='XXXXXXXX.ISPSLIB', // TLIB='XXXXXXXX.ISPTLIB' //* //* -------------------------------------------------------* //* * * //* * CLIB Member Installation * //* * * //* * Suggested Location: * //* * DSN defined or concatenated to ISPCLIB DD * //* * * //* * Note: If you use a new PDS, it must be defined * //* * before executing this install job AND the * //* * ISPF start-up procedure should include the * //* * new PDS in the ISPCLIB allocation step. * //* * * //* -------------------------------------------------------* //ADDCLIB EXEC PGM=IEBCOPY //SYSPRINT DD SYSOUT=* //CLIBIN DD DSN=&HLQ..&VRM..ISPF,DISP=SHR //CLIBOUT DD DSN=&CLIB,DISP=SHR //SYSIN DD DUMMY //* //* -------------------------------------------------------* //* * * //* * MLIB Member Installation * //* * * //* * Suggested Location: * //* * DSN defined or concatenated to ISPMLIB DD * //* * * //* * Note: If you use a new PDS, it must be defined * //* * before executing this install job AND the * //* * ISPF start-up procedure should include the * //* * new PDS in the ISPMLIB allocation step. * //* * * //* -------------------------------------------------------* //ADDMLIB EXEC PGM=IEBCOPY //SYSPRINT DD SYSOUT=* //MLIBIN DD DSN=&HLQ..&VRM..ISPF,DISP=SHR //MLIBOUT DD DSN=&MLIB,DISP=SHR //SYSIN DD DUMMY //* //* -------------------------------------------------------* //* * * //* * PLIB Member Installation * //* * * //* * Suggested Location: * //* * DSN defined or concatenated to ISPPLIB DD * //* * * //* * Note: If you use a new PDS, it must be defined * //* * before executing this install job AND the * //* * ISPF start-up procedure should include the * //* * new PDS in the ISPPLIB allocation step. * //* * * //* -------------------------------------------------------* //ADDPLIB EXEC PGM=IEBCOPY //SYSPRINT DD SYSOUT=* //PLIBIN DD DSN=&HLQ..&VRM..ISPF,DISP=SHR //PLIBOUT DD DSN=&PLIB,DISP=SHR //SYSIN DD DUMMY //* //* -------------------------------------------------------* //* * * //* * SLIB Member Installation * //* * * //* * Suggested Location: * //* * DSN defined or concatenated to ISPSLIB DD * //* * * //* * Note: If you use a new PDS, it must be defined * //* * before executing this install job AND the * //* * ISPF start-up procedure should include the * //* * new PDS in the ISPSLIB allocation step. * //* * * //* -------------------------------------------------------* //ADDSLIB EXEC PGM=IEBCOPY //SYSPRINT DD SYSOUT=* //SLIBIN DD DSN=&HLQ..&VRM..ISPF,DISP=SHR //SLIBOUT DD DSN=&SLIB,DISP=SHR //SYSIN DD DUMMY //* //* //* -------------------------------------------------------* //* * * //* * TLIB Member Installation * //* * * //* * Suggested Location: * //* * DSN defined or concatenated to ISPTLIB DD * //* * * //* * Note: If you use a new PDS, it must be defined * //* * before executing this install job AND the * //* * ISPF start-up procedure should include the * //* * new PDS in the ISPTLIB allocation step. * //* * * //* -------------------------------------------------------* //ADDTLIB EXEC PGM=IEBCOPY //SYSPRINT DD SYSOUT=* //TLIBIN DD DSN=&HLQ..&VRM..ISPF,DISP=SHR //TLIBOUT DD DSN=&TLIB,DISP=SHR //SYSIN DD DUMMY //* // PEND //* //ISPF EXEC PARTSI,HLQ='SHRABIT.LISTDSJ',VRM=V2R0M01, // CLIB='XXXXXXXX.ISPCLIB', <--TARGET // MLIB='XXXXXXXX.ISPMLIB', <--TARGET // PLIB='XXXXXXXX.ISPPLIB', <--TARGET // SLIB='XXXXXXXX.ISPSLIB', <--TARGET // TLIB='XXXXXXXX.ISPTLIB' <--TARGET //ADDCLIB.SYSIN DD * CLIB COPY INDD=((CLIBIN,R)),OUTDD=CLIBOUT SELECT MEMBER=CLISTDIJ //ADDMLIB.SYSIN DD * MLIB COPY INDD=((MLIBIN,R)),OUTDD=MLIBOUT SELECT MEMBER=LDSJ00 //ADDPLIB.SYSIN DD * PLIB COPY INDD=((PLIBIN,R)),OUTDD=PLIBOUT SELECT MEMBER=PLISTDSJ SELECT MEMBER=HLISTDSJ SELECT MEMBER=TLDSI100 SELECT MEMBER=TLDSI001 SELECT MEMBER=TLDSI002 SELECT MEMBER=TLDSI003 SELECT MEMBER=TLDSI004 SELECT MEMBER=TLDSIA01 SELECT MEMBER=TLDSIA02 SELECT MEMBER=TLDSIA03 SELECT MEMBER=TLDSIA04 SELECT MEMBER=TLDSIB01 SELECT MEMBER=TLDSIB02 SELECT MEMBER=TLDSIC01 SELECT MEMBER=TLDSIC02 SELECT MEMBER=TLDSIC03 SELECT MEMBER=TLDSIC04 SELECT MEMBER=TLDSIC05 SELECT MEMBER=TLDSIC06 SELECT MEMBER=TLDSIC07 SELECT MEMBER=TLDSIC08 SELECT MEMBER=TLDSIC09 SELECT MEMBER=TLDSIC10 SELECT MEMBER=TLDSID01 SELECT MEMBER=TLDSID02 SELECT MEMBER=TLDSID03 SELECT MEMBER=TLDSID04 SELECT MEMBER=TLDSIE01 SELECT MEMBER=TLDSIE02 SELECT MEMBER=TLDSIE03 //ADDSLIB.SYSIN DD * SLIB COPY INDD=((SLIBIN,R)),OUTDD=SLIBOUT SELECT MEMBER=NO#MBR# /*dummy entry no mbrs! */ //ADDTLIB.SYSIN DD * TLIB COPY INDD=((TLIBIN,R)),OUTDD=TLIBOUT SELECT MEMBER=NO#MBR# /*dummy entry no mbrs! */ // ______________________________________________________________________ Figure 8: $INST05 JCL a) Member $INST05 installs ISPF component(s). Note: If no ISPF components are included for this distribution, ----- RC = 4 is returned by the corresponding IEBCOPY step. b) Review and update JOB statement and other JCL to conform to your installation standard. c) Review and update DD statements for ISPCLIB (clist), ISPMLIB (messages), and/or ISPPLIB (panel) library names. The DD statements are tagged with '<--TARGET'. d) Submit the job. e) Review job output for successful load(s). +--------------------------------------------------------------------+ | Step 10. Install Other Software | +--------------------------------------------------------------------+ | JCL Member: SHRABIT.LISTDSJ.V2R0M01.CNTL($INST40) | +--------------------------------------------------------------------+ ______________________________________________________________________ //LISTDS40 JOB (SYS),'Install Other Pgms', <-- Review and Modify // CLASS=A,MSGCLASS=X, <-- Review and Modify // MSGLEVEL=(1,1),NOTIFY=&SYSUID <-- Review and Modify //* -------------------------------------------------------* //* * LISTDSJ for MVS3.8J TSO / Hercules * //* * * //* * JOB: $INST40 Install Other Software * //* * Install xxxxxx Programs * //* * * //* * * //* -------------------------------------------------------* //* //* -------------------------------------------------------* //* * IEFBR14 * //* -------------------------------------------------------* //DUMMY EXEC PGM=IEFBR14 //SYSPRINT DD SYSOUT=* //* // ______________________________________________________________________ Figure 9: $INST40 JCL a) Member $INST40 installs additional software. Note: If no other software is included for this distribution, ----- an IEFBR14 step is executed. b) Review and update JOB statement and other JCL to conform to your installation standard. c) Submit the job. d) Review job output for successful completion. +--------------------------------------------------------------------+ | Step 11. Validate LISTDSJ | +--------------------------------------------------------------------+ | JCL Member: SHRABIT.LISTDSJ.V2R0M01.CNTL($IVP1) | +--------------------------------------------------------------------+ ______________________________________________________________________ //IVP1 JOB (SYS),'LISTDSJ IPV1', <-- Review and Modify // CLASS=A,MSGCLASS=A, <-- Review and Modify // MSGLEVEL=(1,1),NOTIFY=&SYSUID <-- Review and Modify //* -------------------------------------------------------* //* * LISTDSJ for MVS3.8J TSO / Hercules * //* * * //* * JOB: $IVP1 * //* * Run LISTDSJ Validation * //* * * //* * LISTDSJ validation via CLISTDSJ using BATCH TSO * //* * of documented function in program documentation. * //* * * //* * Note: CLIST are resolved from SYS2.CMDPROC * //* * and tagged with <--TARGET for search * //* * purposes. * //* * * //* * * //* * Change History: * //* * ==================================================== * //* * MM/DD/CCYY Version Name / Description * //* * ---------- ------- -------------------------------- * //* * 02/27/2021 1.0.40 Larry Belmontes Jr. * //* * - Add BTSO keyword parameter to * //* * CLISTDSJ n PRMS(...) * //* * * //* * 04/29/2019 1.0.00 Larry Belmontes Jr. * //* * - Initial version released to * //* * MVS 3.8J hobbyist public * //* * domain * //* * * //* -------------------------------------------------------* //BATCHTSO PROC //STEP01 EXEC PGM=IKJEFT01 //SYSPROC DD DISP=SHR,DSN=SYS2.CMDPROC <--TARGET //SYSPRINT DD SYSOUT=* //SYSTSPRT DD SYSOUT=* //SYSTSIN DD DUMMY Command Line Input // PEND //* //TESTIT0 EXEC BATCHTSO //STEP01.SYSTSIN DD * CLISTDSJ X PRMS('Validate List type 1') CLISTDSJ 1 PRMS('''HERC01.TEST.CNTL'' BTSO') /* //VALDAT2 EXEC BATCHTSO //STEP01.SYSTSIN DD * CLISTDSJ X PRMS('Validate List type 2') CLISTDSJ 2 PRMS('''HERC01.TEST.CNTL'' BTSO') /* //VALDAT3 EXEC BATCHTSO //STEP01.SYSTSIN DD * CLISTDSJ X PRMS('Validate List type 3') CLISTDSJ 3 PRMS('''HERC01.TEST.CNTL'' BTSO') /* //VALDAT4 EXEC BATCHTSO //STEP01.SYSTSIN DD * CLISTDSJ X PRMS('Validate List type 3 with DIR option') CLISTDSJ 3 PRMS('''HERC01.TEST.CNTL'' DIR BTSO') /* //VALDAT5 EXEC BATCHTSO //STEP01.SYSTSIN DD * CLISTDSJ X PRMS('Validate with ABOUT option') CLISTDSJ 1 PRMS('''HERC01.TEST.CNTL'' ABOUT BTSO') /* //VALDAT6 EXEC BATCHTSO //STEP01.SYSTSIN DD * CLISTDSJ X PRMS('Validate as to why NOT to use PNL w CLISTDSJ') CLISTDSJ 3 PRMS('''HERC01.TEST.CNTL'' PNL BTSO') /* //VALDAT7 EXEC BATCHTSO //STEP01.SYSTSIN DD * CLISTDSJ X PRMS('Validate List type 1 with FILE option') CLISTDSJ 1 PRMS('SYSPROC FILE BTSO') /* // ______________________________________________________________________ Figure 10: $IVP1 JCL a) Member $IVP1 validates LISTDSJ. b) Review and update JOB statement and other JCL to conform to your installation standard. c) Submit the job. d) Review job output for successful execution. All return codes should be zero except for step (VALDAT6). This is normal. e) Validation for LISTDSJ is complete. +--------------------------------------------------------------------+ | Step 11a. Validate LISTDSJ ISPF 2.x application | +--------------------------------------------------------------------+ a) This step can be omitted if ISPF 2.x is NOT installed on your system. Proceed to the next step. b) From the ISPF Main Menu, select option 6, COMMAND. The TSO COMMAND PROCESSOR panel will display. c) Enter the TSO command: %CLISTDIJ d) The panel PLISTDSJ, LISTDSJ for MVS 38J, is displayed. ________________________________________________________________________________ -------------------------- LISTDSJ for MVS38J ----------------------- v2.0.01 - COMMAND ===> PANEL - PLISTDSJ NAME ==> _ USERID - LARRY03 PARMS => TIME - 21:25 DATE - 11/07/22 MSG: - 22.192 Return CD: SYSTEM - BSP1 SYSREASON: TERMINAL - 3277 TermSize - 24x80 APPLID - ISP DSORG RECFM LRECL BLKSZ KEYL RKP PASSWORD RACF CHGD CREDT EXPDT REFDT CATL: Cvol: VOLS: Allocation: TYPE PRI USED SEC ALLOC Tracks: TOT USED UNUSED EXTENTS Device: CYLS TRKSCYL TRKLEN BLKSTRK CAPACITY PO Dir: BLKS USED UNUSED MEMBERS ALIAS ________________________________________________________________________________ Figure 11: PLISTDSJ Panel Type the following information: o Enter a DSN in NAME===> e.g. 'HERC01.TEST.CNTL' (use single quotes) o Press o Review results for entered DSN o Press to display help panel, HLISTDSJ o Press twice to exit help and application panel e) Validation for LISTDSJ ISPF 2.x Application is complete. +--------------------------------------------------------------------+ | Step 12. Done | +--------------------------------------------------------------------+ a) Congratulations! You completed the installation for LISTDSJ. b) As examples of using LISTDSJ, the following CLISTS are included for educational purposes: CFLDSI -List allocated data sets on 3270 screen CLDSI -List dataset attributes on 3270 screen CLDSI2 -List dataset attributes on 3270 screen Refer to HELP for command syntax and information. e.g. From TSO Ready prompt, HELP CFLDSI From ISPF main menu command line, TSO HELP CFLDSI ====================================================================== * IV. S o f t w a r e I n v e n t o r y L i s t | ====================================================================== - SHRABIT.LISTDSJ.V2R0M01.ASM . LDSJISP ISPF Processor for LISTDSJ . LDSJMSG Message Processor for LISTDSJ $ . LISTDSJ TSO CP Data Set Attribute Information - SHRABIT.LISTDSJ.V2R0M01.CLIST . CFLDSI List session allocated datasets using LISTA / LISTDSI . CLDSI List dataset attributes using LISTDSI (format 1) . CLDSI2 List dataset attributes using LISTDSI (format 2) . CLISTDSJ LISTDSJ Test harness (displays in 3 formats) - SHRABIT.LISTDSJ.V2R0M01.CNTL $ . $INST00 Define Alias for HLQ LISTDSJ $ . $INST01 Load CNTL data set from distribution tape (HET) $ . $INST02 Load other data sets from distribution tape (HET) $ . $INST03 Install TSO Parts $ . $INST04 Install LISTDSJ CP $ . $INST05 Install ISPF Parts $ . $INST40 Install Other Software # . $UP2001 Upgrade to V2R0M01 from V2R0M00 . $IVP1 IVP JCL $ . $RECVTSO Receive XMI SEQ to MVS PDSs via TSO RECEIVE $ . $RECVXMI Receive XMI SEQ to MVS PDSs via RECV370 $ . DSCLAIMR Disclaimer $ . PREREQS Required User-mods $ . README Documentation and Installation instructions - SHRABIT.LISTDSJ.V2R0M01.HELP . CFLDSI Help member for CFLDSI . CLDSI Help member for CLDSI . CLDSI2 Help member for CLDSI2 . LISTDSJ Help member for LISTDSJ - SHRABIT.LISTDSJ.V2R0M01.ISPF $ . CLISTDIJ LISTDSJ Online Test CLIST . LDSJ00 LISTDSJ ISPF message file $ . HLISTDSJ LISTDSJ Help panel $ . PLISTDSJ LISTDSJ Display panel # . TLDSI100 LISTDSJ Tutorial Panel Main Menu # . TLDSI001 LISTDSJ Tutorial Panel Overview # . TLDSI002 LISTDSJ Tutorial Panel Overview # . TLDSI003 LISTDSJ Tutorial Panel Overview # . TLDSI004 LISTDSJ Tutorial Panel Overview # . TLDSIA01 LISTDSJ Tutorial Panel Command Syntax # . TLDSIA02 LISTDSJ Tutorial Panel Command Syntax # . TLDSIA03 LISTDSJ Tutorial Panel Command Syntax # . TLDSIA04 LISTDSJ Tutorial Panel Command Syntax # . TLDSIB01 LISTDSJ Tutorial Panel Return Codes # . TLDSIB02 LISTDSJ Tutorial Panel Return Codes # . TLDSIC01 LISTDSJ Tutorial Panel Variables # . TLDSIC02 LISTDSJ Tutorial Panel Variables # . TLDSIC03 LISTDSJ Tutorial Panel Variables # . TLDSIC04 LISTDSJ Tutorial Panel Variables # . TLDSIC05 LISTDSJ Tutorial Panel Variables # . TLDSIC06 LISTDSJ Tutorial Panel Variables # . TLDSIC07 LISTDSJ Tutorial Panel Variables # . TLDSIC08 LISTDSJ Tutorial Panel Variables # . TLDSIC09 LISTDSJ Tutorial Panel Variables # . TLDSIC10 LISTDSJ Tutorial Panel Variables # . TLDSID01 LISTDSJ Tutorial Panel Reason Codes # . TLDSID02 LISTDSJ Tutorial Panel Reason Codes # . TLDSID03 LISTDSJ Tutorial Panel Reason Codes # . TLDSID04 LISTDSJ Tutorial Panel Reason Codes # . TLDSIE01 LISTDSJ Tutorial Panel Online Test Panel # . TLDSIE02 LISTDSJ Tutorial Panel Online Test Panel # . TLDSIE03 LISTDSJ Tutorial Panel Online Test Panel - SHRABIT.LISTDSJ.V2R0M01.MACLIB . #DATEFMT Date Format Macro . #DATSEP Date Separator Macro . #IPAL ISPF Service PAL . #ISTATS ISPF Statistics table columns . #MPALS Message Processor PAL . DVCTBL Device Table Entries . ISPFPL ISPF Parameter Address List (10) . ISPFSRV ISPF Service keywords . LBISPL Call to ISPLINK (LarryB version) - After downloading any other required software, consult provided documentation including any configuration steps (if applicable) for software and HELP file installation. $ - Denotes modified software component for THIS DISTRIBUTION relative to prior DISTRIBUTION # - Denotes new software component for THIS DISTRIBUTION relative to prior DISTRIBUTION

Closing

Use LISTDSJ on your MVS 3.8J system.

Please use the comment box below or the contact us link on the menu bar to communicate any suggestions, improvements, corrections or issues regarding this post.

Thank You.

Version History


*
*  MM/DD/CCYY Version  Change Description
*  ---------- -------  -----------------------------------------------
*  04/15/2024 2.0.01   - Add MYTUTOR command to CLISTDIJ
*                      - Add tutorial screens                           
*                      - Correct DSORG setting for unknown     
*                      - Correct RECFM setting for unknwwn    
*                      - Misc documentation updates                     
*                                                                       
*  04/02/2021 2.0.00   - Change software distribution packaging     
*                        (HET and XMI)
*                      - LISTDSJ Shared macros                          
*                      - Externalize message processing (LDSJMSG)       
*                      - Externalize ISPF Service processing (LDSJISP)  
*                      - Misc documentation updates                     
*                                                                       
*  02/27/2021 1.0.40   - Support new variable, &SYSUPDATED              
*                      - Correct TSO environment test      
*                      - Add TSOB  parm keyword    
*                      - Activate reason code 12 (VSAM not supported)
*                      - Activate reason code 14 (not found UCB entry)  
*                      - Activate reason code 7  (not found in internal 
*                        table DVCLST)                                  
*                      - Activate reason code 27 (no volser for DSN)    
*                      - Activate reason code 3 (cannot process DSORG)  
*                      - Add support of '?ABOUT' as first paramter      
*                        for ABOUT information                          
*                      - Various program documentation updates          
*
*  05/07/2020 1.0.30   - Change software distribution packaging and
*                        installation procedure to use a Hercules
*                        Emulated Tape (HET)
*                      - No change to LISTDSJ program
*                                                                       
*  04/10/2020 1.0.20   - Correct TSB addr for TSO ENV testing           
*                      - Minor corrections to LISTDSJ
*                      - Minor updates to CLIST CLISTDIJ
*                      - Updated message member
*                                                                       
*  09/30/2019 1.0.10   - Add comments for DF and DS keywords            
*                      - Add keywords DIRECTORY and VOLUME              
*                      - Changed list of values for &SYSUNITS to        
*                        CYLINDER, TRACK, BLOCK, ABSOLUTE               
*                      - Support new variable, &SYSALLOC,               
*                      - Support USERID prefix for unquoted DSN         
*                      - Changed date seperator and format defaults     
*                        - Date Separator to dash    (-)                
*                        - Date Format to CCYY_MM_DD (3)                
*                      - Support FILE keyword   
*                      - Support DL0 and DL1 keywords
*                      - Enhance calling of IKJCT441 and ISPLINK        
*                                                                       
*  05/17/2019 1.0.01   - Add DS (Date Separator) keyword
*                      - Add DF (Date Format layout) keyword
*                      - Defaults can be customized at installation
*                                                                       
*  04/29/2019 1.0.00   - Initial version released to MVS 3.8J
*                        hobbyist public domain
*
*

2 thoughts on “LISTDSJ for MVS 3.8J

  1. Thank you for your work above. Very interesting. On another note, I am very curious to how you implemented secure SSL for your TK4 setup. I have installed TK4 many time and am very familiar with Linux/Apache Web Server/SSL. But can’t for the life of me figure out how to put SSL together for my TK4 installation already up and running on my Linux box. Any advise would be most helpful.
    Thank you!
    Colt

Leave a Reply

Your email address will not be published. Required fields are marked *


CAPTCHA Image
Reload Image

This site uses Akismet to reduce spam. Learn how your comment data is processed.