FindByKind(kKind: MetaAttributeKind; [StartIndex: Integer = 0]): IMetaDataMember;
kKind - тип атрибута.
StartIndex - начальный индекс. Необязательный параметр, значение по умолчанию «0».
Метод FindByKind осуществляет поиск записи в коллекции по типу атрибута.
Для выполнения примера предполагается наличие базы данных временных рядов с идентификатором OBJ_FC. В данной базе присутствует показатель с ключом «94000».
Добавьте ссылки на системные сборки Metabase, Rds, Cubes.
Sub UserProc;
Var
MB: IMetabase;
RubrIn: IRubricatorInstance;
FactD: IRubricatorFactData;
RubRev: IRubricatorRevision;
Members: IMetaDataMembers;
MemberRecord: IMetaDataMemberRecord;
Begin
MB := MetabaseClass.Active;
RubrIn := MB.ItemById("OBJ_FC").Open(Null) As IRubricatorInstance;
RubRev := RubrIn.OpenRevision("Test_Revision");
FactD := RubrIn.GetFactData(94000, DictionaryGetDataOptions.EditExisting);
MemberRecord := FactD.Record;
If MemberRecord.IsEdited Then
Members := MemberRecord.Members;
Members.FindByKind(MetaAttributeKind.CalendarLevel).Value := DimCalendarLevel.Year;
FactD.SaveAndRevise(SaveRubricatorDataOptions.NoRevise);
End If;
End Sub UserProc;
После выполнения примера для показателя с ключом «94000» будет изменена календарная динамика. Атрибут, определяющий единицы измерения, будет получен по типу.
См. также: