Имя: Пароль:
1C
1С v8
Реализация своего ограничения RLS на базе БСП 2.4.
0 RetZet
 
28.05.18
12:12
Есть Торговля 11.4 и в ней БСП. Платформа 8.3.10.
Читаю про то, как реализована здесь:
https://its.1c.ru/db/bsp244doc#content:72:1
и здесь:
http://catalog.mista.ru/public/313468/
Вижу, что реализуется для номенклатуры, например, как прописывание в реквизите группы доступа. И по ней рулится. Но на чтение номенклатуры запрета нет. Вроде логика понятна, чтобы открыв доки не было видно <Объект не найден>.
Однако у нас поставили следующую задачу. По некоторому булевому флагу скрыть номенклатуру. Например, загрузили прайс от поставщика, и там колонка, к примеру "НеДействует", т.е. позиция в прайсе уже не продается. Надо чтобы менагеры не могли её подобрать в документы.
Заказчики согласились на то, что будет для таких менагеров <Объект не найден>, и будут люди, которые видят все, начальники отделов, и бухгалтера.
Бодяжить с процедурой при подборе, посчитал не кошерным, ибо там надо  при поиске и запросе крутить большим объемом номенклатуры, что не есть гут. Решил по RLS сделать ограничение.
И еще. При загрузке прайса надо скопом скинуть, или установить этот флаг. Есть прайсы поставщиков, которые ликвидируются например, полностью.
Таким образом, приходит мысль, что лучше это делать через периодический регистр сведений, с хранением истории. Да, позиции бывают возвращаются в продажу. Регистр простой. Номенклатура, Флаг, независимый и с периодикой.
И вот теперь самое главное. По этому регистру хочу ограничить доступ к номенклатуре, и вписать это в БСП 2.4.
Не могу сообразить как там теперь заполнить эти ограничения?
Т.е. установили флаг, номенклатура должна попасть в группу доступа запрещенной для менагеров.
Я например, сделал гурппу запрещенную для менагеров "НедействующаяНоменклатура"
Сделал профиль «ЧтениеНоменклатуры», который буду раздавать менеджерам. Значение доступа «Все разрешены, исключения назначаются в профиле» В исключения выбрал группу «Запрещены к выбору». В номенклатуре ставлю такую группу в реквизите «Группа доступа».

Теперь самое важное. Надо по этому регистру настроить шаблон RLS на роль «ЧтениеИнформацииПоНоменклатуре». Роль будет в расширении. Да в расширении хорошо сейчас отрабатываются работы с ролями, не затрагивая типовой.
И вот я не могу никак понять, как мне это вписать туда.
Допустим ставлю текущую таблицу «Документ.РеализацияТоваровИУслуг»
ВидДоступа «Номенклатура» или надо как «Товары.Номенклатура»?
И еще надо вот это ограничение из создаваемого регистра туда сунуть.

Кто сталкивался с настройкой прав в БСП? Кто как делал? Что думаете по моему вопросу?
1 RetZet
 
28.05.18
12:23
Ну или так:
#ПоЗначениям("Справочник.Номенклатура", "", "", "ГруппыДоступаНоменклатуры", "Ссылка"...
А вот далее, как данные по ограничению из регистра увязать с этим, не пойму что-то.
2 emuradov
 
28.05.18
12:28
Сделай, подписку в расширении при записи номенклатуры.
3 RetZet
 
28.05.18
12:35
(2) Иии?
Установить признак или группу доступа нет проблем.
Как это в шаблоне прописать или сделать?
Не хотелось бы отходить от БСП.
4 emuradov
 
28.05.18
12:41
Ставишь ограничение все разрешены, исключения назначаются (либо в профиле либо в группе доступа).
При записи обновляешь запрещенные значения.
5 emuradov
 
28.05.18
12:42
И РЛС работает по стандарту.
6 RetZet
 
28.05.18
12:48
(4) и (5) так и планировал.
А группу доступа получается впихваешь в саму номенклатуру при записи и все?
Я в этом ключе и думал. Но вот что хотелось бы. Не номенклатурой управлять, а из регистра, что выше описывал, ибо запись в регистр 100тыс. штук почти моментально, а в справочник, это долго.
И вот надеялся как-то разрулить, чтобы сведения о доступе брал из регистра. Или это уже я не туда копаю?
7 yavasya
 
28.05.18
13:18
(6) Тормоза могут с РЛС возникнуть
8 RetZet
 
28.05.18
13:30
Да все так пишут, тормоза, тормоза...
И таскают в процедуру перед выбором запросы. Чет мне больше по нраву RLS. Сколько лет уже юзаю, начиная с 8.2.19 нормально все отрабатывалось в нем. Если конечно не накручивать не пойми что.
А так примеры в типовых вполне достойно отрабатывают сейчас.
На КИПе проверял.
Может на слабом оборудовании точно тормоза. Ну там во всем будут тормоза.