Имя: Пароль:
1C
1С v8
RLS. "Прочие поля" и "Ссылка, ВерсияДанных, Номер..."
0 Slon747
 
02.07.20
08:17
Объясните, пожалуйста, что именно дают строки в RLS в правах на Чтение:
<Прочие поля>                                                      ГДЕ ЛОЖЬ
Ссылка, ВерсияДанных, Номер, Дата, Проведен, ПометкаУдаления       ГДЕ ИСТИНА
Я так понимаю, вторая строка дает возможность читать эти поля у недоступных документов?
Но зачем в первой строке "ГДЕ ЛОЖЬ", а во второй "ГДЕ ИСТИНА" ?
1 AlvlSpb
 
02.07.20
10:02
(0) Странное ограничение. Где Ложь читается как Где Ложь = Истина. Т.е. это в принципе невыполнимо и значит ограничение накладывается полностью и безусловно.
ГДЕ Истина тоже странно. Нет необходимости писать это условие, т.к. возврат будет одинаковым что с этим условием что вообще без условия.
Откуда такое? Это что-то типовое или все же нетленка?
2 fisher
 
02.07.20
10:05
Нафига вот эти ГДЕ - неясно.
А права на чтение стандартных реквизитов позволяют такие фишки как возможность получить корректное представление объекта, даже если на него нет прав, вместо <Объект не найден>
3 fisher
 
02.07.20
10:07
Это что касается Ссылка, Номер и Дата (для представления). Где нужны Проведен, ПометкаУдаления и ВерсияДанных - навскидку не скажу.
4 fisher
 
02.07.20
10:13
<Прочие поля> ГДЕ ЛОЖЬ
Тут понятно. Иначе они будут доступны. А нужно чтобы были доступны только стандартные реквизиты. А вот ГДЕ ИСТИНА - вероятно просто для симметрии и повышения читабельности.
5 fisher
 
02.07.20
10:18
Могу предположить, что Проведен, ПометкаУдаления и ВерсияДанных нужны для каких-то инструментов БСП, которым нужно получать красивый список в том числе и недоступных пользователю документов. Или еще чего-нить в таком духе.
6 AlvlSpb
 
02.07.20
10:25
(4) А мне, например, непонятно. Одно дело когда условие звучит что-то типа: #Если что-то там Тогда ГДЕ Ложь. Т.е. при наступлении какого-то условия - полное ограничение. И совсем другое - просто Где Ложь. Т.е. это безусловная блокировка. Зачем тогда этот объект метаданных? Мне не понятно
7 fisher
 
02.07.20
10:50
(6) Смотри. Есть пользователь. У него не должно быть прав на какой-то вид документа. Вообще. Никаких. Казалось бы, какие проблемы? Просто не даем ему никаких прав на этот вид документа.
Но на документы этого вида может ссылаться документ, на который у пользователя какие-то права есть. На просмотр, допустим. И ты хочешь, чтобы этот пользователь видел корректное представление ссылки документа-основания вместо (<объект не найден>). И даже мог видеть какой-то простейший список этих документов в каких-то хитрых случаях со стандартной иконкой состояния. Тогда ты пилишь вот эту всю лабуду. Что вообще-то прав у него нет (прочие реквизиты недоступны), но на некоторые реквизиты права таки есть. Открывать эти документы пользователь не сможет и в стандартных динамических списках их видеть тоже не будет.
2 + 2 = 3.9999999999999999999999999999999...