IMetaAttributes.BuildAttributesByFields

Синтаксис

BuildAttributesByFields;

Описание

Метод BuildAttributesByFields создает определения атрибутов по полям таблицы.

Пример

Для выполнения примера предполагается наличие репозитория НСИ с идентификатором «RDS_REPO», базы данных с идентификатором «DB» и таблицы с идентификатором «OBJ_TABLE».

Sub Main;

Var

Mb: Imetabase;

ObjMb: IMetabaseObject;

RDS: IMetabaseObjectDescriptor;

Dict: IMetaDictionary;

CrInfo: IMetabaseObjectCreateInfo;

Des: IMetabaseObjectDescriptor;

Attributes: IMetaAttributes;

Table: ITable;

Begin

Mb := MetabaseClass.Active;

CrInfo := Mb.CreateCreateInfo;

CrInfo.Id := "DICT_AT";

CrInfo.Name := "Dict_At";

CrInfo.ClassId := MetabaseObjectClass.KE_CLASS_METADICTIONARY;

RDS := Mb.ItemById("RDS_REPO");

CrInfo.Parent := RDS;

Des := Mb.CreateObject(CrInfo);

ObjMb := Des.Edit;

Dict := ObjMb.GetExtensionDispatch As IMetaDictionary;

Dict.Database := Mb.ItemById("DB").Bind As IDatabase;

Attributes := Dict.Attributes;

Table := Mb.ItemById("OBJ_TABLE").Bind As ITable;

Attributes.AttachTable(Table, False);

Attributes.BuildAttributesByFields;

ObjMb.Save;

End Sub Main;

После выполнения примера в репозитории НСИ будет создан объект (идентификатор «DICT_AT»), предназначенный для хранения системной информации. Для объекта будет установлена таблица для хранения значений («OBJ_TABLE»). Определения атрибутов будут созданы по полям данной таблицы.

См. также:

IMetaAttributes