IBM OS/390 User Manual
large enough ISA to reduce subsequent GETMAINs and FREEMAINs to zero (or
some very small number). This is one of the most important things a user can
do to improve the performance of a PL/I program.
some very small number). This is one of the most important things a user can
do to improve the performance of a PL/I program.
15.12 PL/I and CICS
15.12.1 File Support
The only PL/I file supported by PL/I under CICS is SYSPRINT, and its usage must
be limited. The functions LINENO and COUNT are supported under MVS, but give
a null value if they are used under DOS. Other file access facilities are provided
by CICS/VS file access macros and/or EXEC commands.
be limited. The functions LINENO and COUNT are supported under MVS, but give
a null value if they are used under DOS. Other file access facilities are provided
by CICS/VS file access macros and/or EXEC commands.
15.12.2 Statements not Supported
DISPLAY and DELAY are not supported. The functions PLIREST, PLICANC,
PLICKPT and PLISRTx are not supported. MULTITASKING is not supported.
Inter-language linkages are limited to Assembler (with some restrictions).
PLICKPT and PLISRTx are not supported. MULTITASKING is not supported.
Inter-language linkages are limited to Assembler (with some restrictions).
15.12.3 CALLing DUMP
The only options permitted in calling DUMP are T and NT, S and C, B and NB, K
and NK. The dump is not written to the PLIDUMP file, but is sent by transient
files to a destination of CPLD. K and NK are special CICS/VS-only options on
PLIDUMP.
and NK. The dump is not written to the PLIDUMP file, but is sent by transient
files to a destination of CPLD. K and NK are special CICS/VS-only options on
PLIDUMP.
15.12.4 Execution Options
The execution options can only be communicated to PL/I by means of a PLIXOPT
string:
string:
DCL PLIXOPT CHAR(nn) VAR EXT INIT(
′
xuxuxx
′ ) ;
The options permitted are COUNT and NOCOUNT, FLOW and NOFLOW, ISASIZE,
REPORT and NOREPORT, STAE and NOSTAE. The option SPIE will be ignored if
it is specified. If a PLIXOPT string is not specified, defaults will be supplied. If
they are wrong, the mistake can be very costly in CICS/VS transaction execution
time. Every PL/I-CICS/VS transaction program should have a PLIXOPT string,
especially to set ISASIZE. Note that the STAE option causes PL/I to issue a CICS
DFHPC SETEXIT macro. It uses CICS error handling. It does not override it.
REPORT and NOREPORT, STAE and NOSTAE. The option SPIE will be ignored if
it is specified. If a PLIXOPT string is not specified, defaults will be supplied. If
they are wrong, the mistake can be very costly in CICS/VS transaction execution
time. Every PL/I-CICS/VS transaction program should have a PLIXOPT string,
especially to set ISASIZE. Note that the STAE option causes PL/I to issue a CICS
DFHPC SETEXIT macro. It uses CICS error handling. It does not override it.
15.12.5 Compatibility
All these restrictions already exist in DOS. No differences exist at the PL/I level.
The compatibility of CICS transactions written in PL/I appears therefore to be
total.
The compatibility of CICS transactions written in PL/I appears therefore to be
total.
15.12.6 PL/I-CICS/VS Transaction ABEND Codes
These are documented in the PL/I Programmer
′
s Guide, not the CICS manuals.
The only one which tends to puzzle users is
″
APLS
″,
which means that the PL/I
ERROR condition was raised, but
not by a program check or a transaction abend.
For example, CONVERSION might have been raised by the PL/I library.
346
VSE to OS/390 Migration Workbook