Перейти к основному содержимому

{ИмяКлючаДоступа}

{ИмяРазработчика}::{ИмяПроекта}::{ИмяПодсистемы}::{ИмяКлючаДоступа} Тип-одиночка Доступность: Сервер

Содержит методы для работы с пользовательским ключем доступа.

Сравнение ссылочное

Иерархия типа

Базовые типы: Объект, Одиночка, Стд::КонтрольДоступа::КлючДоступа


Методы

ПересчитатьКлючи

Версия 8.0 и выше

Доступность: Сервер

ПересчитатьКлючи(
Пользователи: ЧитаемыйМассив<Пользователи.Ссылка>? = Неопределено,
<Параметр1>: <ТипПараметра1>,
....<ПараметрN>: <ТипПараметраN>)
Вызов возможен только с именованными параметрами.

Пересчитывает ключи доступа типа ИмяКлючаДоступа.Объект, значения параметров которых совпадают со значениями параметров, переданных в метод, для пользователей Пользователи. Если Пользователи = Undefined - пересчитывает для всех пользователей. В качестве параметров в метод могут быть переданы любые параметры, содержащиеся в ИмяКлючаДоступа.Объект, кроме параметров, являющихся множественными реквизитами. Все параметры передаются в именованном формате.


ПроверитьНаличиеКлючейДоступа

Версия 8.0 и выше

Доступность: Сервер

ПроверитьНаличиеКлючейДоступа(
Ключи: ЧитаемыйМассив<{ИмяКлючаДоступа}.Объект>,
Пользователи: ЧитаемыйМассив<Пользователи.Ссылка>
): ЧитаемоеСоответствие<{ИмяКлючаДоступа}.Объект,ЧитаемаяКоллекция<Пользователи.Ссылка>
Обработчик, предназначенный для проверки наличия у пользователей ключей доступа типа ИмяКлючаДоступа.Объект.

Примеры

Пусть в команде появилась новая роль - аналитик. Аналитики должны иметь доступ к отчетам. Чтобы выдать им нужные права, создадим ключ доступа КлючДоступаДляАналитика. Всем пользователям-аналитикам добавим утверждение "Роль" - "Аналитик". Тогда обработчик ПроверитьНаличиеКлючейДоступа будет выглядеть следующим образом.

@Обработчик
метод ПроверитьНаличиеКлючейДоступа(Ключи: ЧитаемыйМассив<КлючДоступаДляАналитика.Объект>,
ПользователиДляПроверки: ЧитаемыйМассив<Пользователи.Ссылка>): Соответствие<КлючДоступаДляАналитика.Объект, Массив<Пользователи.Ссылка>>

пер Результат = <КлючДоступаДляАналитика.Объект, Массив<Пользователи.Ссылка>>{:}

для Ключ из Ключи
пер ПользователиСКлючом = <Пользователи.Ссылка>[]
для Пользователь из ПользователиДляПроверки
если Пользователь.ЗагрузитьОбъект().Утверждения["Роль"] == "Аналитик"
ПользователиСКлючом.Добавить(Пользователь)
;
;
если не ПользователиСКлючом.Пусто()
Результат.Вставить(Ключ, ПользователиСКлючом)
;
;

возврат Результат
;

Список унаследованных методов

КлючДоступа

ПересчитатьКлючи

Объект

ВСтроку, ПолучитьТип, Представление