Имя: Пароль:
1C
1С v8
Регистрация пользователя
0 Reraru
 
04.02.20
21:52
Имеются различные справочники и пользователи. Пользователь может зарегистрироваться. Под Администратором всё проходит гладко и успешно, а под Пользователь Информационной базы выдаёт ошибки. Я запутался в правах Пользователя.
https://sun9-25.userapi.com/c204720/v204720049/59015/57H_xVprO6M.jpg
Эта ошибка возникает после нажатия на кнопку регистрация. Пользователь и соответствующая Роль у пользователь создана.
После регистрации в справочник пользователи записывается вся информация которую пользователь указывал в момент регистрации.
При этом зарегистрированный новый пользователь попадает на страницу авторизации  и пройдя авторизацию на страницу Главная.
С авторизацией проблем нет)
<code>

&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)    
    НовыйПользователь = ПользователиИнформационнойБазы.СоздатьПользователя();
    НовыйПользователь.Имя = Объект.Почта;
    
    // Производится проверка, если пользователя не найдено в базе, он регистрирует,
    //в противном случае выводится сообщение, что данный пользователь с такими данными зарегистирован
    Если ПользователиИнформационнойБазы.НайтиПоИмени(НовыйПользователь.Имя) = Неопределено Тогда
        НовыйПользователь.Имя = Объект.Почта;
        НовыйПользователь.ПолноеИмя = Объект.Наименование;
        НовыйПользователь.Пароль = Объект.Пароль;
        НовыйПользователь.Роли.Добавить(Метаданные.Роли.Пользователь);
        НовыйПользователь.ПоказыватьВСпискеВыбора = Истина;
        НовыйПользователь.Язык = Метаданные.Языки.Русский;
        Объект.Роль = Перечисления.Роль.Пользователь;
        НовыйПользователь.Записать();

        Сообщить("Новый пользователь создан!");
    Иначе
        Сообщить("Пользователь с такими данными уже зарегистрирован!");
    КонецЕсли;
КонецПроцедуры


</code>
1 palsergeich
 
04.02.20
21:53
УстановитьПривелегированныйРежим(Истина) в начале процедуры поставь
2 palsergeich
 
04.02.20
21:54
Это если леняво клубок прав распутывать)
3 palsergeich
 
04.02.20
21:55
(2) А часто это и не нужно и просто надо выполнить этот код с правами императора)
4 Reraru
 
04.02.20
21:57
администратор уже есть.
Возможно стоит показать картинкой права пользователя?
5 Reraru
 
04.02.20
22:00
(3) я так пробовал, но в данной ситуации поставить пользователю права админа мне не подходит
https://sun9-11.userapi.com/c204720/v204720049/590bf/zOTUsrZR_cc.jpg
Используются общие формы, у которых право просмотра доступно для пользователя.
Для имеющихся справочников стоят одинаковые права: все права
6 Reraru
 
04.02.20
22:08
(1) спасибо вам, помогло. Правда правильнее УстановитьПривилегированныйРежим(Истина), так как 1с не поняла превелегию)
7 palsergeich
 
04.02.20
22:23
(6) Я набирал сразу в браузер, думаю орфографические то ошибки поправить то затруднения не выйдет)
Закон Брукера: Даже маленькая практика стоит большой теории.