ChangeOnInit property: Rowset class
Description
Normally, if a field value is changed, whether through PeopleCode or by an end user, the IsChanged property for the row is set to True. The exception to this is when a change is done in the FieldDefault or FieldFormula event, that is, if a value is set in one of these events, the row is not marked as changed.
At save time, all newly inserted and changed rows are written to the database. All newly inserted but not changed rows are not written to the database.
Use this property to specify whether a change made to a new row from RowInit or RowInsert PeopleCode is marked as changed. This property takes a Boolean value. The default value is True.
Setting this property to False causes changes to fields for the rowset done in RowInit and RowInsert PeopleCode to not mark a new row as IsChanged.
This property is read/write.
Runtime Considerations
You must set this property before anything is changed for a row, otherwise the row is marked as changed.
This property propagates to child rowsets. That is, if it's set for a parent rowset before doing an insert row, it's automatically set on any and all child rowsets.
In addition, parent rows are marked as changed if this property is set only for the child rowset. That is, if you've changed a level three child of a level two row, the level two and level one rows are marked as changed to maintain data integrity.