IRubricatorSegmentsSet.GetSubjectAllowed

Синтаксис

GetSubjectAllowed(Subject: ISecuritySubject; DesiredAccess: Integer; Attribute: IMetaAttribute; Selection: IDimSelection);

Параметры

Subject. Субъект безопасности.

DesiredAccess. Значение, определяющие действия над элементами сегмента, возможность произвести которые необходимо проверить. Для указания значения маски необходимо использовать значения перечислимого типа MetabaseObjectPredefinedRights в комбинации с CubeSpecificRights. При раздаче прав на сегменты используются соответствующие операции Read и Write.

Attribute. Атрибут, определяющий измерение.

Selection. Отметка элементов измерения.

Описание

Метод GetSubjectAllowed позволяет получить отметку элементов измерения, доступных для совершения указанных действий указанным пользователем.

Пример

Для выполнения примера предполагается наличие в репозитории базы данных временных рядов с идентификатором «OBJ_RUBRICATOR», в которой должны быть определены сегменты и должен присутствовать атрибут показателя с идентификатором «COUNTRY», являющийся ссылкой на справочник.

Sub Main;

Var

mb: IMetabase;

rubInst: IRubricatorInstance;

Rub: IRubricator;

Segs: IRubricatorSegments;

Attr: IMetaAttribute;

Dict: IMetabaseObject;

DI: IDimInstance;

Sel: IDimSelection;

mbSec: IMetabaseSecurity;

User: IMetabaseUser;

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;

mbSec := MB.Security;

User := mbSec.ResolveName("ADMIN") As IMetabaseUser;

Segs.GetSubjectAllowed(User, MetabaseObjectPredefinedRights.Read, Attr, Sel);

Debug.WriteLine(Sel.ToString);

End Sub Main;

После выполнения примера в окно консоли будут выведена отметка элементов, доступных для чтения пользователю «ADMIN».

См. также:

IRubricatorSegmentsSet