Не применяется созданный RLS

1. ciddex 30.03.22 20:21 Сейчас в теме
Задача: Добавить в Розницу 2.3 ограничения на уровне записей по Хозяйственным операциям (Как в УТ11 или КА2)
Версия БСП: 3.1.5.306

Все вроде сделал, но не работает ограничение.

В общем модуле УправлениеДоступомРТ добавил
Процедура ПриЗаполненииВидовДоступа(ВидыДоступа) Экспорт
	ВидДоступа = ВидыДоступа.Добавить();
	ВидДоступа.Имя = "ХозяйственныеОперации";
	ВидДоступа.Представление = НСтр("ru = 'Хозяйственные операции'");
	ВидДоступа.ТипЗначений   = Тип("ПеречислениеСсылка.ХозяйственныеОперации");
КонецПроцедуры


Процедура ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(Описание) Экспорт
        Описание = Описание + 
	"
	|Документ.ПриходныйКассовыйОрдер.Чтение.ХозяйственныеОперации 
	|Документ.РасходныйКассовыйОрдер.Чтение.ХозяйственныеОперации
	|Документ.ПриходныйКассовыйОрдер.Чтение.Организации
	|";
	
	ИнтеграцияГИСМРТ.ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(Описание);

КонецПроцедуры

[1C-CODE]

И Ограничение досутпа
[1C-CODE]
#ПоЗначениям("Документ.ПриходныйКассовыйОрдер","Чтение","",
"ХозяйственныеОперации","ХозяйственнаяОперация", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","" )
Показать


Никаких ошибок не выдает, но при открытии Финансы -- Приходные кассовые ордера. В списке остаются все ПКО (оплаты поставщикам, прочие расходы и т.д).
Сначала выдавало ошибку, что ВидДоступа не найден, но после запуска 1с с параметрами обновления, ошибка пропала и в настройках ограничения появился пункт ХозяйственныеОперации. Но не работает
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
14. laperuz 47 31.03.22 11:58 Сейчас в теме
(13)Ну вообще работает, если убрать роль "Чтение основания выдачи ДС"
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
6. laperuz 47 31.03.22 03:47 Сейчас в теме
(1)Какой режим установлен? Стандартный или производительный?
9. polax 31.03.22 10:24 Сейчас в теме
(1) В Определяемые типы ЗначениеДоступа и ЗначениеДоступаОбъект добавил ПеречислениеСсылка.ХозяйственныеОперации?
2. fixin 4273 30.03.22 21:36 Сейчас в теме
Поищи, какие другие роли дают доступ к этому объекту.
Т.е. если ты свою роль выключишь, увидишь все равно все документы, наверное.
3. ciddex 30.03.22 21:53 Сейчас в теме
(2) Нет, я стандартную роль чтения и просмотр кассовых документов отключил. Без этой роли нет доступа к докам этим и к пунктам ПКО и РКО
4. fixin 4273 30.03.22 22:16 Сейчас в теме
(3) прогони мою шнягу (в приложении) на нужный тебе объект, обязательно поле Ссылка укажи
Прикрепленные файлы:
ПроверкаПравДоступаПользователя.epf
5. ciddex 30.03.22 23:29 Сейчас в теме
(4) Вот что выдало. RLS написано, но почему-то не работает
Прикрепленные файлы:
7. rule_2 51 31.03.22 04:15 Сейчас в теме
Надо читать ИТС для БСП 3.1.5, Глава 3. Настройка и использование подсистем при разработке конфигурации - Управление доступом
- Подключение объектов к подсистеме

Объект свой добавил в УправлениеДоступомПереопределяемый.ПриЗаполненииСписковСОграничениемДоступа() ? Если его там нет, конечно.

Включен стандартный или производительный вариант работы?

Шаблон ограничения должен быть таким:


#Если &ОграничениеДоступаНаУровнеЗаписейУниверсально #Тогда
<шаблон ограничения с параметрами для производительного варианта>
#Иначе
<шаблон ограничения с параметрами для стандартного варианта>
#КонецЕсли


Шаблон ПоЗначениям используется только когда ОграничениеДоступаНаУровнеЗаписейУниверсально = ЛОЖЬ, это значение можно посмотреть в константе (она примерно так же называется).

В если используется производительный вариант, ограничение описывается в модуле менеджера каждого объекта, либо в общем модуле УправлениеДоступомПереопределяемый, это зависит от того, что указано в ПриЗаполненииСписковСОграничениемДоступа()

После того, как меняешь роль, нужно запускать в режиме обновления ИБ, а после этого (на всякий случай) можно запустить типовую обработку УправлениеДоступом из состава БСП, в ней обновить доступ на конкретный твой объект.
11. ciddex 31.03.22 10:48 Сейчас в теме
(7) Вариант работы - Стандартный.

#Если &ОграничениеДоступаНаУровнеЗаписейУниверсально #Тогда
<шаблон ограничения с параметрами для производительного варианта>
#Иначе
<шаблон ограничения с параметрами для стандартного варианта>
#КонецЕсли

Такой шаблон тоже не отрабатывает.

В в УправлениеДоступомПереопределяемый.ПриЗаполненииСписковСОграничениемДоступа() вызывается функция в которую я и добавил (скрин 1) в модуле УправлениеДоступомРт (скрин 2).

В режиме обновления запускал и не раз. В ограничениях вид доступа добавляется как нужно с типом правильным, но вот что я его выбираю, что нет, толку 0. Ничего не происходит
Прикрепленные файлы:
12. laperuz 47 31.03.22 10:56 Сейчас в теме
(11)Выложите cf, посмотрим, общими усилиями разберемся)
13. ciddex 31.03.22 11:14 Сейчас в теме
14. laperuz 47 31.03.22 11:58 Сейчас в теме
(13)Ну вообще работает, если убрать роль "Чтение основания выдачи ДС"
15. ciddex 31.03.22 12:07 Сейчас в теме
(14) Спасибо вам, добрый человек. Вы правы, убрал эту роль, заработало. Но вроде как она не дает право чтения документов ПКО и РКО, я думал что-то упустил в коде, уже третий день голову ломал.. копаясь в разных шаблонах
16. laperuz 47 31.03.22 12:10 Сейчас в теме
(15) На РКО не дает, а на ПКО дает)
8. fixin 4273 31.03.22 08:53 Сейчас в теме
(5) ну вот эта роль и дает доступ ко всем документам
10. ciddex 31.03.22 10:39 Сейчас в теме
(8) Эта и есть та роль, к которому применяю ограничение, но не срабатывает
17. fixin 4273 31.03.22 15:15 Сейчас в теме
(10) есть длинный способ - найти инструмент, который показывает текст RLS для его отладки, тогда можно понять. Ну или думать.
Оставьте свое сообщение

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