Kbase P96282: Error 7331 when deleting records using the deleteRow function
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  15/10/2008 |
|
Status: Unverified
FACT(s) (Environment):
OpenEdge 10.x
SYMPTOM(s):
Error 7331 when deleting records using the deleteRow function
Deleting SmartDataObject records using the deleteRow() function
Cannot reposition query <name> to recid/rowid(s) given. (7331)
Cannot reposition query qDataQuery to recid/rowid(s) given. (7331)
RowObject was not found with ROWID <rowid>
RowObject ROWID is passed as the first parameter to the deleteRow function
CAUSE:
The deleteRow API completely ignored the Rowident parameter from version 9.1B to version 9.1D inclusive. This is no longer the case.
The visual data target's Rowident is different from the SmartDataObject Rowident since OpenEdge 10.0A.
FIX:
After the record is fetched in the SmartDataObject use:
DYNAMIC-FUNCTION('deleteRow':U IN <sdo-handle>, INPUT ?).
Version 10.0B has been improved to allow ? to be passed as the first parameter, to indicate that it is the current record to be updated.