Contents

Preface

1Introduction

1.1Users of this book

1.2The significance of the REXX programming language in z/OS

1.3Brochures for programming ISPF applications

1.3.1The REXX programming literature

1.3.2ISPF reference books

1.3.3TSO reference books

1.3.4The ISPF services

2Introduction to the REXX programming language

2.1What is REXX?

2.2Overview of REXX under TSO

2.2.1Recognizing a REXX procedure by the TSO

2.2.2Running REXX procedures in the TSO

2.3Compile REXX procedures

2.4Performance of REXX procedures

2.5The syntax of the REXX language

2.6Variables in REXX

2.7Data types of REXX variables

2.8Operators of the REXX language

2.8.1String operators

2.8.2Arithmetic Operators

2.8.3Compare operators

2.8.4Logical operators

2.9Stems in REXX

2.9.1Initialize stems with null string

2.9.2File processing in connection with stems

2.9.3Multi-unit Stems

3The REXX commands

3.1ADDRESS – Connection to the subsystems

3.1.1The host command environments

3.1.2The active host command environment

3.1.3The temporary addressing of external commands

3.1.4Special case ISPEXEC and ISREDIT

3.1.5The main host command environments

3.2ARG – Retrieve the parameter string

3.3CALL – Call other programs

3.4DO groups and DO loops

3.4.1The DO group

3.4.2The DO loop

3.5EXIT and RETURN – leaving the REXX procedure

3.6IF and WHEN – check conditions

3.7INTERPRET – generate REXX commands dynamically

3.8NUMERIC – set computing options

3.9PARSE – text fragmentation

3.9.1PARSE ARG

3.9.2PARSE VALUE WITH

3.9.3PARSE VAR

3.9.4PARSE SOURCE

3.10PROCEDURE – Option for internal subroutines

3.10.1Internal subroutines with PROCEDURE statement

3.10.2Internal subroutines without PROCEDURE statement

3.11QUEUE – Working with the TSO stack

3.11.1The TSO/E data stack

3.11.2Use options for the TSO/E Data Stack

3.12SAY – Print texts

3.13SELECT – Conditionally call alternative instructions

3.14NOP – No operation

3.15PULL – Enter data on the screen

3.16TRACE – The strong debugging aid

3.17SIGNAL – Jumping when errors

4The REXX functions

4.1General functions

4.1.1ADDRESS – Get the active host command environment

4.1.2ARG – Input parameter test or take

4.1.3DATE – Date functions

4.1.4TIME – Time functions

4.1.5QEUED – Number of records in the data stack

4.1.6SOURCELINE – Return a program line

4.1.7USERID – Return the TSO user ID

4.1.8VALUE – Create variable names dynamically

4.2Arithmetic functions

4.2.1ABS – absolute value of a number

4.2.2DIGITS, FORM, FUZZ – Query options for arithmetic operations

4.2.3MIN, MAX – Minimum and maximum value

4.2.4RANDOM – Generate random numbers

4.2.5SIGN – Return of the sign

4.3Comparison Functions

4.3.1COMPARE – Compare texts

4.3.2DATATYPE – Determine data type

4.4Conversion functions

4.4.1C2D – Character to decimal

4.4.2C2X – Character to Hexadecimal

4.4.3D2C – Decimal to Character

4.4.4D2X – Decimal to Hexadecimal

4.4.5X2B – Hexadecimal to Binary

4.4.6X2C – Hexadecimal to Character

4.4.7X2D – Hexadecimal to Decimal

4.5Formatting functions

4.5.1CENTER – Centering a string

4.5.2COPIES – Reproduce texts

4.5.3FORMAT – Format numbers

4.5.4JUSTIFY – Formatting a string

4.5.5LEFT – Rearrange text left-justified

4.5.6RIGHT – Arrange text right- justified

4.6String functions

4.6.1DELSTR – Delete substrings

4.6.2INSERT – Insert text

4.6.3SCHANGE – Change of texts

4.6.4LENGTH – Length of a text

4.6.5OVERLAY – Superimpose text

4.6.6POS – Search for text

4.6.7STRIP – remove border characters

4.6.8SUBSTR – Extract part of a text

4.6.9TRANSLATE – translate characters

4.6.10VERIFY – verify text

4.7Word functions

4.7.1WORD – return of a word

4.7.2WORDINDEX – return the starting position of a word

4.7.3WORDLENGTH – return the length of a word

4.7.4WORDPOS – search for a word

4.7.5WORDS – number of words in a string

4.8System functions

4.8.1LISTDSI – List data set information

4.8.2MSG – control of the TSO messages

4.8.3MVSVAR – Return z/OS system information

4.8.4OUTTRAP – take TSO messages

4.8.5SYSDSN – check data set status

4.8.6SYSVAR – get system Information

4.8.7STORAGE – read and write memory contents

5The TSO/E REXX commands

5.1EXECIO – Read and write data sets

5.2DELSTACK – delete data stack contents

5.3DROPBUF – Delete data stack buffers

5.4TSO Commands

6Execute REXX programs

6.1Execution of programs in a TSO/ISPF environment

6.1.1Online execution

6.1.2Batch execution

7Introduction to ISPF programming

7.1Programming languages useable in ISPF

7.2ISPF programming objects

7.3Some typical examples

7.3.1Example for use of ISPF panels

7.3.2Example for use of skeletons

7.3.3Example for use of tables

7.3.4Example for use of ISPF variables

7.3.5Example for data processing with TSO and ISPF

7.3.6Output of messages with ISPF

7.4LIBDEF – Dynamic linking of ISPF libraries

7.5ALTLIB – Dynamic linking of EXEC libraries

7.5.1Search sequence in the procedures libraries

7.5.2The ALTLIB command in ISPF

7.5.3Stacking of the APPLICATION level ALTLIBs

7.5.4The QUIET operand of the ALTLIB DISPLAY command

8Data set processing using ISPF

8.1The LM services

8.1.1Grouping of LM services

8.1.2LMINIT – Start of the data set processing

8.1.3LMFREE – Free a data set

8.1.4LMOPEN – Open a data set for processing

8.1.5LMCLOSE – Close a data set

8.1.6LMMFIND – Localize a member

8.1.7LMMREP – Replace a member

8.1.8LMMADD – Add a member

8.1.9LMGET – Read a data records

8.1.10LMPUT – Output data records

8.1.11LMCOPY – Copy data

8.1.12LMMOVE – Move data

8.1.13LMMDEL – Delete members

8.1.14LMMREN – Rename members

8.1.15LMMSTATS – Display or change member statistics

8.1.16LMCOMP – Compress a PDS

8.1.17LMMLIST – Display a member list

8.1.18LMMDISP – Display and edit a member list

8.1.19LMDINIT – Initialize the LMDDISP service

8.1.20LMDDISP – Data set list service

8.1.21LMDLIST – List of data sets

8.1.22LMDFREE – Free a LISTID

8.1.23MEMLIST – member list dialog service

8.2Data set query services

8.2.1LMDLIST – Data set list service

8.2.2DSINFO – ISPF service which provides data set information

8.2.3LISTDSI – REXX function to list data set information

8.2.4QBASELIB – Query DSN information

8.2.5QLIBDEF – Query LIBDEF Information

8.2.6QUERYENQ – ENQs determination

9Messages – Definition, setting, output

9.1Error handling in ISPF

9.1.1Returning error messages

9.1.2Output of error messages

9.1.3SETMSG – Set next message

9.1.4Definition of ISPF messages

9.1.5Naming convention of the ISPF message IDs

9.1.6Definition of messages

9.1.7The standard message member ISRZ00

10Panels – create and use

10.1The Dynamic Tag Language (DTL)

10.2Panel types in ISPF

10.3Definition of panels

10.3.1The structure of a panel

10.3.2Creation of panels and their call

10.3.3The panel definition sections

10.3.4Variables in panel definitions

10.3.5Panel processing

10.3.6Help panels

10.3.7Panels to display ISPF tables

11Skeletons – Design and use

11.1Creating skeletons

11.2Steps to use the file-tailoring service

12Tables – Create and edit

12.1Locations for tables

12.2Reading ISPF tables

12.3Writing ISPF tables

12.4Commands of the table services

12.5Example of working with tables

13Variables – Definition and using

13.1Variables pools

13.1.1Function pool

13.1.2Shared pool

13.1.3Profile pool

13.2Saving the profile members

13.3Creating profile members

13.4Display of actually used profile member

13.5The System Profile Pool

13.5.1Frequently used ISPF variables

13.5.2Process ISPF variables

14Edit macros – Create and apply

14.1What is an edit macro?

14.1.1Naming conventions for edit macros

14.1.2Example of two very useful edit macros

14.2Table of edit macro commands

14.3Operands and abbreviations used in the edit macro commands

14.4Test aids in the creating macros

14.4.1Prototyping

14.4.2The REXX TRACE command as developing aid

14.4.3The program ISREMSPY

14.5System variables of the ISPF editor

14.6Passing parameters to macros

14.7Examples for editing and SUBMIT batch jobs

14.8Mnemonics for macro programming

15The SMART ISPF utilities

15.1Naming conventions

15.2The dynamic panel concept

15.3List of executable programs

15.4Program descriptions

15.4.1Edit macro ## – Execute a currently edited REXX procedure

15.4.2Edit macro #ALTXT – Realign line parts

15.4.3Edit macro #EDMEM – Edit of a member

15.4.4Edit macro #IMACROA – General ISPF edit macro

15.4.5Edit macro #IMACRO1 – Initial edit macro

15.4.6Edit macro #IMACRO2 – Edit session end macro

15.4.7Edit macro #ISPFB – Submit an ISPF batch job

15.4.8Edit macro #LCH – Perform long edit change commands

15.4.9Edit macro #SPLJ – SPLIT and JOIN lines

15.4.10Edit macro #SSS – Clear SCHFOR lists

15.4.11Edit macro #SSSCH – Mass update of members

15.4.12Edit macro #SU – Submit JCL without a JOB statement

15.4.13Edit macro #TSOB – Submit a TSO batch job

15.4.14Edit macro #VERASE – Erase ISPF profile variables

15.4.15Program SCURSOR – Calling a data set from an ISPF screen

15.4.16Program SDOC – Produce documentation members

15.4.17Program SLE – Display last edited data sets

15.4.18SLOGDSN – Data member containing DSNs for logon

15.4.19Program SLOGON – Personal logon procedure

15.4.20Program SPROFEDT – Store users ISPF profile variables

15.4.21SPROFVAR – Load user ISPF variables

15.4.22Program SSC – Super clone for data sets

15.4.23Program SSS – Perform a Super-Search

15.5Programming aids

15.5.1Edit macro #C – Compile and execute a REXX program

15.5.2Edit macro #RO – Online compile of a REXX program

15.5.3Edit macro #RC – Compile a REXX procedure with a batch job

15.5.4Edit macro #RCLOAD – Produce a load or a call module

15.5.5Edit macro #IE – Insert a call to ISPF_ERROR

15.5.6Subroutine ISPF_ERROR – Display ISPF error messages

15.5.7Edit macro #PAN – Execute a panel source code

15.5.8Subroutine DAYDIFF – Calculate number of days

15.5.9Subroutine ENDDAY – Calculate a target date

15.5.10Subroutine JULDATE – Translate a date to Julian and vise versa

15.5.11Subroutine LEAPYEAR – Return the leap year information

15.5.12REXX subroutine SCHANGE – REXX change function

15.5.13Program SDYNPAN – Convert a panel source code

15.6Installation of SMART ISPF utilities

15.6.1Download and unzip

15.6.2Installation

15.6.3ALTLIB command

15.6.4Make the SMART ISPF utilities ready to run

List of programs

List of tables

List of screens

Bibliography

Index

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.15.149.222