IMetabase.GenerateId

Синтаксис

GenerateId(Value: String; [Namespace_: Integer = 0]): String;

Параметры

Value - желаемый идентификатор.

Namespace_ - ключ объекта-контейнера, в рамках пространства имен которого, генерируется идентификатор.

Описание

Метод GenerateId генерирует уникальный идентификатор в рамках текущей базы метаданных (репозитория). Входной параметр Value является желаемым идентификатором.

В случае, если в текущем репозитории нет объекта, идентификатор которого бы совпадал со значением параметра Value, то результатом работы метода будет значение, в точности совпадающее со значением входного параметра Value.

Если объект уже существует, то результат будет содержать измененное значение параметра Value, в частности: в конец исходной строки будет добавляться число (от 1 до 28726) до тех пор, пока результат не станет уникальным. В случае, если такой идентификатор получить не удалось, то метод вернет пустую строку.

Значение параметра Value Существующие в репозитории идентификатор(ы) Результат выполнения метода
Ident - Ident
Ident Ident Ident1
Ident Ident
Ident1
Ident2
Ident11

Пример

Sub Main;

Var

MB: IMetabase;

s: String;

Begin

MB := MetabaseClass.Active;

s := MB.GenerateId("obj123");

End Sub Main;

После выполнения примера в переменной "s" будет храниться сгенерированный идентификатор.

См. также:

IMetabase