UsersSetRoleControlRight

<< Click to Display Table of Contents >>

Navigation:  Проект в MasterSCADA 4D > Дерево библиотек > Библиотека BaseObjects > BaseObjects.ФБ.Users >

UsersSetRoleControlRight

Функциональный блок UsersSetRoleControlRight служит для изменения прав доступа к элементу в режиме исполнения. Если используется для хранения настроек пользователей сетевая БД настроек, то изменения выполненные на одном узле буду доступны на всех остальных узлах, которые добавлены в проект. Если сетевая БД настроек не используется, то информация о правах хранится в локальном файле, который доступен только для текущего узла.  Таким образом, настройки выполненные при помощи данного ФБ будут применяться только для того узла, где они были выполнены.

Важно! Для возможности работы c ФБ UsersSetRoleControlRight  в исполнительную систему должна входить опция MSRT4D-Security. Данная опция включена в базовый функционал лицензии Enterprise.

Важно! Для работы данного функционального блока у авторизованного пользователя должно быть настроено право доступа Изменение пользователей

В результате работы функционального блока, если у права доступа Изменение пользователей установлен флаг Журнал, то сформируется сообщение, содержащее информацию как о новом значении, так и о предыдущем. Тип сообщения будет Действие пользователей.

Вид в дереве

Вид в редакторе FBD

UsersSetRoleControlRight

UsersSetRoleControlRight_1

Входы и выходы ФБ:

Название

Тип

Назначение

Входы

RoleName

STRING

Задается имя изменяемой роли

ObjectId

REF_TO

Задается ссылка на объект или экземпляр объекта. Можно, например, в программе ST, на данный вход подать строковую переменную, которая будет содержать полное имя объекта/экземпляра, права доступа к которому нужно изменить. Либо можно установить связь между входом ФБ и объектом/экземпляром, в этом случае на вход ФБ будет передаваться уникальный идентификатор.

WindowName

STRING

Задается имя окна, права доступа к которому нужно изменить, который содержится в объекте/экземпляре, который задан на входе ObjectId. Вход может быть не задан, если устанавливается право на объект.

Указывается полный путь к окну через точку, включая вложенные папки (если они есть).

ElementName

STRING

Задается имя элемента в окне. Если элемент в окне находится, например в контейнере или в панели, то имя элемента задается в иерархическом виде, например, Панель 1.Инкремент 1

Вход может быть не задан, если устанавливается право на объект или на окно.

RightName

STRING

Указывается программное имя права доступа или группы прав, которые нужно изменить. Значение чувствительно к регистру. Название должно начинаться с заглавной буквы строго так, как задано в конфигурации прав.

RightFlags

DINT

Задается битовая маска прав, где

первый бит отвечает за флаг Разрешить;

второй бит — флаг Запретить;

третий бит — флаг Подтверждение;

четвертый бит — флаг Журнал.

Таким образом, чтобы разрешить пользователю изменять например значение инкремента, и это действие зафиксировать в журнале нужно установить значение на входе ФБ 9, чтобы запретить действие 2.

Выходы

Error

STRING

Выдается текст ошибки, если изменения не были внесены.

Рекомендации по работе с ФБ

В панели свойств программы, в которой находится ФБ, в категории Задача рекомендуется устанавливать свойство Способ исполнения в состояние По вызову:

UsersGet_2

Как правило, изменения вносятся после нажатия на Кнопку. Для этого в ее событие Клик мыши добавляют действие Вызвать программу путем перетаскивания функционального блока на вход действия Программа.

Смотрите также: