Имя: Пароль:
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 нормально все отрабатывалось в нем. Если конечно не накручивать не пойми что.
А так примеры в типовых вполне достойно отрабатывают сейчас.
На КИПе проверял.
Может на слабом оборудовании точно тормоза. Ну там во всем будут тормоза.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан