Figure 5-1 lists the error codes returned by CLIST statements. Except as otherwise noted, the codes are in decimal format.
Error Code Explanation
16 Not enough virtual storage
300 User tried to update a control variable that can only be updated by the system.
304 Invalid keyword on EXIT statement.
308 CODE keyword specified, but no code given on EXIT statement.
312 Internal GLOBAL processing error.
316 TERMIN delimiter greater than 256 characters.
324 G ETLINE error.
328 More than 64 delimiters on TERMIN.
332 Invalid file name syntax.
336 File already open.
340 Invalid OPEN type syntax.
344 Undefined OPEN type.
348 File specified did not open. (For example, the file name was not allocated.) 352 GETFILE - file name not currently open.
356 GETFILE - the file has been closed by the system. (For example, the file was opened under EDIT mode and EDIT mode has been terminated.) 360 PUTFILE - file name not currently open.
364 PUTFILE - file closed by system (see code 356).
368 PUTFILE - CLOSFILE - file not opened by OPENFILE.
372 PUTFILE - issued before GETFILE on a file opened for update.
400 GETFILE - end of file. TSO treats this condition as an error that can be handled by an ERROR action.
404 PUTFILE - tried to write to a file open for INPUT.
408 GETFILE - tried to read from a file open for OUTPUT.
8xx Evaluation routine error codes.
800 Data found where operator was expected.
804 Operator found where data was expected.
808 A comparison operator was used in a SET statement.
812 (Reserved).
816 Operator found at the end of a statement.
820 Operators out of order; data may resemble operators.
824 More than one exclusive operator found.
828 More than one exclusive comparison operator found.
832 The result of an arithmetic calculation is outside the valid range extending from -2,147,483,647 to +2,147,483,647.
Figure 5-1 (Part 1 of 2). CLIST Statement Error Codes
Error Code Explanation
836 (Reserved).
840 Not enough operands.
844 No valid operators.
848 Attempt to load character from numeric value.
852 Addition error - character data.
856 Subtraction error - character data.
860 Multiplication error - character data.
864 Divide error - character data or division by o.
868 Prefix found on character data.
872 Numeric value too large.
900 Single ampersand found.
904 (Reserved).
908 Error occurred in an error action range that received control because of another error.
912 Substring range invalid.
916 Non-numeric value in substring range.
920 Substring range value too small (zero or negative).
924 Invalid substring syntax.
932 Substring outside of the range of the string. (For example, an &SUBSTR variable attempted to substring the first three positions of data that contains only two characters.)
936 A built-in variable that requires a value was entered without a value.
940 Invalid symbolic variable.
944 A label was used as a symbolic variable.
948 Invalid label syntax on a GOTO statement.
952 GOTO label was not defined.
956 GOTO statement has no label.
960 &SYSSCAN was set to an invalid value.
964 &LASTCC was set to an invalid value and EXIT tried to use it as a default value.
968 DATA PROMPT-ENDDATA statements supplied, but no prompt
occurred.
972 TERM IN statement cannot be used in background jobs.
976 READ statement cannot be used in background jobs.
999 Internal CLIST error.
Sxxx A system ABEND code, printed in hexadecimal.
Uxxx A user ABEND code, printed in hexadecimal.
Figure 5-1 (Part 2 of 2). CLIST Statement Error Codes
Index
A action
attention 3-56 cancelling 3-56
protecting the input stack for 3-56 protecting using the MAIN operand of
CONTROL 3-57 error 3-59
cancelling 3-60
listing instruction causing error 3-60 protecting the input stack for 3-60
protecting using MAIN or NOFLUSH operand of CONTROL 3-60
creating from user supplied input 4-4 attention handling CLISTs 3-56
example 3-58
protecting the input stack for 3-56 ATTN statement 3-56
B
cancelling attention action using 3-56 protecting the input stack for 3-56
using GOTO statements 3-47 built-in functions 3-21
C
CALC CLIST
creating arithmetic expressions from input 4-4 CALCFTND CLIST 4-6
capitalization in CLISTs 3-2 CASH CLIST 4-22
categories of CLISTs
CLISTs that perform routine tasks 1-1
manage applications written in other languages 1-2 self-contained applications 1-2
character set
supported by CLISTs 3-10 CLIST data sets
considerations for copying 2-2 default attributes 2-2
partitioned 2-1 advantages 2-1 sequential 2-1 CLIST libraries
allocating to SYSPROC file 2-4 concatenating to SYSPROC file 2-4
example 2-5
compressing data sets 4-20 concatenating
using &SYSLC and &SYSCAPS control variables 3-38
example of a CLIST that 4-26 fully qualified names
performing sub stringing on 4-14 I/O
performing 3-51 DATA-ENDDATA sequence
reference 5-8 syntax 5-8
DAT ATYPE built-in function 3-22 defining
a non-rescannable character string (&NRSTR) 3-24
an expression's data type (&DATATYPE) 3-22 an expression's length (&LENGTH) 3-23 including leading/trailing blanks/zeros 3-23 whether a data set exists (&SYSDSN) 3-28 dialogs
ISPF
invoking 4-29 distinguishing
END statements from END subcommands 3-46 using the CONTROL statement 3-46 using the DATA-ENDDATA sequence 3-47 DO-WHILE-END sequence
end-of-file processing 3-54 routines
protecting the input stack for 3-60 ERROR statement 3-59
cancelling error action using 3-60
protecting the input stack for 3-60 reference 5-12
syntax 5-12 errors
cancelling actions for 3-60 defining actions for 3-59
end-of-file processing 3-54 on JCL statements 3-54 opening a file 3-51 forcing arithmetic evaluations 3-23
foreground
execution of jobs, allowing
formatting in CLISTs 3-2
defining a non-rescannable character string (&NRSTR) 3-24
defining a real value (&STR) 3-26 defining a substring (&SUBSTR) 3-27 determining an expression's length
(&LENGTH) 3-23
determining data types (&DATATYPE) 3-22 determining whether a data set exists
(&SYSDSN) 3-28
forcing arithmetic evaluations (&EVAL) 3-23 overview 3-21
translating READ input to lowercase (&SYSLC) 3-29
translating READ input to uppercase (&SYSCAPS) 3-28 global symbolic variables
analogy 3-49
protecting using the MAIN operand of CONTROL 3-60
as continuation symbol 3-2
I/O background execution of jobs, allowing
example 4-16
concatenating data sets to SYSPROC 4-26 creating
arithmetic expressions from input 4-4 distinguishing operators from operands
example 4-18
distinguishing variables from data example 4-12
foreground execution of jobs, allowing example 4-16
full-screen applications writing 4-29
including JCL statements 4-12 initializing
system services 4-7 interfaces to applications
simplifying 4-22 invoking
CLISTs to perform sub tasks 4-9 system services 4-7
keywords, using to run foreground/background jobs example 4-16
options, including example 4-18
organizing related activities 4-2 protecting
JCL statements containing /* 4-12 leading zeros 4-12 performing on input strings 4-14 system-related tasks
simplifying 4-20
TSO commands, including 4-2 verifying jobcard information 4-12 VIO data set
creating 4-20 input stack
protecting
for attention routines 3-56 for error routines 3-60
using MAIN operand of CONTROL 3-57, 3-60 using NOFLUSH operand of CONTROL 3-60 input strings interfaces to applications
simplifying 4-22
interpretative language, advantages of 1-1 introduction 1-1
protecting those containing /* 4-12
special considerations for performing I/O on 3-54 job control language statements
including in CLISTs example 4-12
protecting those containing /* 4-12
special considerations for performing I/O on 3-54 jobcard information
verifying
example 4-12 jobs
K
foreground and background execution example 4-16
keywords
L
using to run foreground/background jobs example 4-16
LENGTH built-in function 3-23 libraries
CLIST 2-1
installation-defined 2-1 user-defined 2-1 LIST ALC command
managing command output 4-26 LISTER CLIST 4-2
global variables for attention routines 3-57 global variables for error routines 3-60 the input stack for attention routines 3-57 NRSTR built-in function 3-24 null
organizing related activities 4-2 OUTPUT CLIST 4-9
in PROFILE CLIST 4-29 performing file I/O
using &SYSDV AL 4-24
using READDV AL statement 4-24 period
as continuation symbol 3-2 PROC statement
considerations for
parameter values containing single quotes 3-34 reference 5-23
syntax 5-23 using
keyword parameters on 3-33
keyword parameters with subparameters on 3-34
keyword parameters without subparameters on 3-33
positional parameters on 3-32 to assign values to variables 3-32 PROFILE CLIST 4-29,4-30
programming tools 3-1 attention handling CLISTs
establishing 3-56
using GOTO statements 3-47
communicating with the terminal user 3-34 DO-groups 3-43
distinguishing END statements from subcommands 3-46
protecting the input stack for 3-60 exit routines
establishing 3-55 exiting
CLISTs using the END command 3-50 CLISTs using the EXIT statement 3-50 from a nested CLIST 3-50
closing a file 3-52 opening a file 3-51 performing 3-51
performing end-of-file processing 3-54 performing on JCL statements 3-54 reading records from a file 3-52 significance of file name 3-51 updating a file 3-53
writing records to a file 3-52 flushing the input stack
for attention routines 3-57 for error routines 3-60 functions, built-in 3-21
defining a non-rescannable character string (&NRSTR) 3-24
defining a real value (&STR) 3-26 defining a substring (&SUBSTR) 3-27 determining an expression's length
(&LENGTH) 3-23
determining data types (&DATATYPE) 3-22 determining whether a data set exists
(&SYSDSN) 3-28
forcing arithmetic evaluations (&EVAL) 3-23 overview 3-21
translating READ input to lowercase (&SYSLC) 3-29
translating READ input to uppercase (&SYSCAPS) 3-28
general considerations for writing CLISTs capitalization 3-2
comments 3-2 delimiters 3-1 formatting 3-2 global symbolic variables
analogy 3-49
protecting for attention routines 3-56 protecting for error routines 3-60 protecting using the MAIN operand of
CONTROL 3-57, 3-60
protecting using the NO FLUSH operand of CONTROL 3-60
messages, controlling the display of 3-42 nesting CLISTs 3-48
example 3-48
overview of CLIST statements 3-1 passing control to the terminal
READ 3-36
returning control after a TERMIN statement 3-42
significance of &SYSDLM control variable 3-41
TERMIN 3-40 performing operations
default order of evaluations 3-5
valid numeric ranges 3-5
precautions when reading fully qualified data set names 3-37
prompting
controlling uppercase and lowercase 3-38 for input 3-29
returning control after a TERMIN statement 3-42
significance of &SYSD LM control variable 3-41
storing ·input in &SYSDV AL control variable 3-39
to obtain values for PROC statement keywords 3-37
using the DATA PROMPT-ENDDATA sequence 3-31
for attention routines 3-57 for error routines 3-60 structuring CLISTs 3-43
attention handling CLISTs 3-56
attention handling CLISTs, example 3-58 attention routines 3-56
branching using GOTO statements 3-47 closing a file 3-52
creating loops (DO-WHILE-END) 3-43 creating loops, example 3-43
error routines 3-59
error routines, example 3-60 exit routines, establishing 3-55
exiting CLISTs using the END command 3-50 exiting CLISTs using the EXIT statement 3-50 exiting from a nested CLIST 3-50
file input/output, performing 3-51 global symbolic variables, analogy 3-49 global symbolic variables, establishing 3-49 IF-THEN-ELSE: null ELSE format 3-45 IF-THEN-ELSE: null THEN format 3-46 IF-THEN-ELSE: standard format 3-45 making decisions (IF-THEN-ELSE) 3-44 nesting CLISTs 3-48
nesting CLISTs, example 3-48 nesting loops 3-44
opening a file 3-51
performing end-of-file processing 3-54 performing file I/O on JCL statements 3-54 reading records from a file 3-52 variables, CLIST -defined 3-6
format 3-6
considerations for &SYSDATE and
&SYSSDATE 3-13
describe terminal characteristics 3 -14 modifiable 3-11 relationship between &SYSPCMD and
&SYSSCMD 3-17 prompting
for input 3-29
controlling uppercase and lowercase 3-38 using the READ statement 3-36
using WRITE and WRITENR 3-35 front-end
example 4-5, 4-12
precautions when reading fully qualified data set names 3-37
storing input in &SYSDV AL control variable 3-39 to obtain values for PROC statement
keywords 3-37
using the DATA PROMPT-END DATA sequence 3-31
example 3-31
using the READDV AL statement 3-39
returning control after a TERMIN statement 3-42
significance of &SYSDLM control variable 3-41
protecting input stack
for attention routines 3-56 for error routines 3-60
using MAIN operand of CONTROL 3-57,3-60 using NOFLUSH operand of CONTROL 3-60 protecting JCL statements containing /*
example 4-12 reading input from the terminal
precautions when reading fully qualified data set names 3-37
storing input in &SYSDV AL control variable 3-39 to obtain values for PROC statement
keywords 3-37
using the READ statement 3-36
controlling uppercase and lowercase 3-38 using the READDV AL statement 3-39 using the TERM IN statement 3-40
returning control after a TERMIN statement 3-42
significance of &SYSDLM control variable 3-41
reading input from within the CLIST using the DATA PROMPT-ENDDATA
sequence 3-31 example 3-31
reading records from a file 3-52 records
copying directly into variables using
&SYSDV AL 4-24 performing file I/O on 3-51
special considerations for JCL statements 3-54 reading from a file 3-52
DATA-END DATA sequence 5-8 DO-WHILE-END sequence 5-10 GLOBAL statement 5-19 GOTO statement 5-20 READDV AL statement 5-26 RETURN statement 5-27
relevance to PROFILE CLIST 4-29 SET statement
reference 5-28 syntax 5-28
using to assign values to variables 3-7 setting
LOG/LIST parameters 4-29, 4-32 PF key definitions 4-29
PF key definitions (1-12) 4-34 PF key definitions (13-24) 4-36 terminal characteristics 4-29, 4-31 simplifying
interfaces to applications 4-22
process of invoking CASHFLOW 4-22 routine tasks 4-3
system-related tasks 4-20 SPROC CLIST 4-26
standard format for IF-THEN-ELSE sequence 3-45 STR built-in function 3-26
strings
performing substringing on input example 4-14
attention handling CLISTs branching within a CLIST
using GOTO statements 3-47 error routines
cancelling 3-60 establishing 3-59 example 3-60
protecting the input stack for 3-60 exit routines
establishing 3-55 exiting
CLISTs using the END command 3-50 CLISTs using the EXIT statement 3-50 from a nested CLIST 3-50
file input/output closing a file 3-52 opening a file 3-51 performing 3-51
performing end-of-file processing 3-54 performing on JCL statements 3-54 reading records from a file 3-52 significance of file name 3-51 updating a file 3-53
writing records to a file 3-52 flushing the input stack
for attention routines 3-57
protecting for attention routines 3-56 protecting for error routines 3-60 protecting using the MAIN operand of
CONTROL 3-57
protecting using the NOFLUSH operand of CONTROL 3-60
protecting via the MAIN operand of CONTROL 3-60
distinguishing END statements from subcommands 3-46
using the DO-WHILE-END sequence 3-43 example 3-43
nesting 3-44
using the IF-THEN-ELSE sequence 3-44
null THEN format 3-46 SUBSTR built-in function 3-27 substringing
avoiding when performing file I/O 4-24 on input strings
example 4-14 subtasks
performing using nested CLISTs 4-9 OUTPUT 4-9
SCRIPTD 4-9 symbols, continuation 3-2 syntax
ATTN statement 5-4 CLOSFILE statement 5-5 CONTROL statement 5-6
DATA PROMPT-ENDDATA sequence 5-9 DATA-END DATA sequence 5-8
DO-WHILE-END sequence 5-10 SYSCAPS built-in function 3-28 SYSCPU control variable 3-15 SYSDATE control variable 3-13 SYSDLM control variable 3-18 SYSDSN built-in function 3-28 SYSDV AL control variable 3-18 SYSISPF control variable 3-16 SYSJDATE control variable 3-13 SYSLC built-in function 3-29 SYSLTERM control variable 3-14 SYSNEST control variable 3-18 SYSOUTLINE control variable 3-19 SYSOUTTRAP control variable 3-19 SYSPCMD control variable 3-17 SYSPREF control variable 3-15 SYSPROC control variable 3-15 SYSPROC file
concatenating data sets to 2-4 SYSRACF control variable 3-16 SYSSCMD control variable 3-17 SYSSDATE control variable 3-13 SYSSRV control variable 3-15 SYSSTIME control variable 3-13 system services
initializing and invoking 4-7 example 4-7
system-related tasks simplifying 4-20
SYSTIME control variable 3-13 SYSUID control variable 3-14 SYSWTERM control variable 3-14
T
translating READ statement input
to lowercase characters (&SYSLC) 3-29 to uppercase characters (&SYSCAPS) 3-28 TSOEXEC command 3-21
assigning character strings to 3-6 format 3-6
considerations for &SYSDATE and
&SYSSDATE 3-13
describe terminal characteristics 3-14 modifiable 3-11
related to TSO command output 3-19 related to TSOEXEC command 3-21 relationship between &SYSPCMD and
&SYSSCMD 3-17 defining and assigning values
implicitly 3-6
using the OPENFILE statement 3-8 nesting 3-8
related to the TSOEXEC command
&SYSABDRC 3-21
full-screen applications 4-29 messages to the terminal 3-35 records to a file 3-52
x
XYZABCIO 4-29,4-31
XYZABC20 4-29,4-32 XYZABC30 4-29,4-34 XYZABC40 4-29, 4-36
TSO Extensions CLISTS: Implementation and Reference
SC28-1304-1 S370-39
Printed in U.S.A.
- - . .
- . .-- -- -- - - - - - - - - - - - - --- - ---
.-- -- -- -- --
- - - - - ... - ®!§ and operators of IBM systems. You may use this form to communicate your comments about this publication, its organization, or subject matter, with the understanding that IBM may use or distribute whatever information you supply in any way it believes appropriate without incurring any obligation to you.
Note: Copies of IBM publications are not stocked at the location to which this form is addressed. Please direct any requests for copies of publications, or for assistance in using your IBM system, to your IBM representative or to the IBM branc/t office serving your locality.
Possible topics for comment are:
Clarity Accuracy Completeness Organization Coding Retrieval Legibility If you wish a reply, give your name, company, mailing address, and date:
What is your occupation?
How do you use this publication?
Number of latest Newsletter associated with this publication:
TSO Extensions CLiSTS: Implementation and Reference SC28-1304-1
Reader's Comment Form
Fold and tape Please Do Not Staple
S370-39
Fold and tape i I I I
---~
Fold and tape
---
-- -- -- -- - - - - -
_~_- - - - - --- - - - - - - - - ----
' f ' _ ®111111
BUSINESS REPLY MAIL
FIRST CLASS PERMIT NO. 40 ARMONK, N.Y.
POSTAGE WILL BE PAID BY ADDRESSEE
International Business Machines Corporation Department D58, Building 921 -2
PO Box 390
Poughkeepsie, New York 12602
Please Do Not Staple
---____ -.1
I INO POSTAGE I
NECESSARY I I
IF MAILED I
IN THE i
UNITED STATES i
... _---·1
I- -_ _ _ _ _ _ 1
---1 ---1 ---1 ---1
- -_ _ _ _ _ _ 1 I I I---1
wi I I I---1
Fold and tape
Printed in U.S.A.
TSO Extensions
CLISTS: Implementation and Reference
SC28-1304-1
READER'S COMMENT FORM
This manual is part of a library that serves as a reference source for systems analysts, programmers, and operators of IBM systems. You may use this form to communicate your comments about this publication, its organization, or subject matter, with the understanding that IBM may use or distribute whatever information you supply in any way it believes appropriate without incurring any obligation to you.
Note: Copies of IBM publicatiolls are IlOt stocked at the locatioll to which this form is addressed. Please direct allY requests for copies of publicatiolls, or for assistallce ill usillg your IBM system, to your IBM represelltative or to the IBM branch office servillg your locality.
Possible topics for comment are:
Clarity Accuracy Completeness Organization Coding Retrieval Legibility If you wish a reply, give your name, company, mailing address, and date:
What is your occupation?
How do you use this publication?
Number of latest Newsletter associated with this publication:
TSO Extensions CLISTS: Implementation and Reference SC28-1304-1
Reader's Comment Form
Fold and tape Please Do Not Staple
International Business Machines Corporation Department 058, Building 921 -2
PO Box 390
Poughkeepsie, New York 12602
I I