Ограничение прав пользователей

1. 5225688vd 20.09.22 09:10 Сейчас в теме
Коллеги, добрый день, подскажите пожалуйста, есть задача в УТ 10.3.73.1, необходимо чтобы только определенные пользователи и по определенному складу могли видеть документы Поступление товаров и услуг, как это правильно реализовать?
По теме из базы знаний
Найденные решения
11. 5225688vd 20.09.22 12:59 Сейчас в теме
Решил вот так:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Пользователи.Наименование КАК Пользователь
|ИЗ
| Справочник.Пользователи КАК Пользователи
|ГДЕ
| Пользователи.Наименование ПОДОБНО ""%Иванов%"";


РезультатЗапроса = Запрос.Выполнить();

Выборка = РезультатЗапроса.Выбрать();

Пока Выборка.Следующий() Цикл
Склад = Справочники.Склады.НайтиПоНаименованию("Бухгалтерский");

Если Выборка.Пользователь <> СокрЛП(ПользователиКлиентСервер.ТекущийПользователь())Тогда
ЭтаФорма.ДокументСписок.Отбор.СкладОрдер.ВидСравнения = ВидСравнения.НеРавно;
ЭтаФорма.ДокументСписок.Отбор.СкладОрдер.Значение = Склад;
ЭтаФорма.ДокументСписок.Отбор.СкладОрдер.Использование = Истина;

ЭлементыФормы.ДокументСписок.НастройкаОтбора.СкладОрдер.Доступность = Ложь;
КонецЕсли;
КонецЦикла;
Все работает
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. RustamZz 20.09.22 10:14 Сейчас в теме
3. 5225688vd 20.09.22 10:27 Сейчас в теме
4. 5225688vd 20.09.22 10:33 Сейчас в теме
(3)Не правильно задал вопрос, как его настроить?
6. RustamZz 20.09.22 10:37 Сейчас в теме
(4)
Прикрепленные файлы:
5. sergling 34 20.09.22 10:36 Сейчас в теме
Вообще эксперты поспорят на счет правильности применения RLS в высоконагруженных системах, т.е. это из разряда создания кнопки "сделать правильно". Можно попробовать ограничение на уровне записей (RLS), но вероятно Вам нужно что-то проще построить. Может достаточно не запретить видеть ВЕЗДЕ, а просто ограничить редактирование - там как бы проще логика была бы.
7. 5225688vd 20.09.22 10:47 Сейчас в теме
(5)Подскажите пожалуйста как бы вы поступили в моем случае, я просто ни разу не настраивал права пользователей, а задача срочная?
8. Sp1k3 12 20.09.22 10:56 Сейчас в теме
(7) поразбирайся с rls, это не так сложно как кажется
9. sergling 34 20.09.22 11:00 Сейчас в теме
(7) не совсем понятна Ваша задача - вот Иванов - он определенный пользователь и какие склады ему доступны? И что значит не видел? В списке основном или во всех остальных отчетах где может быть ссылка на этот документа, а что делать с кол-вом товаров в отчете по движению, которое приходуется этим документом и видно в группировке по партии например?
10. 5225688vd 20.09.22 11:20 Сейчас в теме
(9)Вот есть Иванов, ему доступны все склады кроме одного, т.е. он открывает форму списка документа Поступление товаров и услуг и видит все документы по всем складам кроме одного склада, видимо пользователи работают только с документами и отчетами не пользуются.
11. 5225688vd 20.09.22 12:59 Сейчас в теме
Решил вот так:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Пользователи.Наименование КАК Пользователь
|ИЗ
| Справочник.Пользователи КАК Пользователи
|ГДЕ
| Пользователи.Наименование ПОДОБНО ""%Иванов%"";


РезультатЗапроса = Запрос.Выполнить();

Выборка = РезультатЗапроса.Выбрать();

Пока Выборка.Следующий() Цикл
Склад = Справочники.Склады.НайтиПоНаименованию("Бухгалтерский");

Если Выборка.Пользователь <> СокрЛП(ПользователиКлиентСервер.ТекущийПользователь())Тогда
ЭтаФорма.ДокументСписок.Отбор.СкладОрдер.ВидСравнения = ВидСравнения.НеРавно;
ЭтаФорма.ДокументСписок.Отбор.СкладОрдер.Значение = Склад;
ЭтаФорма.ДокументСписок.Отбор.СкладОрдер.Использование = Истина;

ЭлементыФормы.ДокументСписок.НастройкаОтбора.СкладОрдер.Доступность = Ложь;
КонецЕсли;
КонецЦикла;
Все работает
12. RustamZz 20.09.22 13:18 Сейчас в теме
13. 5225688vd 21.09.22 07:24 Сейчас в теме
(12)Да, я понимаю что откроют, самое главное что просьба выполнена.
14. Sp1k3 12 21.09.22 08:22 Сейчас в теме
(11) для всех Ивановых нужно ограничивать?

можно и без запроса обойтись
Если ПользователиКлиентСервер.ТекущийПользователь() <> Справочники.Пользователи.НайтиПоНаименованию(ФИОПользователя) Тогда
...
КонецЕсли;
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот