In SPESQH I have a process that modifies the record of the screen (CUSQUOREF field), which is executed correctly, but after this, if from the same screen the user tries to modify the same record, the capture error occurs.
The error is due to a difference between the [F]updTick value on the SQUOTE table and the local variable [L]AUPDTICK managed by the supervisor. When a record is read in the LIENS method the [L]AUPDTICK is set with the [F]updTick value from the table. This ensures that the version on the screen and the version of the original record when read is the same before allowing modification.
Updating the record from any other section of code, requires a refresh of both values. For an example take a look in the label RECOVERED_AUPDTICK from SUBSOHA for how it is managed on the Sales Orders (GESSOH) object.
The error is due to a difference between the [F]updTick value on the SQUOTE table and the local variable [L]AUPDTICK managed by the supervisor. When a record is read in the LIENS method the [L]AUPDTICK is set with the [F]updTick value from the table. This ensures that the version on the screen and the version of the original record when read is the same before allowing modification.
Updating the record from any other section of code, requires a refresh of both values. For an example take a look in the label RECOVERED_AUPDTICK from SUBSOHA for how it is managed on the Sales Orders (GESSOH) object.
*Community Hub is the new name for Sage City