
Enterprise PL/I for z/OS IBM Programming Guide Version 5 Release 1 GI13-4536-00 Enterprise PL/I for z/OS IBM Programming Guide Version 5 Release 1 GI13-4536-00 Note Before using this information and the product it supports, be sure to read the general information under “Notices” on page 521. First Edition (August 2017) This edition applies to Version 5 Release 1 of Enterprise PL/I for z/OS and to any subsequent releases until otherwise indicated in new editions or technical newsletters. Make sure you are using the correct edition for the level of the product. Order publications through your IBM representative or the IBM branch office serving your locality. Publications are not stocked at the address below. A form for readers' comments is provided at the back of this publication. If the form has been removed, address your comments to: IBM Corporation, Department H150/090 555 Bailey Ave San Jose, CA, 95141-1099 United States of America When you send information to IBM, you grant IBM a nonexclusive right to use or distribute the information in any way it believes appropriate without incurring any obligation to you. © Copyright IBM Corporation 1999, 2017. US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Tables ............... ix COPYRIGHT ............. 17 CSECT ............... 18 Figures ............... xi CSECTCUT ............. 18 CURRENCY ............. 19 DBCS ............... 19 Introduction ............ xiii DD ................ 19 About this document ........... xiii DDSQL............... 20 Runtime environment for Enterprise PL/I for z/OS xiii DECIMAL .............. 20 Using your documentation ......... xiii DECOMP .............. 22 Notation conventions used in this document ... xiv DEFAULT .............. 22 Conventions used ........... xiv DEPRECATE ............. 31 How to read the syntax notation ...... xv DEPRECATENEXT ........... 32 How to read the notational symbols .... xvii DISPLAY .............. 33 Summary of changes .......... xviii DLLINIT .............. 33 Enhancements in this release ....... xviii EXIT................ 33 Enhancements from V4R5 ........ xxi EXPORTALL ............. 34 Enhancements from V4R4 ........ xxii EXTRN ............... 34 Enhancements from V4R3 ........ xxiii FILEREF .............. 34 Enhancements from V4R2 ........ xxiv FLAG ............... 34 Enhancements from V4R1 ........ xxv FLOAT ............... 35 Enhancements from V3R9 ........ xxvi FLOATINMATH............ 36 Enhancements from V3R8 ....... xxviii GOFF ............... 37 Enhancements from V3R7 ........ xxix GONUMBER ............. 38 Enhancements from V3R6 ........ xxx GRAPHIC .............. 38 Enhancements from V3R5 ........ xxxi HEADER .............. 39 Enhancements from V3R4........ xxxii IGNORE .............. 39 Enhancements from V3R3 ....... xxxiv INCAFTER ............. 39 Enhancements from V3R2 ........ xxxv INCDIR .............. 40 Enhancements from V3R1 ....... xxxvi INCLUDE .............. 40 Enhancements from VisualAge PL/I .... xxxvii INCPDS .............. 41 How to send your comments ....... xxxviii INITAUTO ............. 41 Accessibility............. xxxviii INITBASED ............. 42 INITCTL .............. 42 Part 1. Compiling your program ... 1 INITSTATIC ............. 43 INSOURCE ............. 43 Chapter 1. Using compiler options and INTERRUPT ............. 44 JSON ............... 44 facilities............... 3 LANGLVL.............. 45 Compile-time option descriptions ....... 3 LIMITS ............... 45 AGGREGATE ............. 7 LINECOUNT ............. 47 ARCH ............... 8 LINEDIR .............. 47 | ASSERT ............... 9 LIST ................ 47 ATTRIBUTES ............. 9 LISTVIEW .............. 47 BACKREG.............. 10 LP ................ 49 BIFPREC .............. 10 MACRO .............. 49 BLANK............... 11 MAP ............... 50 BLKOFF .............. 12 MARGINI .............. 50 BRACKETS ............. 12 MARGINS.............. 50 | CASE ............... 12 MAXBRANCH ............ 51 CASERULES ............. 13 MAXGEN .............. 52 CEESTART ............. 13 MAXMEM.............. 52 CHECK .............. 14 MAXMSG .............. 53 CMPAT............... 15 MAXNEST ............. 53 CODEPAGE ............. 16 MAXSTMT ............. 54 COMMON ............. 16 MAXTEMP ............. 54 COMPILE .............. 17 MDECK .............. 54 © Copyright IBM Corp. 1999, 2017 iii MSGSUMMARY............ 55 Using the compiler listing ......... 103 NAME ............... 55 Heading information .......... 103 NAMES .............. 56 Options used for compilation ....... 104 NATLANG ............. 56 Preprocessor input .......... 104 NEST ............... 56 SOURCE program ........... 104 NOT................ 56 Statement nesting level ......... 105 NULLDATE ............. 57 ATTRIBUTE and cross-reference table .... 105 NUMBER .............. 57 Aggregate length table ......... 106 OBJECT .............. 58 Statement offset addresses ........ 106 OFFSET .............. 58 Storage offset listing .......... 109 OFFSETSIZE ............. 58 Expressions and attributes listing ...... 110 ONSNAP .............. 59 File reference table........... 110 OPTIMIZE.............. 59 Messages and return codes ........ 111 OPTIONS .............. 60 Example .............. 112 OR ................ 61 PP ................ 61 Chapter 2. PL/I preprocessors .... 117 PPCICS............... 62 Include preprocessor ........... 117 PPINCLUDE ............. 63 Macro preprocessor ........... 118 PPLIST ............... 63 Macro preprocessor options ....... 118 PPMACRO ............. 64 Macro preprocessor example ....... 121 PPSQL ............... 64 SQL preprocessor ............ 122 PPTRACE .............. 65 Programming and compilation considerations 123 PRECTYPE ............. 65 SQL preprocessor options ........ 125 PREFIX ............... 65 Coding SQL statements in PL/I applications 129 PROCEED .............. 66 Manipulating LOB data ......... 140 PROCESS .............. 66 Suppressing SQL preprocessor messages ... 143 QUOTE............... 67 CICS preprocessor............ 144 REDUCE .............. 67 Programming and compilation considerations 144 RENT ............... 68 CICS preprocessor options ........ 145 RESEXP .............. 69 Coding CICS statements in PL/I applications 145 RESPECT .............. 70 Writing CICS transactions in PL/I ..... 146 RTCHECK.............. 70 Error-handling ............ 146 RULES ............... 70 SEMANTIC ............. 83 Chapter 3. Using PL/I cataloged SERVICE .............. 84 SOURCE .............. 84 procedures ............ 147 SPILL ............... 85 IBM-supplied cataloged procedures ...... 147 STATIC ............... 85 Compile only (IBMZC) ......... 148 STDSYS .............. 85 Compile and bind (IBMZCB) ....... 149 STMT ............... 86 Compile, bind, and run (IBMZCBG) ..... 151 STORAGE .............. 86 Invoking a cataloged procedure ....... 153 STRINGOFGRAPHIC .......... 86 Specifying multiple cataloged procedure SYNTAX .............. 87 invocations .............. 153 SYSPARM .............. 87 Modifying the PL/I cataloged procedures .... 154 SYSTEM .............. 88 EXEC statement ........... 154 TERMINAL ............. 89 DD statement ............ 155 TEST ............... 89 UNROLL .............. 92 Chapter 4. Compiling your program 157 USAGE............... 92 Invoking the compiler under z/OS UNIX .... 157 WIDECHAR ............. 93 Input files ............. 157 WINDOW .............. 94 Specifying compile-time options under z/OS WRITABLE ............. 94 UNIX ............... 158 XINFO ............... 95 -qoption_keyword ........... 158 XML................ 98 Single and multiletter flags ........ 159 XREF ............... 98 Invoking the compiler under z/OS using JCL .. 159 Blanks, comments and strings in options .... 99 EXEC statement ........... 160 Changing the default options ........ 99 DD statements for the standard data sets ... 160 Specifying options in the %PROCESS or *PROCESS Listing (SYSPRINT) .......... 162 statements .............. 100 Source Statement Library (SYSLIB) ..... 162 Using % statements ........... 101 Specifying options........... 163 Using the %INCLUDE statement ....... 101 Specifying options in the EXEC statement ... 163 iv Enterprise PL/I for z/OS Programming Guide Specifying options in the EXEC statement using Using built-in functions under LP(64) ..... 193 an options file ............ 164 Considerations for SQL programs ...... 194 Communicating with 31-bit routines...... 196 Chapter 5. Link-editing and running for 31-bit programs ......... 165 Part 2. Using I/O facilities ..... 199 Link-edit considerations for 31-bit programs ... 165 Using the binder in 31-bit programs ..... 165 Chapter 8. Using data sets and files 201 Using the ENTRY card ......... 165 Allocating files ............. 201 Runtime considerations for 31-bit programs ... 165 Associating data sets with files under z/OS ... 203 Formatting conventions for PRINT files ... 166 Associating several files with one data set ... 205 Changing the format on PRINT files for 31-bit Associating several data sets with one file ... 205 programs .............. 166 Concatenating several data sets ...... 206 Automatic prompting ......... 167 Accessing HFS files under z/OS ...... 206 Overriding automatic prompting ...... 168 Associating data sets with files under z/OS UNIX 207 Punctuating long input lines ....... 168 Using environment variables ....... 207 Punctuating GET LIST and GET DATA Using the TITLE option of the OPEN statement 208 statements ............. 169 Attempting
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages600 Page
-
File Size-