Имя: Пароль:
1C
 
Ограничение на чтение реквизита документа
,
0 Stim
 
14.04.22
14:18
Нужно скрыть значение одного реквизита документа для всех пользователей, кроме тех, у кого добавлена спец роль.
Реквизит скрывать только для документов с определенным видом операции(перечисление).

Как это можно сделать?
Пока смотрю в сторону функ опций и их параметров, но не вижу, где там можно использовать значение реквизита документа
1 Kassern
 
14.04.22
14:20
(0) какая конфа, есть РЛС?
2 dreizehn
 
14.04.22
14:20
(0) > скрыть значение
На форме? На которой из? А если добавиться новая форма? В базе? Чтобы не читали запросами?
3 Ненавижу 1С
 
гуру
14.04.22
14:22
RLS, имхо
4 Ненавижу 1С
 
гуру
14.04.22
14:25
видеть его нельзя вообще или для редактирования закрыть?
5 _Дайвер_
 
14.04.22
14:28
Если РольДоступна("ТвояРоль") Тогда
  ЭлементыФормы.Видимость = Истина;
КонецЕсли;
6 Kassern
 
14.04.22
14:29
(5) юзверы с полными правами будут расстроены такой конструкцией)
7 _Дайвер_
 
14.04.22
14:30
(6) Как сделать я написал, дальше пусть сам додумывает)
8 Stim
 
14.04.22
14:33
(5) да фигня же. Остался миллион других способов узнать значение реквизита -  через формы списков, отчеты и пр
9 _Дайвер_
 
14.04.22
14:35
(8) RLS, на чтение
10 Stim
 
14.04.22
15:04
ок, RLS.
Добавил роль Полные права в расширение, у документа СписаниеСРасчетногоСчета  в праве на чтение указываю:
поле - НазначениеПлатежа
Ограничение доступа:
СписаниеСРасчетногоСчета ГДЕ СписаниеСРасчетногоСчета.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийСписаниеДенежныхСредств.ПеречислениеЗаработнойПлатыРаботнику)

т.е. я с полными правами должен видеть все назначения платежа, кроме тех документов, у которых вид операции - ПеречислениеЗаработнойПлатыРаботнику.

В итоге все равно вижу все назначения всех документов. Что я делаю не так?
11 Stim
 
14.04.22
15:07
мож все-таки функц опции?
РС, где пользователь - доступность(ИСТИНА/ЛОЖЬ)
12 Stim
 
14.04.22
15:13
указал ограничение доступа как "СписаниеСРасчетногоСчета ГДЕ СписаниеСРасчетногоСчета.Номер = "00БП-017621""

и все равно вижу все назначения всех документов.
13 rozer76
 
14.04.22
18:39
(8)(12) Нет RLS тут не поможет. Делай роль с независимыми доступами к реквизитам.
Ибо RLS умеет закрывать или не закрывать запись целиком. Условие RLS либо отрабатывает либо нет в зависимости к обращению полям, на которые наложено условие. Если среди полей, которые из БД считываются есть поля, на которые наложены условия, то эти RLS отрабатывают, но действует условие всегда на всю запись.
14 rozer76
 
14.04.22
19:09
(10) ну и если ограничение на одно поле то будете видеть все записи если этого поля нет в списке например. Если включить поле в список и условие на поле будет ложь то записи будут скрыты. Это касается конечно и запросов в т.ч.
15 ДедМорроз
 
14.04.22
21:41
Так на запрос ФО не влияют.
В СКД,правда,результат будет скрыт,но при простом запросе будет доступ.
Поэтому,корректно то,что хочется спрятать,выносить в регистр и давать или не давать права на него.
Основная теорема систематики: Новые системы плодят новые проблемы.