|
Мой гений дарит вам окончательное решение вопроса RLS Волшебник, Шурик71, CepeLLlka, maxab72, ssh2006, georgebgk, DiMel_77, Amra, AlvlSpb, Бертыш, Somebody, Гений 1С, RoRu, RomarioAgro, PLUT, Gucci76, jivukak, Гость из Мариуполя, Spyke, ДемьянТ, Kongo2019, Вяйнемейнен, Krendel, boev82, 2mugik, Bigbro, AntiBuh, Caesar, Zamestas, John83, Ёпрст, lucbak, Мультук, Terv, FirstLineSupport, mmg, Конструктор1С, Злопчинский, Джордж1, Толич, wolk, Chameleon1980, Guk, ДенисСмирнов, GreenLab, vis, p-soft, who respawn, Михаил_, Irbis, dis12345, RomanYS, H A D G E H O G s, zzz_zzz_zzz, trk415e76, Михаил Козлов, Builder, Garykom, arsik, _Batoo, zva, jack777, paramedic, lubitelxml, Еврейчик, calmius, Karamzin, PuhUfa, Ботаник Гарден Меран, WebberNSK
| ☑ | ||
|---|---|---|---|---|
|
0
Гений 1С
гуру
20.02.26
✎
18:06
|
Пришло из ноосферы сегодня.
Дарю: https://geniy1s.ru/okonchatelnoe-reshenie-voprosa-rls-na-chtenie/ Пример шаблона RLS: #Если "Справочник.Номенклатура" = #ИмяТекущейТаблицы #Тогда ГДЕ Истина #КонецЕсли #Если "Справочник.Контрагенты" = #ИмяТекущейТаблицы #Тогда ГДЕ Ссылка.Наименование ПОДОБНО "а%" #КонецЕсли |
|||
|
1
Ботаник Гарден Меран
20.02.26
✎
18:08
|
"Подобно" - это специально ради срача?
|
|||
|
2
Гений 1С
гуру
20.02.26
✎
18:13
|
(1) это просто для примера, что можно использовать поля по ссылке, например Наименование
|
|||
|
3
Волшебник
20.02.26
✎
18:18
|
(2) Сергей, Вы понимаете, как работает RLS на нижнем уровне? Особенно при обращении через точку?
|
|||
|
4
Гений 1С
гуру
20.02.26
✎
18:23
|
(3) да, соединяет с таблицей... но это лишь пример, вы можете красиво соединить. хотя тут ссылка явно лишняя, в контексте же доступны все поля текущей таблицы. Ща проверю.
Можно так: #Если "Справочник.Номенклатура" = #ИмяТекущейТаблицы #Тогда ГДЕ Наименование ПОДОБНО "б%" #КонецЕсли #Если "Справочник.Контрагенты" = #ИмяТекущейТаблицы #Тогда ГДЕ Наименование ПОДОБНО "а%" #КонецЕсли Но суть подхода от этого не меняется. Можно сосредоточить все тесты запроса в одном месте, в одном тексте, который можно сгенерировать на худой конец. |
|||
|
5
Волшебник
20.02.26
✎
18:23
|
(4) Серёга, ты поплыл. Никто не настраивает RLS по наименованию контрагента. Там как минимум запрос к регистру сведений с группами контрагентов и группами пользователей.
|
|||
|
6
Гений 1С
гуру
20.02.26
✎
18:46
|
(5) куда я поплыл? Волшебник, ты вооще суть предложения понял?
Ну замени условие вот на это внутри, если так будет проще понимать людям, но думаю не будет: Подробности( ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено ( ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек ПО НаследованиеНастроек.Объект = Т.#Параметр(5) И НастройкиПрав.Объект = НаследованиеНастроек.Родитель #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения #Иначе #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка #Иначе И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) #КонецЕсли И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения #КонецЕсли ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей ПО СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь ) И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. ( ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек ПО НаследованиеНастроек.Объект = Т.#Параметр(5) И НастройкиПрав.Объект = НаследованиеНастроек.Родитель #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения #Иначе #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка #Иначе И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) #КонецЕсли И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения #КонецЕсли ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей ПО СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь ) ) |
|||
|
7
Волшебник
20.02.26
✎
18:32
|
Кстати, я многократно решал задачу по доступам через RLS, включая доступ к контрагентам, сотрудникам, счетам учёта. Идеального решения нет, но есть рабочие решения.
Например, вот такое: ![]() |
|||
|
8
Конструктор1С
20.02.26
✎
18:32
|
(0) ну прочти ты уже мануал, а?
|
|||
|
9
Волшебник
20.02.26
✎
18:32
|
(6) Ты свою галиматью вообще скрой, не позорься
|
|||
|
10
Гений 1С
гуру
20.02.26
✎
18:34
|
(7) я тоже решал многократно и думал что решения нет, потому в F3 хотел отказаться от RLS, но сегодня пришло в голову решение. Я так понял, ты не понял его суть?
|
|||
|
11
_Batoo
20.02.26
✎
18:34
|
Идеальный RLS: ГДЕ ИСТИНА
|
|||
|
12
Волшебник
20.02.26
✎
18:34
|
(10) Я так понял, что ты ушёл в астральные облака. Спустись на землю
|
|||
|
13
Волшебник
20.02.26
✎
18:35
|
(11) 👍 Кстати, да. Выстрадано на опыте
|
|||
|
14
Гений 1С
гуру
20.02.26
✎
18:35
|
(12) хахаха, да ты не понял? Я не верю, но ты не понял? А че так? Ну перечитай еще раз.
|
|||
|
15
Конструктор1С
20.02.26
✎
18:36
|
(6) это кусок из БСПшного RLS, а как он работает ты не знаешь, ибо прочитать мануал не осилил
|
|||
|
16
Волшебник
20.02.26
✎
18:36
|
(14) Серёга, у меня память есть. Я её читаю постоянно. Не надо глючить в мою светлую голову.
|
|||
|
17
Гений 1С
гуру
20.02.26
✎
18:38
|
(16)
по поводу этого метода можно сказать только КРУТО. остальные слова тут не уместны. или кто-то не понимает его суть. (15) это сарказм. |
|||
|
18
PLUT
гуру
20.02.26
✎
18:41
|
(17) нужно больше красоты в Ф3
дарю идею использовать #Если СтрСодержит(...) хуже уже точно не будет вместе с ПОДОБНО можно бесподобно упростить/усложнить RLS на чтение (с какой стороны посмотреть) для ларька норм |
|||
|
19
Гений 1С
гуру
20.02.26
✎
18:41
|
(18) вот потому меня и назвают Гений 1С, что Господь через меня приносит 1с-никам изящные решения сложных вопросов.
|
|||
|
20
PLUT
гуру
20.02.26
✎
18:42
|
(19) "вот потому меня и назвают Гений 1С"
они здесь сейчас с нами, в этой комнате? |
|||
|
21
Конструктор1С
20.02.26
✎
18:45
|
(17) ты что собрался ограничивать и зачем?
|
|||
|
22
Волшебник
20.02.26
✎
18:46
|
(19) Молимся за твоё скорейшее когнитивное выздоровление! Не знаю, что там по F3, но по RLS ты поплыл на булевой алгебре, и тебя не спасут даже кубиты.
|
|||
|
23
Конструктор1С
20.02.26
✎
18:47
|
(19) только ты лишь сегодня днем начал открывать для себя использование RLS, остальные это уже давно умеют
|
|||
|
24
Гений 1С
гуру
20.02.26
✎
18:50
|
(21) да что угодно, например доступные пользователю склады:
#Если "Справочник.Склады" = #ИмяТекущейТаблицы #Тогда ГДЕ Ссылка В (&ОбъектДоступаДоступныеСклады) #КонецЕсли #Если "Документ.ПоступлениеТоваров" = #ИмяТекущейТаблицы #Тогда ГДЕ Склад В (&ОбъектДоступаДоступныеСклады) И Организация В (&ОбъектДоступаДоступныеОрганизации) #КонецЕсли (23) не ври, я давно использую RLS и шаблоны в том числе. Но эта гениальная идея пришла только сегодня. Это НЕИБИЧЕСКИ КРУТАЯ ШНЯГА. (22) волшебник, что не так? Вот в этом сообщении я тебе привел практичный пример RLS. |
|||
|
25
PLUT
гуру
20.02.26
✎
18:49
|
(23) да Г!С до сих пор в шоке от дескрипторов прав доступа в Документообороте :) чертовщина какая-то (НЁХ - неведомая... херня)
|
|||
|
26
Волшебник
20.02.26
✎
18:49
|
(24) У тебя обороты не сойдутся в отчётах
|
|||
|
27
Волшебник
20.02.26
✎
18:51
|
Ребята, арифметика должна сходиться. Это же кубиты в пределе. 1+1=10 в двоичном исчислении. Никуда от этого не уйти и не деться.
|
|||
|
28
Конструктор1С
20.02.26
✎
18:52
|
(24) прикинь, а можно просто в конкретном шаблоне/ограничении прописать:
ГДЕ Ссылка В (&ОбъектДоступаДоступныеСклады) и получится ровно то же самое |
|||
|
29
Волшебник
20.02.26
✎
18:53
|
(28) Ссылку я рекомендую сделать доступной. Изучайте (7)
|
|||
|
30
Гений 1С
гуру
20.02.26
✎
18:56
|
(28) Ха, смешно видеть, как конструктор не всасывает суть метода. И он еще мнит себя великим архитектором. Мдя.
И он еще пытался поучать меня в архитектуре F3 (29) ну что тебе сказать, Волшебник, по этому поводу... Я тоже так писал раньше, все эти 5 лет я не знал об том волшебном методе, который сегодня вам излагаю... это как трактор супротив лопаты. |
|||
|
31
Волшебник
20.02.26
✎
18:55
|
(30) У Вас не метод, а правка к типовой БСП, которую Вы сами отвергли.
|
|||
|
32
Волшебник
20.02.26
✎
18:56
|
Кто отвергает типовую БСП? Ну например я.
Я сделал уже несколько конфигураций без БСП. Они в продакшене. На них держится бизнес. |
|||
|
33
Гений 1С
гуру
20.02.26
✎
18:57
|
(32) их можно скачать, купить, форкнуть?
(31) Волшебник, ну реально ты не догоняешь суть метода... ну может позже осознаешь, понимаю, он ломает стереотипы |
|||
|
34
Волшебник
20.02.26
✎
18:57
|
||||
|
35
Гений 1С
гуру
20.02.26
✎
19:00
|
(34) не, я даже не знаю эту вашу БСП, но я видел ее уродливое лицо в типовых. Ни за шьто этого уродства в моей Ф3 небудет.
|
|||
|
36
Волшебник
20.02.26
✎
19:01
|
Гений 1С решил написать свою конфу на 1С, убивцу 1С, но изучает БСП.
Зачем?! Гений 1С не мужик. Серёга, ты врёшь общественности. |
|||
|
37
Конструктор1С
20.02.26
✎
19:01
|
(30) читай мануал и не люби мозг
|
|||
|
38
Гений 1С
гуру
20.02.26
✎
19:03
|
(36) я не изучаю БСП, с чего ты взял. RLS - это от платформы, а не от БСП.
Пример в (6) я привел как раз чтобы показать ее уродтсво. (37) Сделай над собой усилие и осознай уже революционность рожденного сегодня в муках метода. |
|||
|
39
Волшебник
20.02.26
✎
19:04
|
(38) Приведи пример элегантного решения RLS. Сабж не считается
|
|||
|
40
Гений 1С
гуру
20.02.26
✎
19:09
|
(39) в (24) же привел, смотри внимательно.
|
|||
|
41
Волшебник
20.02.26
✎
19:14
|
(40) низачот! см (26)
|
|||
|
42
Гений 1С
гуру
20.02.26
✎
19:15
|
(41) давай конкретнее, а то я че-то сарказм не выкупаю уже к концу рабочего дна.
|
|||
|
43
Волшебник
20.02.26
✎
19:16
|
(42) А ты бесплатнее относись к моим рекомендациям. Это ж всё на опыте выстрадано и заработано.
|
|||
|
44
Гений 1С
гуру
20.02.26
✎
19:16
|
(43) ну я там не увидел ничего интересного. отбор по списку доступных объектов это классика. что я должен там увидеть?
|
|||
|
45
Волшебник
20.02.26
✎
19:18
|
(44) Увидь обороты в отчётах, особенно с расшифровкой по регистратору. Сложи нач.остаток + приход - расход и получи конечный остаток
|
|||
|
46
Конструктор1С
20.02.26
✎
19:18
|
(38) сделай над собой усилие и прочти мануал. Только начал для себя открывать RLS и уже используешь его через одно место
|
|||
|
47
Гений 1С
гуру
20.02.26
✎
19:21
|
(46) Конструктор, расписываться в том, что ты не асилил, не надо. Я это и так понял. Жди когда другие придут и офигеют от счастья.
|
|||
|
48
Волшебник
20.02.26
✎
19:22
|
(47) Мы охренели от счастья, что твой гений дарит нам...
|
|||
|
49
Гений 1С
гуру
20.02.26
✎
20:12
|
(48) не, надо еще осознать, что именно, вот тогда и происходит отрыв башки.
|
|||
|
50
CepeLLlka
20.02.26
✎
21:11
|
(49)А можно для тупых, кто с РЛС работал очень мало пояснить всю вот это революционность? Хочется чтобы отвал башки был
|
|||
|
51
DiMel_77
20.02.26
✎
21:28
|
(50) Автор, как обычно изобретает велосипеды и открыл для себя параметры RLS. Типа написал один общий шаблон ограничения и вставил его во все роли, а потом только этот шаблон правит, не трогая роли... Только в реальных проектах ограничения ставят не на объект целиком, а могут закрыть некоторые табличные части например (как в ЗУП) или вообще поставить ограничения на служебные таблицы типа видов субконто (так ограничение на чтение аналитики "Сотрудники" на 70 счёте можно организовать. У меня одно пожелание ему - "ПОКАЖИСЬ СПЕЦИАЛИСТУ ПОКА НЕ ПОЗДНО"
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |