BitCount: Integer;
Свойство BitCount возвращает количество субъектов безопасности, для которых могут быть определены права.
Для выполнения примера в схеме должен существовать репозиторий НСИ с идентификатором «RDS» и справочник НСИ с идентификатором «Dict_1».
Sub UserProc;
Var
MB : IMetabase;
Object : IMetabaseObjectDescriptor;
AOS : IAccessObjectSecurity;
Iterator : IAccessElementsIterator;
element : IAccessElement;
AttributeValue : IAccessAttributeValue;
i : Integer;
Begin
MB := MetabaseClass.Active;
Object := MB.ItemByIdNamespace("Dict_1", MB.ItemById("RDS").Key);
AOS := Object.GetSecurity;
Iterator := AOS.GetElements;
Iterator.Next;
element := Iterator.Current;
AttributeValue := element.AttributeAccess(AccessElementAttributes.Read);
Debug.WriteLine("кол-во субъектов безопасности " + AttributeValue.BitCount.ToString);
For i:=0 To AttributeValue.BitCount Do
Debug.WriteLine(AttributeValue.Value(i));
End For;
End Sub Button4OnClick;
После выполнения примера в окно консоли будет выведено количество возможных субъектов доступа, а также значение права на чтение первого элемента справочника НСИ для каждого субъекта.
См. также: