The DLIVar variables contain information about the most recent DL/I
database I/O. These variables are available only if you assign the complex
property @DLI to your program.
Each DL/I I/O call changes the values in all the DLIVar variables
other than DLIVar.handleHardDLIErrors, which retains
its value until you explicitly reset it.
The variables are as follows::
- dbName char(8)
- The name of the DL/I database accessed on the last call.
- segmentLevel num(2)
- The level number of the lowest segment accessed on the most recent DL/I
call (root level is 01). If DL/I was unable to retrieve the requested segment,
this is the level from the last successful call.
- statusCode char(2)
- The DL/I status code for the last I/O call, such as GA or II.
- procOptions char(4)
- Contains the DL/I options for the database accessed by the last DL/I I/O
call.
- segmentName char(8)
- The name of the lowest segment accessed on the most recent DL/I I/O call.
- keyAreaLen int
- The number of bytes of the keyArea field actually
used on the most recent I/O call.
- keyArea char(32767)
- This is the unformatted data returned from the database segment. The usable
data is located in the portion of the key area specified by keyArea[1 : DLIVar.keyAreaLen].
- numSensitiveSegs int
- The number of segment types to which a program is sensitive for the database
accessed during the last DL/I I/O function.
- cicsError char(2)
- CICS® error
code (if any) on the most recent DL/I I/O call. For more information about
return codes, refer to the CICS application reference for your version of CICS.
- cicsCondition char(2)
- CICS condition
code (if any) on the most recent DL/I I/O call, as follows:
- 00
- Normal response
- 08
- Request was not valid
- 0C
- Not open
- cicsRestart num(1)
- On CICS,
if this field is equal to 1, the DL/I program was restarted during the last
DL/I I/O function. If 0, the program was not restarted.
- handleHardDLIErrors
- Controls whether a program continues to run after a hard error occurs
on a DL/I or IMS™ I/O
operation in a try block; however, if VGVar.handleHardIOErrors is
set to 1, DLIVar.handleHardDLIErrors has no effect because the program
continues to run after any hard error,
The default value of DLIVar.handleHardDLIErrors is
1, unless you set the program property handleHardDLIErrors to no,
which sets the variable to 0. (The property handleHardDLIErrors is
available for programs and other generatable logic parts.)
You can use VGVar.handleHardDLIErrors in
any of these ways:
- As the source or target of an assignment or move statement
(also allowed in the "for count" of a move statement)
- As the variable in a logical expression used in a case, if,
or while statement
- As the argument in a return or exit statement
The characteristics of
DLIVar.handleHardDLIErrors are
as follows:
- Primitive type
- NUM
- Data length
- 1
- Is value always restored after a converse?
- Yes
For other details, see Exception handling.