новое событие
Информационный поток
Задания вакансии материалы разработки сообщения форума
Форум

Настройка шаблонов ограничений в 1С v8

    • #1
    • 26.02.2013 01:02
    • Отредактировано: 26.02.2013 01:04:55
    0
    Доброго времени суток.
    Конфигурация УТ 10.3, платформа 8.2.15.294.

    Необходимо сделать невидимыми для некоторых пользователей документы других пользователей (по принципу стандартного механизма ограничения на уровне записей по организаций и контрагентов).

    Для этого внес изменения в регистр сведений "Настройки прав доступа пользователей". В "ОбъектДоступа" и "ВладелецПравДоступа" добавил тип "СправочникСсылка.Пользователи", а также в перечисление "ВидыОбъектовДоступа" добавил "Пользователи"

    Теперь самое интересное - редактирую стандартный шаблон ограничений "ОрганизацияВШапкеКонтрагентВШапке" - добавляю следующий код
    КОГДА НазначениеВидовОбъектовДоступа.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Пользователи) ТОГДА
                                    
     ВЫБОР КОГДА
                                        #Параметр(3) = "Неопределено" ТОГДА ИСТИНА // нет ограничения по пользователю
     ИНАЧЕ
                                        
                                        ВЫБОР
                                           КОГДА ТекущаяТаблица.#Параметр(3) ССЫЛКА Справочник.Пользователи 
                                                  И НЕ ТекущаяТаблица.#Параметр(3) = ЗНАЧЕНИЕ(Справочник.Пользователи.ПустаяСсылка) ТОГДА
     
                                                ВЫБОР
                                            КОГДА 1 В
                                                   (ВЫБРАТЬ ПЕРВЫЕ 1 
                                                        1
                                                    ИЗ
                                                        (ВЫБРАТЬ
                                                            1 КАК ПолеОтбора
                                                        ) КАК Оптмизация ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НастройкиПравДоступаПользователей КАК НастройкиПравДоступаПользователей
                                                            ПО
                                                                НастройкиПравДоступаПользователей.ОбъектДоступа = ТекущаяТаблица.#Параметр(3)
     
                                                                    И НастройкиПравДоступаПользователей.ВидОбъектаДоступа = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовДоступа.Пользователи)
                                                                    И НастройкиПравДоступаПользователей.ВладелецПравДоступа = &ТекущийПользователь)
                                                ТОГДА ИСТИНА
                                            ИНАЧЕ ЛОЖЬ
                                        КОНЕЦ
                                            ИНАЧЕ
                                                ЛОЖЬ
                                            КОНЕЦ
                                            
     КОНЕЦ
    


    Сейчас есть запись:
    Объект доступа = Администратор (справочник "Пользователи")
    Вид объекта доступа = Пользователи (перечисление, доработано)
    Владелец прав доступа = Администратор (Справочник "Пользователи")
    ... (дальше стандартно, как для всех).

    После этого захожу под пользователем "user1" и все равно вижу документы всех пользователей. Подскажите что делаю не так?
    Заранее благодарен.
Для участия в обсуждении Вам необходимо авторизоваться либо   зарегистрироваться