Руководство разработчика

Функция ПОЛЬЗ_БЕЗОПАСНОСТЬ

Для работы требуется соединение с базой данных.

Функция ПОЛЬЗ_БЕЗОПАСНОСТЬ позволяет получить структуру безопасности для указанного пользователя.

ФУНКЦИЯ ЛОГИКА: ПОЛЬЗ_БЕЗОПАСНОСТЬ(СТРОКА: имя; 
                                   ЛОГИКА: только_группы; 
                                   ПЕРЕМ БЕЗОПАСНОСТЬ: безопасность)

Параметры

имя
Имя пользователя, для которого получается структура безопасности.
только_группы
Признак включения в структуру безопасности настроек безопасности пользователя. Если параметр равен НЕТ – функция получает комплексную структуру безопасности с учетом настроек пользователя и групп, к которым он принадлежит. Если параметр равен ДА – настройки безопасности пользователя не учитываются, структура безопасности формируется только из настроек его групп.
безопасность
Ссылка на переменную, которой будет присвоена полученная структура безопасности.

Возвращаемое значение

ДА – в случае успешного получения, НЕТ – в случае ошибки.

При формировании структуры безопасности приоритетность данных следующая: данные для пользователя (если они учитываются) –> данные для его основной группы –> данные для остальных групп, в которые входит пользователь. Конфликты разрешаются в пользу данных с более высоким приоритетом. Если, например, для пользователя в узле структуры записано значение "значение1", а для его основной группы "значение2", будет получено значение "значение1". При конфликте данных с одинаковым приоритетом (у неосновных групп) узел исключается из структуры. Например, пользователь входит в группу "Менеджеры" и в группу "Бухгалтеры". Для группы "Менеджеры" в узле записано значение ДА – для группы "Бухгалтеры" – НЕТ. Если для узла нет данных с более высоким приоритетом (у пользователя или основной группы) – узел не войдет в структуру безопасности.

Существует функция ТЕК_БЕЗОПАСНОСТЬ, которая позволяет получить комплексную структуру безопасности для текущего пользователя.

Обрабатывать результат можно с помощью функции ПОСЛ_ОШИБКА.


См. также: