|
Ограничение доступа к данным | ☑ | ||
---|---|---|---|---|
0
karpos
28.03.14
✎
09:22
|
Всем привет! Есть необходимость сделать ограничения доступа к некоторым полям справочника сотрудники я не хочу менять код в процедуре при открытий, а хочется это сделать через (Ограничение доступа к данным) причем когда открываешь этот справочник в конфигураторе на вкладке права
наводишь на роль пользователи там уже есть какой то стандартный код. Может кто то уже реализовывал что то подобное. У меня 1с 8.2 УПП 1.3 вот код #Если &ИспользоватьОграничениеПоОрганизации ИЛИ &ИспользоватьОграничениеПоФизическиеЛица #Тогда ТекущаяТаблица ИЗ Справочник.СотрудникиОрганизаций КАК ТекущаяТаблица ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ РАЗЛИЧНЫЕ СоставГруппы.Ссылка КАК ГруппаПользователей ИЗ Справочник.ГруппыПользователей.ПользователиГруппы КАК СоставГруппы ГДЕ СоставГруппы.Пользователь = &ТекущийПользователь) КАК ГруппыПользователей ПО (ИСТИНА) ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Организации КАК ОбособленныеПодразделения ПО (ОбособленныеПодразделения.ГоловнаяОрганизация = ТекущаяТаблица.Организация И (НЕ ОбособленныеПодразделения.ГоловнаяОрганизация = ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка)) ИЛИ ОбособленныеПодразделения.Ссылка = ТекущаяТаблица.Организация) ГДЕ (ТекущаяТаблица.ЭтоГруппа ИЛИ (НЕ 1 В (ВЫБРАТЬ ПЕРВЫЕ 1 1 КАК ПолеОтбора ИЗ РегистрСведений.НазначениеВидовОбъектовДоступа КАК НазначениеВидовОбъектовДоступа ГДЕ НазначениеВидовОбъектовДоступа.ГруппаПользователей = ГруппыПользователей.ГруппаПользователей И ВЫБОР #Если &ИспользоватьОграничениеПоОрганизации #Тогда КОГДА НазначениеВидовОбъектовДоступа.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Организации) ТОГДА ВЫБОР КОГДА 1 В (ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ (ВЫБРАТЬ 1 КАК ПолеОтбора ) КАК Оптмизация ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НастройкиПравДоступаПользователей КАК НастройкиПравДоступаПользователей ПО НастройкиПравДоступаПользователей.ОбъектДоступа = ОбособленныеПодразделения.Ссылка И НастройкиПравДоступаПользователей.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Организации) И (НастройкиПравДоступаПользователей.Пользователь = НазначениеВидовОбъектовДоступа.ГруппаПользователей ИЛИ НастройкиПравДоступаПользователей.Пользователь = ЗНАЧЕНИЕ(Справочник.ГруппыПользователей.ВсеПользователи))) ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ #КонецЕсли #Если &ИспользоватьОграничениеПоФизическиеЛица #Тогда КОГДА НазначениеВидовОбъектовДоступа.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.ФизическиеЛица) ТОГДА ВЫБОР КОГДА 1 В (ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ Справочник.ФизическиеЛица КАК ФизическиеЛица ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НастройкиПравДоступаПользователей КАК НастройкиПравДоступаПользователей ПО НастройкиПравДоступаПользователей.ОбъектДоступа = ФизическиеЛица.ГруппаДоступаФизическогоЛица И НастройкиПравДоступаПользователей.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.ФизическиеЛица) И НастройкиПравДоступаПользователей.ОбластьДанных = ЗНАЧЕНИЕ(Перечисление.ОбластиДанныхОбъектовДоступа.ФизическиеЛицаДанные) И (НастройкиПравДоступаПользователей.Пользователь = НазначениеВидовОбъектовДоступа.ГруппаПользователей ИЛИ НастройкиПравДоступаПользователей.Пользователь = ЗНАЧЕНИЕ(Справочник.ГруппыПользователей.ВсеПользователи)) ГДЕ ФизическиеЛица.Ссылка = ТекущаяТаблица.Физлицо) ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ #КонецЕсли ИНАЧЕ ИСТИНА КОНЕЦ = ЛОЖЬ)) И (НЕ ГруппыПользователей.ГруппаПользователей ЕСТЬ NULL )) #КонецЕсли |
|||
1
karpos
28.03.14
✎
09:23
|
получилось не очень красиво(
|
|||
2
Мимохожий Однако
28.03.14
✎
09:25
|
Сделай отдельную форму для "ограниченных" пользователей и при открытии через обработку события подсовывай эту форму
|
|||
3
Maxus43
28.03.14
✎
09:28
|
что значит "к некоторым полям"? РЛС не даст тебе возможность отдельные реквизиты или редактирвоать, или нет
|
|||
4
AlexITGround
28.03.14
✎
09:31
|
(0) уточни задачу, что хочешь сделать
|
|||
5
Dmumaju
28.03.14
✎
09:45
|
(0) через РЛС не получится, даже и не мечтай ))
|
|||
6
rozer76
28.03.14
✎
09:49
|
на чтение можно установить отдельные права для полей (обычно дают разрешение на код, родитель,владелец) но там где "прочие" - проверка на все сразу
|
|||
7
AlexITGround
28.03.14
✎
09:51
|
(0) ты можешь дать/не дать доступ к элементам справочников посредством к-л условий по реквизитам, но никак не убрать их с поля зрения в форме элемента.
|
|||
8
Maxus43
28.03.14
✎
09:51
|
(6) це чтоб в запросах читало и не валилось, а поглядеть их воочию - или весь справочник, или ничего
|
|||
9
karpos
28.03.14
✎
09:53
|
Вообще нужно сделать что сведения о сотрудниках компаний могли
просматривать только в отделе кадров, а у других справочник сотрудники должен открываться но персональные данные они должны видеть. |
|||
10
rozer76
28.03.14
✎
09:53
|
(8) это да и вроде только до 8.2
|
|||
11
karpos
28.03.14
✎
09:53
|
такие как серия номер паспорта и тд
|
|||
12
Maxus43
28.03.14
✎
09:54
|
(9) нельзя. Или есть доступ, или нет. Форму рисуй другую...
З.ы. в конфах на УФ может и сделано, в ЗУП что-то видел, в УПП насколько помню - нет |
|||
13
rozer76
28.03.14
✎
09:56
|
+(10) хотя например если криво rls настроен на документ (т.е. и он не должен быть виден) а в нем есть реквизит у которого нет чтения ссылки то <объект не найден> а так хоть представление будет
|
|||
14
Maxus43
28.03.14
✎
09:57
|
(13) угу, чтоб увидеть в списке - можно РЛС-ом настроить, а вот чтоб отдельные реквизиты - нет
|
|||
15
karpos
28.03.14
✎
09:58
|
Тоесть предлагаете ограничительным подсовывать другую форму при открытий?
|
|||
16
karpos
28.03.14
✎
09:59
|
Мдя УПП то сыроватая. Такая и система такой простой вещи не предусмотрели.
|
|||
17
Maxus43
28.03.14
✎
10:08
|
(16) там предусмотрено, но так: или могут сомотреть физ лиц, или нет. Частичного нет
|
|||
18
rozer76
28.03.14
✎
10:18
|
гы, есть выход но только если сделать на УФ и в роли поставить "Независимые права подчиненных объектов" и отключить доступ для конкретных реквизитов. Тогда просто не УФ их не будет видно для этой роли. Изврат конечно но вроде в УПП 1.3 уже есть несколько документов с УФ.
>>Если флажок "Независимые права подчиненных объектов" >>установлен, то при определении права на объект, >>учитывается только настройка права у этого подчиненного >>объекта. >>Проверка права родительского объекта производится до >>сложения с правами остальных ролей. После сложения ролей, >>дополнительная проверка прав родительских объектов не >>производится. |
|||
19
Dmumaju
28.03.14
✎
10:19
|
(16) точно! 5 баллов! ))
|
|||
20
Dmumaju
28.03.14
✎
10:20
|
+(19) тока не УПП, а 1С платформа
|
|||
21
karpos
28.03.14
✎
12:11
|
Dmumaju, 5 баллов то кому?
|
|||
22
karpos
28.03.14
✎
12:11
|
Значит предлагаете сделать управляемую форму для справочника ?
|
|||
23
rozer76
28.03.14
✎
12:30
|
(22) но только и режим всей сессии тоже должен быть "управляемый" только не забудь поставить "Использовать управляемые формы в толстом клиенте в обычном режиме" иначе обычные не будут открываться (конечно в толстом клиенте это только можно)
|
|||
24
mrDSide
28.03.14
✎
12:34
|
(0) я это делаю перед записью элемента, т.е. значение по ссылке <> этотобъект/объект значение И Не РольДоступна("...")
|
|||
25
mrDSide
28.03.14
✎
12:34
|
на сервере, само собой
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |