18.4.8.4.4 Lost Update Protection

Learn about BOSS REST Data Source lost update protection.

When an end user modifies one or more rows of data from a BOSS REST Data Source, APEX enforces lost update protection. If the user inserts four new rows in an interactive grid region, modifies three rows, and deletes two rows, when they click Save, the APEX engine performs the lost update protection checks for the five updated and deleted rows by retrieving each one using its resource key from the BOSS REST endpoint. If the BOSS REST Data Source has an ETag, you can use the APEX$ETAG column as the row version column for more efficient lost update detection checks by configuring the Lost Update Type on a form or grid to be Row Version Column and configuring APEX$ETAG as the row version column name.

Note:

When working with a BOSS object that has an attribute of type historyType='versionNumber', then it is mandatory to always include the ETag column (by default named APEX$ETAG) in the list of columns used by a form region, grid region, or in programmatic use with APEX_EXEC package. Furthermore, it is important when defining the column to work with programmatically to mark the ETag column using the p_is_checksum => true parameter to apex_exec.add_column(). If the business object does not have an attribute of type historyType='versionNumber', the the object will not have an ETag. In that case, you can delete the APEX$ETAG column from the Data Profile as its value will always be null and will not be used during updates or deletes.