Mask: Integer;
Свойство Mask возвращает маску операции.
Маска операции соответствует тому действию, для которого была добавлена запись в протоколе доступа. Для проверки значения маски необходимо использовать значения перечислимого типа MetabaseObjectPredefinedRights. В этом перечислении содержатся основные и дополнительные операции, на которые можно раздавать права. Для определенных классов объектов доступны специфические операции. Для проверки специфических операций, в зависимости от класса объекта, можно использовать значения следующих перечислений:
CalculatedCubeSpecificRights - специфические операции, доступные для вычисляемых кубов;
CubeLoaderSpecificRights - специфические операции, доступные для загрузчика данных в куб;
CubeSpecificRights - специфические операции, доступные для различных видов кубов;
CustomObjectSpecificRights - специфические операции, доступные для объектов пользовательских классов;
DataBaseSpecificRights - специфические операции, доступные для объекта репозитория - База данных;
DictionarySpecificRights - специфические операции, доступные для объектов репозитория - Справочник НСИ и Составной справочник НСИ;
MDCalcSpecificRights - специфические операции, доступные для объекта репозитория - Многомерный расчет на сервере БД;
ProblemSpecificRights - специфические операции, доступные для объекта контейнера моделирования - Задача моделирования;
ProcedureSpecificRights - специфические операции, доступные для объекта репозитория - Процедура;
TableSpecificRights - специфические операции, доступные для следующих объектов репозитория - Таблица, Представление, Журнал, Присоединенная таблица;
ValidationSpecificRights - специфические операции, доступные для объекта репозитория - Правило валидации и Группа валидаций;
Основные, дополнительные и специфические операции, доступные для определенных типов объектов, представлены в разделе Типы событий.
Для разбора значения маски необходимо реализовать пользовательскую функцию, которая позволит сопоставить отдельные биты маски соответствующим значениям перечислений. Пример работы с маской доступа представлен в разделе Примеры: Работа с маской доступа.
Sub Main;
Var
MB: IMetabase;
MS: IMetabaseSecurity;
AL: IAuditLog;
ALogon: IAuditLogons;
Operat: IAuditOperations;
i: Integer;
Begin
MB:=MetabaseClass.Active;
MS:=MB.Security;
Al:=MS.OpenAuditLog;
ALogon:= AL.OpenLogons(False);
ALogon.Next;
Operat:=Al.OpenOperations(ALogon.Session);
i:=Operat.Mask;
End Sub Main;
После выполнения примера в переменной «i» будет содержаться маска последней операции.
См. также: