Имя: Пароль:
1C
 
Ограничение доступа на данные документы и отчеты: сделать RLS или программно
0 МишельЛагранж
 
21.02.11
00:35
Нужно ограничить отчеты и документы на определенные цены.
Т.е. документ доступен, отчет доступен, а вот те записи в документах и отчетах, которые выводят "запрещенные" цены - скрыты.
Т.к. на RLS ограничить  все не получится (данные, которые содержит документ, ограничить так нельзя; да и отчеты тоже не все: если нет прямой ссылки в поле записи регистра на запрещенную цену, а есть только полученное значение этой цены - ограничение RLS на выборку запроса из регистра тоже ничего не даст), то может сразу делать в каждом документе программное ограничение, или все-таки где есть возможность - делать по RLS?
Или вообще все зависит от количества ограничиваемых объектов, для которых есть возможность ограничения по RLS?
Пока 5 отчетов и три документа.
1 zak555
 
21.02.11
00:36
от когго прятать ?
2 YauheniL
 
21.02.11
00:38
Простой признак ограничения добавить в тип цены, добавлять условие в запросе при отсутсвиии необходимых прав. Или во все запросы пихнуть "Разрешенные". Хрен редьки не слаще -- все равно менятьвсе запросы. Я бы делал программно, т.к. "Разрешенные" снижают быстродействие
3 МишельЛагранж
 
21.02.11
01:02
(1) от части пользователей, для которой, тем не менее, сам документ/отчет доступен.
(2) если в записи не будет ссылки на объект с признаком/или без ни в одном из полей - признак ограничения для отсеивания по RLS не поможет: проверяется ведь сам объект, на котрый наложено ограничение.
И просто вписать РАЗРЕШЕННЫЕ недостаточно - нужно сами RLS настраивать в первую очередь ))
Я вот и думаю - может сразу все программно сделать (раз уж без этого не обойтись) и не путаться с RLS?
Уж больно часто RLS ограничивает там, где ограничивать вроде совсем и не надо было.
4 МишельЛагранж
 
21.02.11
09:24
Кто-то еще поделится рекомендациями?
5 Escander
 
21.02.11
09:59
(0) Если Вас правильно понял - всё это решается средствами RLS. Но если крайне нужно что-бы побыстрее - тогда програмно...
Кратко:
RLS: легкость модификации(+), типовой механизм(+), тормоза(-)
программно: конечно будет быстрее(+), сопровождение и модификация сложнее(-).
6 МишельЛагранж
 
21.02.11
10:03
(5) RLS решается только на уровне объектов. Если нет объектов - как RLS поможет?
В документах нужно ограничить просмотр строк ТП - RLS здесь бессильна.
7 МишельЛагранж
 
21.02.11
10:04
(5) + типового механизма нет - надо свои ограничения настраивать ))
8 Escander
 
21.02.11
10:27
(6) как-бы RLS - Record бла-бла-бла, запись а не объект... некогда мне сейчас, вечером пример какой накидаю если никто ранее не напишет...
9 МишельЛагранж
 
21.02.11
11:06
(8) ограничение на записи регистров по объектам, причем на этапе выборки из этих регистров. А как вы собираетесь ограничить данные в документе, которые в нем же и хранятся?
10 Escander
 
21.02.11
12:01
Один чел ввёл цену по какой-то позиции в табличной части документа и нужно что-бы эту строку не увидел другой чел? Или цены в справочнике?
11 МишельЛагранж
 
21.02.11
12:13
(10) да, первое - ограничить в ТЧ документа по типам цен в том числе.
12 Escander
 
21.02.11
12:40
(11) тип цены в справочнике?
13 МишельЛагранж
 
21.02.11
12:56
(12) тип цены - да. А не должны видеть сами цены. Числа.
Т.е. как-бы колонку надо скрывать.
14 МишельЛагранж
 
21.02.11
12:58
+(13) данные в колонке Цены (или Суммы).
15 Escander
 
21.02.11
13:46
(13) если нужно что-бы для каких-то позиций в документе не была видна цена (в зависимости от типа цены) - это реализуется встроенным типовым механизмом RLS.
16 Escander
 
21.02.11
13:47
+(15) в зависимости от типа цены = в зависимости от типа номенклатуры, да хотя в зависимости от любого реквизита!
17 МишельЛагранж
 
21.02.11
14:07
в принципе, можно и так попробовать. Но задача вроде как уточненно - скрыть непосредственно цены.
18 Смотрящий от 1С
 
21.02.11
14:40
стояла аналогичная задача. Скрывать пришлось и тип цены и процент наценки. Ограничения затрагивают и регистр сведений "цены номенклатуры" и справочник "Типы цен". Возился с RLS, запутался в конец. Сейчас прикрутил к типам цен реквизит "организация" и задействовал штатный механизм разграничения доступа по организациям.
19 МишельЛагранж
 
21.02.11
15:40
(18) я могу и без этого обойтись - прикрутить к штатному механизму вдобавок еще и ограничение по типам цен.
У вас получилось - одной организации соответствует только один тип цен?
20 Escander
 
22.02.11
06:20
Н-да, фокус не удался... ну значит только програннно
21 МишельЛагранж
 
22.02.11
13:45
(18) а разве Организация - не единая на документ? И разве теперь ограничения по RLS штатного механизма не скрывают/открывают документы целиком?
А у нас вот типы цен от продукции зависят ))
22 МишельЛагранж
 
22.02.11
13:47
(20) в чем и беда - RLS только на объекты работает
23 FIXXXL
 
22.02.11
14:34
(21) а разве типЦен не единый на документ?
24 5 Элемент
 
22.02.11
15:03
А что это за пользователь который может открыть документ, но не может посмотреть цены?
Зачем он его открывает?
25 Vladal
 
22.02.11
15:19
(24) Например, если на складе только количественный учет или в приходе скрывается цена закупки от любопытных менеджеров
26 5 Элемент
 
22.02.11
15:40
(25) Ну а зачем менеджер открывает документ?
Можно ему запретить открытие документа?
27 5 Элемент
 
22.02.11
15:43
(0) В общем я бы сначала разобрался зачем пользователю нужно открывать документ, с какой целью он это делает.

Возможно ему будет достаточно сделать печатную форму документа и запретить открытие документа.
28 МишельЛагранж
 
22.02.11
17:14
(24) на складе запретить видеть цены в поступлении и заказах, в (25) правильно написали.
(26) можно. Совсем всех документов - через роли, если же надо запретить среди документов одного типа по другим признакам (Организация, Типы цен, другой менеджер) - то RLS.
У меня надо числа скрыть, что только программно.
(27) хитро ))
Пример есть реализации открытия сразу ПФ на основе документа?
Это не просто так - надо пр открытии проверять пользователя и делать скрытие столбцов ПФ - по сути, это можно напрямую в документе сделать.
29 5 Элемент
 
22.02.11
17:48
(28) ты так и не понял.
Т.е. это кладовщик зачем-то открывает поступления.
Видимо, чтобы посмотреть, что должно прийти.
Для этого точно нужна печ.форма.

Ее можно формировать не путем подмены открытия формы.
А с помощью кнопки которую можно разместить в форме списка документов.
Или вообще сделай для него отдельный журнал и там вместо открытия формируй печ. форму.

В общем эта проблема решается печ. формой, а не RLS.
30 МишельЛагранж
 
23.02.11
23:09
(29) т.е. предлагаешь сразу кладовщику отдельную ПФ делать?
А журнал-то отдельный зачем? Можно в общем - проверять роли, и выводить ПРиОткрытии либо документ, либо - ПФ сразу.
Тут что-то не понял я развития идей с отдельной кнопкой или отдельным журналом.
И потом, это если исходить из того, что кладовщик не меняет документ, а только  смотрит для информации.
Это далеко и не везде так, согласись. Есть поступления, которые сам кладовщик и оформляет.
31 МишельЛагранж
 
24.02.11
09:28
Кстати, никто не пробовал RLS на столбцы документов делать - работает?
В шаблоне конструкция вида: #ТекущаяТаблица.Цены
32 МишельЛагранж
 
24.02.11
11:57
(31) попробовал все-таки подкрутить RLS на поля - оказалось все как обычно.
Механизм стандартный для 1С: на поля ограничения указать можно (в колонке, где "Ограничения доступа - Поля"), но это ни на что не влияет (кроме отображения/не отображения в списке "Объект не найден") - в любом случае нужен RLS на "Прочие поля".
В шаблоне указать #ТекущаяТаблица.Цены - нельзя, т.к. он запрашивает ТЧ целиком, и с отдельными полями ТЧ не работает.
33 5 Элемент
 
24.02.11
13:35
(30) >> И потом, это если исходить из того, что кладовщик не меняет документ, а только  смотрит для информации.
>> Это далеко и не везде так, согласись. Есть поступления, которые сам кладовщик и оформляет.

Не соглашусь, кладовщик должен вводить приходный ордер.