IMetabaseUpdateSpecialObjectsNode.ApplyObjectEx

Синтаксис

ApplyObjectEx(Index: MetabaseSpecialObject; IncludeChildren: TriState; Value: Boolean);

Параметры

Index. Тип специального объекта;

IncludeChildren. Признак включения в обновление дочерних объектов у специального объекта;

Value. Признак включения специального объекта в обновление.

Описание

Метод ApplyObjectEx включает в обновление специальный объект с возможностью добавления дочерних объектов.

Комментарии

В текущей реализации метод актуален для специального объекта с типом MetabaseSpecialObject.CustomExtender. Если параметру IncludeChildren установлено значение TriState.OnOption, то в обновление с настройками контейнера, дополняющего системные классы, также будут включены все пользовательские классы. Для включения специального объекта в обновление установите параметру Value значение True.

Пример

Для выполнения примера в метаданных репозитории предполагается наличие пользовательских классов.

Добавьте ссылку на системную сборку Metabase.

Sub UserProc;
Var
    Mb: IMetabase;
    Update: IMetabaseUpdate;
    SpecialObjNode: IMetabaseUpdateSpecialObjectsNode;
Begin
    MB := MetabaseClass.Active;
    // Создание обновления
    Update := Mb.CreateUpdate;
    // Управление специальными объектами в обновлении
    SpecialObjNode := Update.SpecialObjectsNode;
    // Добавление в обновление контейнера со всеми пользовательскими классами
    SpecialObjNode.ApplyObjectEx(MetabaseSpecialObject.CustomExtender, TriState.OnOption, True);
    // Сохранение обновления в файл
    Update.SaveToFileNF("D:\Work\Pefx\Update.pefx");
End Sub UserProc;

При выполнении примера будет создано новое обновление. В обновление будет включён контейнер со всеми пользовательскими классами. После этого обновление будет сохранено в указанный файл.

См. также:

IMetabaseUpdateSpecialObjectsNode