Null Suppressed Key in file

Hi All
I have a new adabas file with 1 of the field stated as Null Suppressed and the same field is used as a field for a Super descriptor Key.

1 field1 B8
2 field2 A30
3 field3 A1 null Suppressed
4 field4 A50
5 field5 A1
6 field6 A52 super descriptor made up of field4,field3 and field5

Now when I create record in this file it gets deleted after sometime automatically?

Is it do something with Null Suppressed Key ??

If you create a record with field3 blank, that record will not be found when you read the file by descriptor field6. This is a result of a component of the descriptor being defined as null-suppressed and containing a null value. You can retrieve the record using a different descriptor, READ PHYSICAL, or GET.

If you don’t find the record when field3 is non-null (i.e. not blank), then you didn’t execute an END TRANSACTION statement before the Adabas timer ran out. All STOREs, UPDATEs and DELETEs must be committed to the database via END TRANSACATION or Adabas will back them out.

Hi Ralph

“You can retrieve the record using a different descriptor, READ PHYSICAL, or GET”
with reference to your above statement, can you please give some more details on how to retrieve the record for which we have an empty Null suppressed descriptor value?


Suppose you have a descriptor field, STATUS, that is null suppressed. Further, suppose most records in the file have a STATUS that is null valued. You could then:
Depending on how high the null percentage is, this would be the most efficient way to access the null values.

If you were interested in records with some other descriptor field with value ABC and null STATUS, you could:


If you were going to use a large number of fields for records with STATUS = null, you might want to:

FIND smallview WITH OTHER = ‘ABC’
IF STATUS = ‘=’ /* and perhaps more conditions for fields in smallview
GET largeview *ISN


I somehow missed this thread first time around, and you have probably solved your problem by now; so for informational value:

I note that both field3 and field5 are formatted A1. Although certainly not universally true, I find such fields often have just a few possible values. If so, and if field4 is a descriptor all by itself, and if most field3 values are null, (okay, a lot of IFs), you might do something like:

READ FILE WITH field4 = ‘some value’ WHERE field3 = ’ ’

You could also use code similar to that shown above with smallview.