When the interface view engine is reading
ADABAS data and constructing an observation,
it could find missing (null) values for data fields within an observation.
The interface view engine
uses the L1, L2, L3, and L4 commands to retrieve
ADABAS data. The values are returned in the
record buffer using the standard length and format defined for that
field. (Standard length is not used if you have specified a value
for the DB Content field or the field is a variable length field.)
If the field's value is null, the data is returned in the format in
effect for that field.
Formats and their corresponding
null values are listed below.
ADABAS Data Formats and Null Values
When an
ADABAS record is read, the interface view
engine is unable to tell whether a field has a value of zero (for
numeric fields) or blanks (for alphanumeric fields) or truly has a
null value. This is also true when you are updating. When you are
using the FSEDIT procedure, if a value of zero or missing is used
to modify an existing record, zeros are placed in the
ADABAS record buffer and subsequently added
to the
ADABAS file. Blanks
are placed in the record buffer if a blank or missing value was supplied
for an alphanumeric field.
Since SAS missing values
are stored as zeros and blanks in
ADABAS files, some SAS WHERE clauses are also impacted.
For example, if either of the following SAS WHERE clauses are issued,
where aa is missing;
where aa is null;
the resulting condition is sent to
ADABAS:
where aa = 0 (numeric)
where aa = 'Ø' (alphanumeric)
Note: Null values are processed
differently by
ADABAS if
the
ADABAS descriptor used
in a WHERE clause has the Null Value Suppress (NU) definition option
defined for it.