Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Доступность одного реквизита

Доступность одного реквизита
Я
   palima
 
19.12.18 - 14:26
Всем привет, помогите пожалуйста понять логику работы ролей, чтобы научиться решать следующую проблему: доступность реквизитов формы элемента и списка справочника ограничена ролью, в которой весь справочник помечен только на чтение. Но один из реквизитов должен быть доступен для редактирования для всех. Конструкция ЭлементыФормы.СправочникСписок.Колонки.МойРеквизит.Доступность = Истина;
в данном случае не работает.
Растолкуйте пожалуйста как нужно делать и как не делать когда возникают такие вопросы, буду очень благодарна. Спасибо.
 
 
   spiller26
 
1 - 19.12.18 - 14:58
(0) Роль не ограничивает элементы формы, она может только ограничить к реквизитам объекта доступ.
Смотрите что происходит при открытии формы и в какой момент происходит переход доступности из "Истина" в "Ложь".
   Fedor-1971
 
2 - 19.12.18 - 15:35
(1) Обманщик, если роль только чтение - то и форма получит те же ограничения

(0) Суть следующая:
Раскрываем права роли на этот справочник,
выставляем право Редактирование для всего (!!!) справочника
выделяем Реквизиты - ставим право "чтение" и снимаем "редактирование"
дальше находим нужный реквизит и даём ему право "Редактирование"

Придёт к тебе счастье - пользователь с такой ролью будет иметь возможность изменить только один (или сколько нужно) реквизит
   Fedor-1971
 
3 - 19.12.18 - 15:59
2+ Учитывай ещё один момент права по ролям определяются по ИЛИ!
Т.е. ограничить доступ к реквизиту пользователю с полными правами на справочник другой ролью (с ограничением доступа) уже не получится, нужно будет создать отдельную роль, а вот выдать дополнительную к Просмотру, вполне себе можно

Ну, с моментом попытки записи в модуле объекта в недоступные поля пользователем с ограничением доступа методом УстановитьПривилегированныйРежим(Истина) как-нить разберёшься самостоятельно
   palima
 
4 - 19.12.18 - 16:21
(3) к сожалению после миллиона попыток так и не получилось реализовать 2... Поэтому пришлось для всей просто открыть весь справочник на редактирование а в форме в ПриОткрытии() для этой же роли позакрывать доступ всем реквизитам кроме одного.. такой вот нехороший способ пока не придет озарение...
   Fedor-1971
 
5 - 19.12.18 - 16:41
(4) Проведи чистый эксперимент:
Сначала отбираешь все права на данный справочник, а потом выдаёшь роль, настроенную так, как я написал.
Дальше пытаешься сохраниться, если получаешь ошибку прав доступа, значит в модуле есть процедуры передЗаписью или ПроверкЗаполнения, в которых есть программное заполнение реквизитов, недоступных данной роли, решается через УстановитьПривилегированныйРежим(Истина)

Собственно всё

Список тем форума
Рекламное место пустует  Рекламное место пустует
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс, 1996 г.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует