Доработка РЛС в УНФ

1. Zombi 6 02.04.24 10:54 Сейчас в теме
Столкнулся с проблемой: В УНФ не работает РЛС по подразделению. Сама настройка в профилях есть, но она не отрабатывает. Зашел в конфигураторе в роли и обнаружил, что в роли "БазовыеПраваПриложения" нет ограничения на чтение данного справочника. Добавил роль в расширение, прописал в ограничениях доступа к данным:

#Если &ОграничениеДоступаНаУровнеЗаписейУниверсально #Тогда
#ДляОбъекта("")
#Иначе
#ПоЗначениям( "Справочник.СтруктурныеЕдиницы","Чтение","",
"Склады","Ссылка","","","","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","" )
#КонецЕсли

В функцию &ИзменениеИКонтроль("ВидыОграниченийПравСправочниковИПлановВидовХарактеристик")
Функция Расш1_ВидыОграниченийПравСправочниковИПлановВидовХарактерист­ик()


Добавил перед возвратом:

#Вставка
Результат = Результат + "Справочник.СтруктурныеЕдиницы.Чтение.Склады";
#КонецВставки

Так же в функцию &ИзменениеИКонтроль("СправочникиСОграничениемДоступа")
Функция Расш1_СправочникиСОграничениемДоступа()


добавил:

 #Вставка
    Результат.Добавить(Метаданные.Справочники.СтруктурныеЕдиницы);
    #КонецВставки



В профиле тестового пользователя настроил доступным только одно подразделение. У пользователя право на чтение дает только моя ограниченная группа. Пользователь все равно видит все подразделения. Попробовал в ограничениях прописать:

#Если &ОграничениеДоступаНаУровнеЗаписейУниверсально #Тогда
ЛОЖЬ
#Иначе
#ПоЗначениям( "Справочник.СтруктурныеЕдиницы","Чтение","",
"Склады","Ссылка","","","","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","" )
#КонецЕсли

Пользователь перестал видеть подразделения. Значит изменения из расширения работают. Что еще посмотреть?
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Zombi 6 03.04.24 09:15 Сейчас в теме
С основным вопросом разобрался. Запустил обработку ОбновлениеВспомогательныхДанных и все заработало. Остался вопрос с выбором подразделения. В списке я вижу документы только нужным подразделениям, в отчетах тоже вижу данные только по ним. Но при попытке выбора у меня пустой список подразделений. В чем проблема может быть?
3. Zombi 6 03.04.24 11:50 Сейчас в теме
В ограничения доступа в исключения можно добавить только элемент стурктурных подразделений с типом "Склад". Соответственно в настройках РЛС я указал склады, а форма выбора из документов открывается для выбора подразделений(отбор прямо в форме выбора).

В форме списка структурных единиц есть процедура, которая как раз ограничивает выбор подразделения, если выбор происходит из формы выбора значения доступа(пока не понял, зачем). Закомментировал вот так, на первый взгляд все работает. Будем тестировать.

&НаСервере
&ИзменениеИКонтроль("ЗаполнитьПараметрыВыбораЗначенияДоступа")
Процедура Расш1_ЗаполнитьПараметрыВыбораЗначенияДоступа()

Если Не Параметры.Свойство("ЭтоВыборЗначенияДоступа") Тогда
Возврат;
КонецЕсли;

ДопустимыеТипыЗначенияДоступа = Новый Массив;
Для Каждого ТекущийТип Из Перечисления.ТипыСтруктурныхЕдиниц Цикл
#Удаление
Если ТекущийТип <> Перечисления.ТипыСтруктурныхЕдиниц.Подразделение Тогда
#КонецУдаления
ДопустимыеТипыЗначенияДоступа.Добавить(ТекущийТип);
#Удаление
КонецЕсли;
#КонецУдаления
КонецЦикла;

Параметры.Отбор.Вставить("ТипСтруктурнойЕдиницы", ДопустимыеТипыЗначенияДоступа);

КонецПроцедуры
Оставьте свое сообщение

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