DLIVar

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.

Related concepts
DL/I database support

Related reference
@DLI
Exception handling
PCB record part properties

Feedback
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.