IMetabase.GenerateId

Синтаксис

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

Параметры

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

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

Описание

Метод GenerateId генерирует уникальный идентификатор в рамках текущего репозитория.

Комментарии

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

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

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

Пример

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

Sub UserProc;
Var
    MB: IMetabase;
    s: String;
Begin
    MB := MetabaseClass.Active;
    s := MB.GenerateId("obj123");
End Sub UserProc;

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

См. также:

IMetabase