ItemById(Id: String): IMetabaseObjectDescriptor;
Id. Идентификатор объекта репозитория.
Свойство ItemById возвращает описание объекта репозитория с указанным идентификатором.
В рамках репозитория все идентификаторы объектов уникальны. Объекты-контейнеры (репозиторий НСИ, контейнер моделирования, веб-приложение) имеют собственное пространство идентификаторов, поэтому в них могут быть созданы объекты с такими же идентификаторами, как и в репозитории.
Свойство ItemById вернёт описание объекта, если его идентификатор будет найден среди дерева объектов репозитория. Содержимое объектов-контейнеров при этом не учитываются. Для работы с объектами внутри объектов-контейнеров используйте свойство IMetabase.ItemByIdNamespace.
Свойство возвращает значение Null, если объект с указанным идентификатором не найден в дереве объектов репозитория.
Для выполнения примера добавьте ссылку на системную сборку Metabase.
Sub UserProc;
Var
MB: IMetabase;
MDesc: IMetabaseObjectDescriptor;
Begin
MB := MetabaseClass.Active;
MDesc := MB.ItemById("TestObj");
If MDesc <> Null Then
Debug.WriteLine(MDesc.Name);
Else
Debug.WriteLine("Объект отсутствует среди объектов репозитория. Возможно, он существует в одном из объектов - контейнеров.");
End If;
End Sub UserProc;
После выполнения примера, если в репозитории существует объект с идентификатором «TestObj», то в консоль среды разработки будет выведено его наименование.
См. также: