IsContainer: Boolean;
IsContainer: System.Boolean;
Свойство IsContainer определяет разрешение на добавление дочерних объектов для пользовательского класса.
Возможные значения:
True. Пользовательский класс является объектом-контейнером, внутри которого можно создавать любые объекты репозитория. Также внутри такого объекта действует собственное пространство идентификаторов;
False. Пользовательский класс не является объектом-контейнером.
Для выполнения примера добавьте ссылку на системную сборку Metabase.
Sub UserProc;
Var
Mb: IMetabase;
ClassNew: IMetabaseCustomClass;
CustomClass: IMetabaseCustomExtender;
Type: MetabaseSpecialObject;
Begin
Mb := Metabaseclass.Active;
Type := MetabaseSpecialObject.CustomExtender;
CustomClass := Mb.SpecialObject(Type).Edit As IMetabaseCustomExtender;
ClassNew := CustomClass.Classes.Add;
ClassNew.Name := "Container";
ClassNew.Description := "Класс-контейнер";
ClassNew.Data := "Пользовательский текст произвольного формата";
ClassNew.IsContainer := True;
(CustomClass As IMetabaseObject).Save;
End Sub UserProc;
Imports Prognoz.Platform.Interop.Metabase;
…
Public Shared Sub Main(Params: StartParams);
Var
Mb: IMetabase;
ClassNew: IMetabaseCustomClass;
CustomClass: IMetabaseCustomExtender;
Type: MetabaseSpecialObject;
Begin
Mb := Params.Metabase;
Type := MetabaseSpecialObject.msoCustomExtender;
CustomClass := Mb.SpecialObject[Type].Edit() As IMetabaseCustomExtender;
ClassNew := CustomClass.Classes.Add();
ClassNew.Name := "Container";
ClassNew.Description := "Класс-контейнер";
ClassNew.Data := "Пользовательский текст произвольного формата";
ClassNew.IsContainer := True;
(CustomClass As IMetabaseObject).Save();
End Sub;
После выполнения примера будет создан пользовательский класс «Container» с разрешением на добавление дочерних объектов.
См. также: