Consultor Eletrônico



Kbase P104946: ProDataSet Fill() method ignores unique index on temp-table
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   20/04/2006
Status: Verified

FACT(s) (Environment):

OpenEdge 10.0B

SYMPTOM(s):

Defining temp-table with a Unique index

When displaying the contents of the populated temp-table, multiple instances of the same record are visible

No errors are raised during the FILL operation

AFTER-ROW-FILL callback procedure does not fire for all records

If the unique index is used on the FOR EACH block then the correct results are displayed

Attempting to DELETE extra records results in error 1422

SYSTEM ERROR: Index in for recid could not be deleted. (1422)

CAUSE:

Bug# 20050601-002

FIX:

Option #1
Upgrade to 10.1A

Option #2
Use a BEFORE-ROW-FILL callback procedure to check whether the record exists. If the record exists then use RETURN NO-APPLY to ensure that the duplicate record is never added.