PreserveExistingData: Boolean;
Свойство PreserveExistingData определяет, будут ли при обновлении удаляться данные, содержащиеся в обновляемом объекте-приемнике и отсутствующие в исходном объекте.
Если свойству установить значение True, то в обновляемом объекте будут оставлены записи/элементы, отсутствующие в исходном объекте. По умолчанию свойству установлено значение False, при этом перед обновлением осуществляется очистка объекта-приемника.
Примечание. Свойство является устаревшим, используйте вместо него свойство BatchMode.
Для выполнения примера предполагается наличие в репозитории таблицы с идентификатором "Table_1". В таблице имеется поле "Field1", по значениям которого будет производиться поиск существующих записей.
Sub Main;
Var
MB: IMetabase;
MBDesc: IMetabaseObjectDescriptor;
MUpdate: IMetabaseUpdate;
ObjNode: IMetabaseUpdateDataObjectNode;
Begin
MB := MetabaseClass.Active;
//Обновляемая таблица
MBDesc := MB.ItemById("Table_1");
MUpdate := MB.CreateUpdate;
ObjNode := MUpdate.RootFolder.Add(MetabaseUpdateNodeType.DataObject) As IMetabaseUpdateDataObjectNode;
ObjNode.Label := MBDesc.Id;
ObjNode.Method := MetabaseUpdateMethod.All;
ObjNode.Object := MBDesc;
ObjNode.PreserveExistingData := True;
ObjNode.PrimaryKey := "FIELD1";
MUpdate.SaveToFileNF("c:\Table.pefx");
End Sub Main;
После выполнения примера будет создано новое обновление. В данное обновление будет включена таблица "Table_1". При обновлении данных в таблице-приемнике удаление данных, отсутствующих в исходной таблице, производиться не будет. Поиск обновляемых записей будет производиться по полю "FIELD1".
См. также: