@fotonboxx

Как в 1С 8.3 органичить доступ на поле в форме ("Ограничение доступа к данным") по роли?

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

Нашел в свойствах документа, вкладка "Права" внизу "Ограничение доступа к данным".
Там нужно выбрать поле и написать некий запрос, вот вопрос в том что в нем писать?

Варианты вроде Если РольДоступна("МояРоль") Тогда или просто РольДоступна("МояРоль") не работают.

Заранее спасибо!
  • Вопрос задан
  • 11007 просмотров
Решения вопроса 1
@gunsmyth
"Ограничение доступа к данным" во вкладке "Права" - это реализация механизма RLS (ограничение прав на уровне записей). Там можно настроить доступ к отдельным элементам (записям) таблицы документа или справочника. Т.е. не к отдельным реквизитам документа, а к отдельным документам, отобранным в запросе.

Вам можно просто использовать РольДоступна("МояРоль") в событие формы "При открытии" для управления доступностью отдельных элементов формы, где "МояРоль" - это роль, которой вы хотите дать право доступа к реквизитам.
Процедура ПриОткрытии()
	
	ЭлементыФормы.Реквизит1.Доступность = РольДоступна("МояРоль");
	ЭлементыФормы.Реквизит2.Доступность = РольДоступна("МояРоль");
	////////
	ЭлементыФормы.Реквизит10.Доступность = РольДоступна("МояРоль");
	
КонецПроцедуры
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
nki
@nki
bezkart.ru готовая система лояльности
Запрос писать не обязательно. Для выбранной роли и поля установите галочки требуемых прав. Если вам нужно запретить редактирование, то достаточно поставить чтение и просмотр.
Ответ написан
Комментировать
@fotonboxx Автор вопроса
Константин Нагибович Константин Нагибович
Я вот про эту форму говорил:
i.piccy.info/i9/b4e82950df5aa93b1c4395dd10396c9d/1...
А есть какая-то еще? =)

gunsmyth gunsmyth
RLS буду стараться не использовать, чтобы не терять в производительности, ну и архитектурно это не очень правильно.

Вам можно просто использовать РольДоступна("МояРоль") в событие формы "При открытии" для управления доступностью отдельных элементов формы, где "МояРоль" - это роль, которой вы хотите дать право доступа к реквизитам.

Спасибо, очевидный способ =)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы