ACCEPT-CHANGES and ACCEPT-ROW-CHANGES methods
- Last Updated: February 11, 2026
- 2 minute read
- OpenEdge
- Version 13.0
- Documentation
Syntax
There is an ACCEPT-CHANGES method
on the ProDataSet handle, and the ProDataSet temp-table buffer handle,
which effectively tells the AVM that any changes tracked in the before-table(s)
have been processed and those records should be accepted as the new
origin ProDataSet versions. The method can be executed on the ProDataSet
handle or a temp-table buffer handle in the origin ProDataSet.
If
the method is executed on the ProDataSet, then all before-tables
in the ProDataSet are emptied, and the pointers to those records
in the after-table are removed so that the BEFORE-ROWID attribute
of every record in the after-tables is the Unknown value (?) and the ROW-STATE of
every record in the after-tables is set to ROW-UNMODIFIED(0).
The before-tables are not deleted, only emptied for possible later
use.
If ACCEPT-CHANGES is executed on a
temp-table buffer handle, then it is applied only to that temp-table
and its after-table. It is equally possible to execute APPLY-CHANGES on
the after-table handle, in which case it applies to that table and
its before-table, and the result is the same. However, you should
normally ACCEPT-CHANGES on the before-table buffer,
since that is the table that holds a record of every change and
nothing else.
There is a separate ACCEPT-ROW-CHANGES method for
the buffer handle, which executes only on the current row in the
buffer. It is applied only to that one record in the table and its
corresponding record in the other table. ROW-ACCEPT-CHANGES can
be executed only on the before-table buffer handle of the temp-table
in the origin ProDataSet. This is the syntax for the ACCEPT-ROW-CHANGES method:
|
These methods effectively reset the ProDataSet,
temp-table, or row so its current state is as if a FILL was
just executed.