Простая проблема с РЛС. Нужен совет.

1. Alex123Aa 05.03.20 12:14 Сейчас в теме
Здравствуйте.
1С:Предприятие 8.3 (8.3.8.1784) 1С:ERP Управление предприятием 2.0 (2.0.5.6)
Возникла проблема с настройкой РЛС для НОВОГО регистра сведений. В регистре Три измерения: Номенклатура , Партнер, НаименованиеКлиента(тип строка).
Накладываю РЛС на измерение "Партнер". Использую шаблон :
#ПоЗначениям( "РегистрСведений.НаименованиеНоменклатурыПартнеры","Чтение","",
"ГруппыПартнеров","Партнер", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","" )


После добавление РЛС пользователь перестает видеть все записи в ЭТОМ регистре. При этом ВАЖНО: шаблон я скопировал(заменив наименование регистра) из РЛС для другого регистра сведений и там пользователь видит все что нужно.

Т.к. регистр сведений новый я обновил параметры работы системы.

Спасибо.
Найденные решения
7. DJDUH 17 05.03.20 12:50 Сейчас в теме
(4)Запусти с ключём "/С ЗапуститьОбновлениеИнформационнойБазы" - должны обновится роли и ограничения по ним.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. DJDUH 17 05.03.20 12:17 Сейчас в теме
А обновлние вспомагательных данных!?
3. Alex123Aa 05.03.20 12:33 Сейчас в теме
(2)Запускал.
СтандартныеПодсистемыСервер.ОбновитьПараметрыРаботыПрограммы();
4. Alex123Aa 05.03.20 12:33 Сейчас в теме
(2)может что то еще нужно обязательное сделать для нового регистра?
7. DJDUH 17 05.03.20 12:50 Сейчас в теме
(4)Запусти с ключём "/С ЗапуститьОбновлениеИнформационнойБазы" - должны обновится роли и ограничения по ним.
8. Alex123Aa 05.03.20 12:50 Сейчас в теме
9. Alex123Aa 05.03.20 13:46 Сейчас в теме
(7)
/С ЗапуститьОбновлениеИнформационнойБазы

(7)Не помогло.
10. AlexO 135 08.03.20 10:01 Сейчас в теме
(7)
должны обновится роли и ограничения по ним.
RLS вообще не связан с 1С-овыми ограничениями и не зависит от них (а также ролями, правами и прочим), и ни в каких дополнительных переобновлениях не нуждается - у 1С в принципе нет доступа к блоку контроллинга и управления RLS в СУБД. Она только пользуется готовыми шаблонами и предоставляемыми функциями.
13. DJDUH 17 10.03.20 11:13 Сейчас в теме
(10) при добавлении новых ролей часто они не перезаполняются назначенным пользователям и как раз обновление вспомогательных данных решает эту проблему!
14. AlexO 135 11.03.20 12:44 Сейчас в теме
(13)
при добавлении новых ролей часто они не перезаполняются назначенным пользователям
Роли, может и не перезаполняются - это 1С, ничего удивительного. А RLS - это не галочки в регистрах ролей, которые могут и не перезаполнится.
Эти ограничения накладываются на "объекты" (записи), и ни от каких других регистров или данных не зависят.
А Роль тут - только связующее звено (привязка к Пользователю), потому что больше никак не привязать RLS, нет средств. Роль не управляющий элемент в данной паре.
Поэтому настройки и галочки роли (всякие данные в регистрах, которые могут и не перезаполнится) к RLS отношения не имеют.
Посмотрите, где и на что RLS накладывается, а где - галочки доступа.
15. dhurricane 11.03.20 12:52 Сейчас в теме
(14)
Эти ограничения накладываются на "объекты" (записи), и ни от каких других регистров или данных не зависят.
Они зависят как минимум от того, что записано в ограничении доступа к данным в роли. Если там описана связь с некоторым регистром, значит результат выборки данных из основной таблицы зависит от данных в этом регистре. Например, в прежних версиях БСП все типовые шаблоны ограничений используют регистр сведений "ТаблицыГруппДоступа". Это служебный регистр, которых в штатном режиме заполнялся при добавлении/изменении справочника профилей и групп доступа. В нештатных ситуациях данные этого регистра можно было актуализировать либо специальной обработкой, поставляемой вместе с БСП, либо запуском ИБ с параметром "/С ЗапуститьОбновлениеИнформационнойБазы". О чем, собственно, выше в ветке и идет речь.
16. AlexO 135 11.03.20 13:04 Сейчас в теме
(15)
Например, в прежних версиях БСП все типовые шаблоны ограничений используют регистр сведений "ТаблицыГруппДоступа"
К RLS какое отношение это имеет? В тексте запроса что угодно и куда угодно можете обращение и проверку написать.
Это зависит от шаблона, а не от RLS.
Привязались к какой-то там "ТаблицыГруппДоступа" - ну, перезаполняйте теперь каждый раз.
А написали бы свое RLS-ограничение - и работало бы не по служебным-непонятно-как-обновляющимся таблицам, а по своим регистрам.
17. dhurricane 11.03.20 13:31 Сейчас в теме
(16)
К RLS какое отношение это имеет? В тексте запроса что угодно и куда угодно можете обращение и проверку написать.
Непосредственное. Текст запроса же - часть механизма RLS.

Это зависит от шаблона, а не от RLS.
Шаблон, как текст запроса - часть механизма RLS. Поэтому мы их и обсуждаем.

Привязались к какой-то там "ТаблицыГруппДоступа" - ну, перезаполняйте теперь каждый раз.
В подавляющем большинстве своих проектах при обновлении конфигурации продуктивной базы ИБ запускаю с ключом "/С ЗапуститьОбновлениеИнформационнойБазы". Не вижу ничего зазорного. Более того, очень часто это необходимо.

А написали бы свое RLS-ограничение - и работало бы не по служебным-непонятно-как-обновляющимся таблицам, а по своим регистрам.
Во многих ситуациях я доверяю разработчикам 1С больше, чем себе. Зачем городить свой велосипед, если за меня его сделали раньше и лучше? К тому же почти все мои проекты - доработка и внедрение типовых. А значит от типовых шаблонов не уйти.
18. AlexO 135 11.03.20 14:25 Сейчас в теме
(17)
Текст запроса же - часть механизма RLS
Это часть условия к RLS. Там могут быть обращения к регистрам 1С, могут и не быть. А могут быть обращения к справочникам 1С.
Зачем городить свой велосипед, если за меня его сделали раньше и лучше?
Затем, что свое работает надежней и качественней и быстрей. Чем "его сделали раньше и лучше" 1С.
Было бы так - не пришлось бы "при обновлении конфигурации продуктивной базы ИБ запускаю с ключом "/С ЗапуститьОбновлениеИнформационнойБазы"". И всю остальную ересь тянуть за собой и к себе.
И база "production" ("используемая в производстве, на предприятии", "рабочая"), а не "продуктивная".
К тому же почти все мои проекты - доработка и внедрение типовых. А значит от типовых шаблонов не уйти.
Да элементарно уходишь. Пишешь свою небольшую подсистему прав для большой конфы, и ни от кого не зависишь. И всегда видишь, что где и почему. И где затык или проблема. А не полагаешься на "раньших и лучших", и не взываешь к ним, когда хрен пойми что с правами или ролями.
19. dhurricane 11.03.20 15:04 Сейчас в теме
(18)
Это часть условия к RLS. Там могут быть обращения к регистрам 1С, могут и не быть. А могут быть обращения к справочникам 1С.
Да, я в курсе. О том и речь. Автор поста работает с типовыми ролями и/или шаблонами, значит он зависит от служебных регистров. И рекомендации ему дают соответствующие.

И всю остальную ересь тянуть за собой и к себе.
Если речь про БСП, то видимо я просто гораздо более лучшего мнения о ней, чем Вы. Ваше право. В целом я ей доволен.

Затем, что свое работает надежней и качественней и быстрей.
Я адекватно оцениваю свои возможности, а потому не соглашусь. В моем случае:
- быстрей - если только за счет урезания функциональности;
- качественней - однозначно нет, т.к. я не обладаю теми же ресурсами и навыками, что целая команда разработчиков библиотеки;
- надежней - в общем случае нет, т.к. у меня как минимум нет той армии пусть и невольных тестировщиков, что у 1С, если только в редких случаях.

И база "production" ("используемая в производстве, на предприятии", "рабочая"), а не "продуктивная".
Возьму на вооружение, спасибо. Использую термин так, как и окружающие меня люди, без особого понимания его происхождения.

Пишешь свою небольшую подсистему прав для большой конфы, и ни от кого не зависишь.
За это мне не заплатят. Более того, ни служба поддержки заказчика, ни мои коллеги по команде не оценят моего рвения, т.к. это придется сопровождать не только мне. В конце концов кому-то нужна именно что не "небольшая подсистема прав".
12. AlexO 135 08.03.20 10:15 Сейчас в теме
(1)
При этом ВАЖНО: шаблон я скопировал(заменив наименование регистра) из РЛС для другого регистра сведений и там пользователь видит все что нужно.
У вас есть какой-то шаблон "#ПоЗначениям", там куча параметров.
Разберитесь, что и как выполняет шаблон, какие поля и какие типы обрабатываются у регистров, которые используют этот шаблон.
А проще - создайте свой шаблон/ограничение на новый регистр, и избежите как проблем с совместимостью, так и с настройкой.
5. starjevschik 05.03.20 12:41 Сейчас в теме
Если проблема простая, то чего спрашивать, сделал и забыл.
Я бы начал с того, что посмотрел бы, что за шаблон, какой запрос там внутри и проходит ли хотя бы одна запись из этого регистра через запрос. Вообще РЛС штука весьма муторная в программировании, нужно терпение и время.
6. Alex123Aa 05.03.20 12:45 Сейчас в теме
(5) Вроде все основные шаги прошел. Странно что на практически таком же регистре все работает с этим шаблоном рлс,
но на новом не хочет.
Думаю может есть еще какие то моменты помимо "ОбновитьПараметрыРаботыПрограммы()" для новых регистров.
11. AlexO 135 08.03.20 10:04 Сейчас в теме
(6)
Странно что на практически таком же регистре все работает с этим шаблоном рлс,
Там совершенно другой регистр, с чего вы взяли, что то, что подходит там - будет работать здесь? Не с того начали, нужно начать с разбора шаблона "#ПоЗначениям".
20. lobonosov@mail.ru 17.03.21 14:46 Сейчас в теме
1. В роли надо использовать
#Если &ОграничениеДоступаНаУровнеЗаписейУниверсально #Тогда
	  #ДляОбъекта("Партнер")
  #Иначе
	  ПоЗначениям( "РегистрСведений.НаименованиеНоменклатурыПартнеры","Чтение","",
"ГруппыПартнеров","Партнер", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","" )
  #КонецЕсли

2. В модуле менеджера регистра добавить процедуру
Процедура ПриЗаполненииОграниченияДоступа(Ограничение) Экспорт
	
	Ограничение.Текст =
	"РазрешитьЧтениеИзменение
	|ГДЕ
	|	ЧтениеОбъектаРазрешено(Партнер)";
	
	Ограничение.ТекстДляВнешнихПользователей = Ограничение.Текст;

КонецПроцедуры
Показать


3. В определяемый тип ВладелецЗначенийКлючейДоступаНаборЗаписей добавить РС НаименованиеНоменклатурыПартнеры
Оставьте свое сообщение

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