GetAllowed(DesiredAccess: Integer; Attribute: IMetaAttribute; Selection: IDimSelection);
DesiredAccess. Значение, определяющие действия над элементами сегмента, возможность произвести которые необходимо проверить.
Attribute. Атрибут, определяющий измерение.
Selection. Отметка элементов измерения.
Метод GetAllowed позволяет получить отметку элементов измерения, доступных для совершения указанных действий текущим пользователем.
Для выполнения примера предполагается наличие в репозитории базы данных временных рядов с идентификатором «OBJ_RUBRICATOR», в которой должны быть определены сегменты и должен присутствовать атрибут показателя с идентификатором «COUNTRY», являющийся ссылкой на справочник.
Sub Main;
Var
mb: IMetabase;
rubInst: IRubricatorInstance;
Rub: IRubricator;
Segs: IRubricatorSegments;
Attr: IMetaAttribute;
Dict: IMetabaseObject;
DI: IDimInstance;
Sel: IDimSelection;
Begin
mb := MetabaseClass.Active;
Rub := mb.ItemById("OBJ_RUBRICATOR").Bind As IRubricator;
rubInst := (Rub As IMetabaseObjectDescriptor).Open(Null) As IRubricatorInstance;
Segs := rubInst.Segments;
Attr := Rub.Facts.Attributes.FindById("COUNTRY");
Dict := Attr.ValuesObject.Bind;
DI := Dict.Open(Null) As IDimInstance;
Sel := DI.CreateSelection;
Sel.SelectAll;
Segs.GetAllowed(MetabaseObjectPredefinedRights.Read, Attr, Sel);
Debug.WriteLine(Sel.ToString);
End Sub Main;
После выполнения примера в окно консоли будут выведена отметка элементов, доступных для чтения текущему пользователю.
См. также: