MERGE-ROW-CHANGES( ) method
Merges a single changed row from a ProDataSet object loaded with the GET-CHANGES( ) method into the corresponding row in the original ProDataSet temp-table buffer.
Return type: LOGICAL
Applies to: Buffer object handle
change-handle
original-handle
copy-all-mode
An optional logical expression where TRUE indicates that the AVM merge the row in a copy-all mode. When TRUE, the AVM merges the after-image table row whether or not it contains changes. In this case, the temp-table in the original ProDataSet object must have a unique primary index that the AVM can use to find each corresponding row from the after-image table (since an unchanged row does not have a corresponding row in the before-image table). When a corresponding row is not found in the original ProDataSet object, the AVM creates a new row using the row from the after-image table. When FALSE, the AVM merges only an after-image table row that contain changes. The default value is FALSE.If the ERROR attribute or REJECTED attribute for the changed row is TRUE, the MERGE-ROW-CHANGES( ) method backs out the change. Otherwise, this method accepts the change by copying the after-image table row to the corresponding after-image table row in the original ProDataSet temp-table. The AVM also sets the BEFORE-ROWID attribute of the row in the after-image table to the Unknown value (
?
), sets the ROW-STATE of the row in the after-image table to ROW-UNMODIFIED (0), and removes the before-image table row (if it has one).Note: The after-image table row, that contains the changes to the corresponding after-image table row in the original ProDataSet temp-table, contains changes from the original ProDataSet temp-table as well as any changes made in the associated data source row based on the MERGE-BY-FIELD attribute and PREFER-DATASET attribute settings in effect during the save operation.
OpenEdge Release 10.2B
|