IMetabaseSaveDialog.SaveObject

Синтаксис

SaveObject: IMetabaseObjectDescriptor;

Описание

Свойство SaveObject определяет описание сохраняемого объекта репозитория.

Комментарии

Если данное свойство установлено, то диалог будет выдан для сохранения указанного объекта с новым идентификатором и наименованием. При инициализации диалога идентификатор и наименование будут сгенерированы автоматически. Также в диалоге можно выбрать существующий объект, который будет перезаписан.

Пример

Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с наименованием «Button1» и компонента MetabaseSaveDialog с наименованием «MetabaseSaveDialog1». В репозитории имеется объект с идентификатором «UserObject».

    Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
    Var
        MB: IMetabase;
        MObjDesc: IMetabaseObjectDescriptor;
        ClassFilter: IMetabaseDialogClassFilter;
        Filters: IMetabaseDialogFilters;
        i: Integer;
    Begin
        MB := MetabaseClass.Active;
        //Объект, который необходимо сохранить
        //с новым идентификатором и наименованием
        MObjDesc := MB.ItemById("UserObject");
        //Фильтр для возможности сохранения объекта в существующий объект
        //такого же класса
        ClassFilter := New MetabaseDialogClassFilter.Create;
        ClassFilter.ObjectClass := MetabaseClass.GetMetabaseObjectClass(MObjDesc.ClassId);
        Filters := MetabaseSaveDialog1.Filters;
        i := Filters.AddFilter(ClassFilter);
        MetabaseSaveDialog1.FilterIndex := i;
        //Указание сохраняемого объекта
        MetabaseSaveDialog1.SaveObject := MObjDesc;
        MetabaseSaveDialog1.Execute(Self);
    End Sub Button1OnClick;

После выполнения примера при нажатии на кнопку будет выведен диалог сохранения указанного объекта с новым идентификатором и наименованием. В диалоге будет возможен выбор существующих объектов такого же класса.

См. также:

IMetabaseSaveDialog