Home The Company Publications Products Links Tips

Last update: 30 June 2004

Converting non-unique superdescriptors into unique superdescriptors

Question posted on SAG-L:

Does ADACMP DECOMPRESS discover non-unique index entries?

Larry Burch responded:

Compress does not determine or discover non-unique index entries.

I ran a Compress with the "same" dataset concatenated to itself for input -- compressed sucessfully, "Number of incorrect records 0," zero return code. The Load step failed, "Error-101, Value for unique descriptor xx in file nnn already present," U35 abend.

Kelly Jones responded:

One way to accomplish the reload with a utility would be to

  1. Decompress with ADAMCP DECOMPRESS SORTSEQ=xx where xx is the descriptor which needs to be unique
  2. Compress with a UEX6 that has been written to 'reject' all duplicate records
  3. Delete and reload the file
The UEX6 must be written by the user and will work as long as the input is in the expected sequence (DE value, ISN) - as noted by others, ADACMP itself will not detect the problem.

A similar method would use ADAULD and UEX9.

Of the two, UEX6 is probably easier to write. The input records, after having been DECOMPRESSed will (ignoring MU/PE fields) will be in fixed form. On the other hand, the input records to UEX9 are in compressed form.

You can also pass the DECOMPRESSED file through SYNCSORT to identify and remove duplicates. The only difficulty would be in finding the field if it is preceeded by an MU/PE.

Top Page

Back to ADABAS Tips, Tricks, Techniques -- Overview