IMetabaseUpdateUserEvents.OnUpdateObject

Синтаксис

OnUpdateObject(Update: IMetabaseUpdate; CurrentNode: IMetabaseUpdateNode; Var Skip: Boolean);

Параметры

Update - обновление, применяемое к текущему репозиторию.

CurrentNode - объект обновления, который будет применен к объекту репозитория.

Skip - параметр, определяющий будет ли проводится обновление объекта. По умолчанию установлено значение False, при этом осуществляется обновление объекта.

Если параметру установить значение True, то обновление объекта, которому соответствует объект CurrentNode, производиться не будет. Объект будет пропущен.

Описание

Метод OnUpdateObject реализует событие, возникающее непосредственно перед обновлением объекта репозитория, которому соответствует объект обновления CurrentNode.

Пример

Public Class CUpdateEvents: UpdateEvents

Public Sub OnBeginUpdate(Update: IMetabaseUpdate);

Var

Flag: IMetabaseUpdateProperty;

Begin

Debug.WriteLine("Обновление объектов репозитория");

Flag := Update.Properties.FindById("Ver");

If Flag <> Null Then

Flag.Value := "1.1";

End If;

End Sub OnBeginUpdate;

 

Public Sub OnAskConstraintsHandling(Update: IMetabaseUpdate; Node: IMetabaseUpdateNode;

Details: String;

Var Handling: UpdateDataConstraintsHandlingType);

Begin

Handling := UpdateDataConstraintsHandlingType.KeepTableUnchanged;

End Sub OnAskConstraintsHandling;

 

Public Sub OnAskReflectRights(Var Cancel: Boolean);

Begin

Cancel := True;

End Sub OnAskReflectRights;

 

Public Sub OnUpdateObject(Update: IMetabaseUpdate; CurrentNode: IMetabaseUpdateNode; Var Skip: Boolean);

Begin

If CurrentNode.NodeType = MetabaseUpdateNodeType.DeleteObject Then

Skip := True;

End If;

End Sub OnUpdateObject;

 

Public Sub OnEndUpdate(Update: IMetabaseUpdate);

Begin

Debug.WriteLine("Обновление объектов окончено");

End Sub OnEndUpdate;

End Class CUpdateEvents;

 

Данный пример является шаблоном для модуля обновления. При применении обновления, содержащего данный модуль, будут осуществляться следующие проверки:

См. также:

IMetabaseUpdateUserEvents