Имя: Пароль:
1C
 
РЛС- запросы
0 Никофлекс
 
20.08.08
15:10
Как написать запрос доступа к справочнику Номенклатуры, чтоб видно было лишь часть номенклатуры, а не вся (разбиение идет по группам)?
1 nop
 
модератор
20.08.08
15:12
В ИЕРАРХИИ
2 Никофлекс
 
20.08.08
15:17
где мне указать, что при таких правах, видны должны быть лишь такие группы и даже при снятии иерархии другие элементы справочника не должны быть видны?
3 Mezz
 
20.08.08
15:18
Ну пропиши в справочник какой-нибудь реквизит, и его анализируй в РЛС.
4 MSensey
 
20.08.08
15:18
(1) если не ошибаюсь В ИЕРАРХИИ в RLS недопустимо
5 MSensey
 
20.08.08
15:20
(0) а сколько у вас элементов в справочнике?
6 nop
 
20.08.08
15:19
(2) если должна быть видна только 1 группа, то достаточно ПараметрыСеанса.
Но лучше завести регистрСведений (Пользователь, Группа) и сделать запрос по регистру вложенным в запрос РЛС. Пользователь - совать в ПараметрыСеанса
7 AlexNV
 
20.08.08
15:20
у УПП в свое время смотрел, дык там справочник запихивался в плоскую таблицу и каждый раз (при изменениях) эта таблица обновлялась
8 Никофлекс
 
20.08.08
15:21
(3) - т.е. указать какой-либо реквизит и для каждого элемента справочника его прописать?
9 nop
 
20.08.08
15:22
(4) я не пробовал, но говорят что да.
v8: v8: В иерархии при внутреннем соединении
10 Никофлекс
 
20.08.08
15:22
(6) - можно хотя бы примерный текст запроса?
11 nop
 
20.08.08
15:25
(10) Организации ИЗ Справочник.Организации КАК Организации
   ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ПраваДоступаПользователей КАК ПраваДоступаПользователей
   ПО Организации.Ссылка = ПраваДоступаПользователей.ОбъектДоступа
       И (ПраваДоступаПользователей.Пользователь В (&ГруппыТекущегоПользователя))
       И (ПраваДоступаПользователей.ОбластьДанных = &ОбластьДанныхБухгалтера)
12 nop
 
20.08.08
15:30
13 Никофлекс
 
20.08.08
15:36
(11) - А где я указываю, какая группа разрешена для этой роли?
14 Никофлекс
 
20.08.08
15:39
(11) или какие элементы разрешены для этого пользователя?
15 nop
 
20.08.08
15:44
(13) в регистре ПраваДоступаПользователей делаешь запись: ОбъектДоступа = что-то (в примере - СправочникСсылка.Организации), Пользователь  = такой то (СрпавочникСсылка.Пользователи), областьДанных - для простоты выкинем из (11).

Если такой записи в регистре нет - то нет права.

&ГруппыТекущегоПользователя - ПараметрСеанса, одноименный.
16 Никофлекс
 
20.08.08
16:03
(15) - попытался залезть в регистр сведений Права Доступа Пользователей, ничего не дает записать, у меня ПолныеПрава. Странно.
Это в ручную нужно прописать?
Или что я не так делаю?
17 nop
 
20.08.08
16:15
(16) там в форме флаг "толькоПросмотр" стоит. Можешь снять, а можешь писать регистр через справочник Пользователи
18 Никофлекс
 
20.08.08
16:35
(17) А как лучше? или всё равно?)
19 nop
 
20.08.08
16:45
(18) лично мне абсолютно все равно :)
20 Никофлекс
 
26.08.08
13:18
Вот РЛС-запрос:

Номенклатура ИЗ Справочник.Номенклатура КАК Номенклатура
   ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ПраваДоступаПользователейКОбъектам КАК ПраваДоступаПользователей
   ПО Номенклатура.Ссылка = ПраваДоступаПользователей.ОбъектДоступа
       И (ПраваДоступаПользователей.ОбластьДанных = ЗНАЧЕНИЕ(Перечисление.ОбластиДанныхОграниченияПравДоступа.Номенклатура))
       И (ПраваДоступаПользователей.Пользователь В (&ГруппыТекущегоПользователя))
       И (ПраваДоступаПользователей.ВидНаследованияПравДоступаИерархическихСправочников = ИСТИНА)
       И (ПраваДоступаПользователей.Чтение = ИСТИНА)


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

Подскажите, что не так я сделал?
И где изменить, чтоб выбирать можно было бы Элементы Номенклатуры, а не только Группы.
21 nop
 
26.08.08
13:21
(20) запрос не имеет никакой связи со справочником НоменклатурныеГруппы
22 Никофлекс
 
26.08.08
13:36
(21) Вот именно, а выбрать в правах я могу только НоменклатурныеГРуппы, где это можно подкоректировать?
23 IronDemon
 
26.08.08
13:39
(0) УПП?
У контрагентов глянь.
24 IronDemon
 
26.08.08
13:41
(22) Странно. Спокойно добавляю группу номенклатуры. 1.2.6.7
25 Никофлекс
 
26.08.08
15:52
(23)УПП - Да
(23) в Контрагентах я могу указать элемент, вроде всё так же прописано, как и по номенклатуре.
(24) - ГруппыНоменклатуры и выбираются, хотя смотрел в конфе написано справочник - Номенклатуры. Не выбираются элементы.Что-то не понятное.
26 nop
 
26.08.08
15:58
(25) значит не в той форме (месте) выбираешь, имхо
27 Никофлекс
 
26.08.08
16:33
Получилось выбирать элементы справочника Номенклатуры.
НО захожу пользователем с ограничением РЛС-запроса. И всё равно вижу весь справочник.
Может что-то не доработанно в запросе?
28 nop
 
26.08.08
16:38
(27) Смотри что в запросе написано

       И (ПраваДоступаПользователей.ОбластьДанных = ЗНАЧЕНИЕ(Перечисление.ОбластиДанныхОграниченияПравДоступа.Номенклатура))
       И (ПраваДоступаПользователей.Пользователь В (&ГруппыТекущегоПользователя))
       И (ПраваДоступаПользователей.ВидНаследованияПравДоступаИерархическихСправочников = ИСТИНА)
       И (ПраваДоступаПользователей.Чтение = ИСТИНА)
29 Никофлекс
 
26.08.08
16:48
(28) и?
30 IronDemon
 
26.08.08
16:47
(27) Ограничение наложи на все поля кроме "ЭтоГруппа, Код"
31 awers
 
26.08.08
16:51
(29)Покажи сюда текст запроса.
32 Никофлекс
 
26.08.08
16:53
Я зашел в справочник Пользователи.
Далее НАСТРОЙКА ПРАВ - для конкретного пользователя.
и для этого пользователя указал На весь справочник - снял все "галочки".
а на нужный элементы поставил на чтение.

Или нужно указывать всё в запросе???
33 IronDemon
 
26.08.08
16:52
"И (ПраваДоступаПользователей.ВидНаследованияПравДоступаИерархическихСправочников = ИСТИНА)" убери.
В какой роли и для какого права ты это пишешь?
34 nop
 
26.08.08
16:53
(29) мне не понятно это условия

И (ПраваДоступаПользователей.ОбластьДанных = ЗНАЧЕНИЕ(Перечисление.ОбластиДанныхОграниченияПравДоступа.Номенклатура))

я бы его убрал. Но сначала посмотрел бы запись в регистре ПраваДоступаПользователей
35 Никофлекс
 
26.08.08
16:55
(31)Вот запрос:

Номенклатура ИЗ Справочник.Номенклатура КАК Номенклатура
   ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ПраваДоступаПользователейКОбъектам КАК ПраваДоступаПользователей
   ПО Номенклатура.Ссылка = ПраваДоступаПользователей.ОбъектДоступа
       И (ПраваДоступаПользователей.ОбластьДанных = ЗНАЧЕНИЕ(Перечисление.ОбластиДанныхОграниченияПравДоступа.НоменклатураДанные))
       И (ПраваДоступаПользователей.Пользователь В (&ГруппыТекущегоПользователя))
И (ПраваДоступаПользователей.Чтение = ИСТИНА)
36 nop
 
26.08.08
16:56
(35) и роль у пользователя та же для которой РЛС задан ?
37 Никофлекс
 
26.08.08
16:58
(33) - выбрал первую попавшуюся, например - бухгалтер.
Перевести на другую роль, это не проблема, главное чтоб заработало.
38 IronDemon
 
26.08.08
16:58
(35) Ты добавил новое перечисление?
39 Никофлекс
 
26.08.08
17:00
(36) я ж пишу РЛС - запрос в роли. Поэтому роль не указываю.
40 Никофлекс
 
26.08.08
17:01
(38) - Да когда добавил и прописал - это в общейформе.НастройкаПрав, то я смог отмечать элементы.
41 IronDemon
 
26.08.08
17:02
(39) Не, ты не понял. Nop спрашивает - роль у пользователя с ограниченным товаром = роли которую ты изменяешь?
42 Никофлекс
 
26.08.08
17:04
(41)Да я указал пользователю эту роль, роль бухгалтера.
43 IronDemon
 
26.08.08
17:04
(40) В РС точно есть записи по товару с таким перечислением?
44 nop
 
26.08.08
17:06
меня очень смущает эта фигня

И (ПраваДоступаПользователей.ОбластьДанных = ЗНАЧЕНИЕ(Перечисление.ОбластиДанныхОграниченияПравДоступа.НоменклатураДанные))
45 IronDemon
 
26.08.08
17:10
(44) в УПП есть такое
46 Никофлекс
 
26.08.08
17:13
(43) Да запись есть и стоит галочка - чтение.
Остальные записи без галочек.

(44) - а что смущает? я сам добавил это перечисление.
потому что без него показывало только номенклатурные группы, а с этим перечислением я добился что показываются и элементы справочника Номенклатура.
47 nop
 
26.08.08
17:16
(46) а как было в оригинале?
ИМХО, лучше б форму поправить чем РЛС
48 Никофлекс
 
26.08.08
17:20
(47) мне лучше РЛС, т.к. это первая ласточка ,еще кучу прав придется писать.
вот начал со справочников, потом пойдут и доки.
49 nop
 
26.08.08
17:22
(48) как выглядел непоправленный РЛС?
Дело в том что РЛС по идее не влияет какой ты можешь выбрать элемент.
Влияет тип поля ПраваДоступаПользователей.ОбъектДоступа и форма (поле в форме) которым выбираешь.
50 Никофлекс
 
26.08.08
17:25
РЛС - запроса изначально не было.
51 nop
 
26.08.08
17:30
я не телепат и УПП не видел:(

Но не уверен в этом...
И (ПраваДоступаПользователей.ОбластьДанных = ЗНАЧЕНИЕ(Перечисление.ОбластиДанныхОграниченияПравДоступа.НоменклатураДанные))
52 Никофлекс
 
27.08.08
12:28
(51) получается я что-бы заблочить о видимости часть справочника Номенклатуры не в РЛС должен рыть???
53 IronDemon
 
27.08.08
12:43
(52) В РЛС
54 Никофлекс
 
27.08.08
12:49
(53) Так что я делаю не так?
Запрос вы видели, в регистре сведений есть запись указывающая на то, что при данной роли можно увидеть (для примера - один элемент.)
Запускаюсь под этой ролью и вижу весь справочник и всё могу изменить.
55 IronDemon
 
27.08.08
13:06
Какие поля справочника у тебя без ограничений и на какие поля наложено ограничение для права "Чтение"?
56 Никофлекс
 
27.08.08
13:33
(55) <Прочие поля> - т.е. блокирую все поля.
57 IronDemon
 
27.08.08
13:45
А у роли "Пользователь" ограничений нет. А у "бухгалтера" есть.
В RLS берется "максимум", в данном случае "ограничений нет" у "Пользователь".
58 Никофлекс
 
27.08.08
15:17
(57) Вы правы, убрал на "Пользователях" чтение Номенклатуры.
Теперь вообще ничего не читает. Офигеть)
59 IronDemon
 
27.08.08
15:40
Оставь "ЭтоГруппа, Код"
60 Никофлекс
 
27.08.08
16:58
(59) А если я хочу на элементы, а не на группы?
61 IronDemon
 
27.08.08
17:00
Что хочешь?
62 Никофлекс
 
27.08.08
17:06
Хочу читать элементы определенные.

И где оставить  группу?
63 IronDemon
 
27.08.08
17:09
Для полей "ЭтоГруппа, Код" ограничение не ставь
Для прочих - надо
64 Никофлекс
 
28.08.08
10:04
(63)Я указаываю эти поля (ЭтоГруппа и Код). А какое условие поставить?
65 Никофлекс
 
28.08.08
12:18
Кто-нибудь отзовитесь)
66 nop
 
28.08.08
12:20
(65) хто здесь?! О_о
67 Никофлекс
 
28.08.08
13:32
что-нибудь подскажите?)
68 nop
 
28.08.08
13:50
(67) я запутался в твоей проблеме
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший