|   |   | 
| 
 | Переопределено получение формы объекта в зависимости от права доступа | ☑ | ||
|---|---|---|---|---|
| 0
    
        shadowax 11.10.24✎ 22:47 | 
        Есть справочник сотрудники в котором есть ФормаПользователя в которой имеется информация о сотрудниках и есть ФормаАдминистратора в которой есть все те же реквизиты что и в ФормеПользователя но и  возможность задавать пароль и уникальный инд. и вкл или вкл возможность сотрудника из справочника заходить под своим именем в ИБ как пользователь. Задача стоит в том что бы реализовать в модулем менеджера Справочник.Сотрудники переопределено получение формы объекта в зависимости от права доступа «Администрирование».
 С формой элемента «ФормаАдминистратора» которая открывается для пользователей с правом доступа «Администрирование» и с формой элемента «ФормаПользователя» Которая открывается для пользователей без права доступа «Администрирование» Не понимаю как это сделать. Сижу уже 3 час голову ломаю. Пытался через Если ПользователиИнформационнойБазы.ТекущийПользователь().Роли.Содержит(Администатор) Тогда ОткрытьФорму("Справочник.Сотрудники.Форма.ФормаАдминистратора"); Но додумать не получается. | |||
| 1
    
        Волшебник 11.10.24✎ 22:48 | 
        Вы различаете "что бы" и "чтобы"?     | |||
| 2
    
        shadowax 11.10.24✎ 22:55 | 
        (1) я из Африка     | |||
| 3
    
        denk32 11.10.24✎ 22:56 | 
        (0) попробуйте использовать РольДоступна     | |||
| 4
    
        denk32 11.10.24✎ 22:58 | 
        Если РольДоступна("Администратор") тогда
 ФормаАдминистратора Иначе ФормаПользователя Конец | |||
| 5
    
        lEvGl 11.10.24✎ 23:03 | 
        "Переопределено" - новый тип данных. Переопределено <> Неопределено     | |||
| 6
    
        Волшебник 11.10.24✎ 23:05 | 
        (2) Вы негр?     | |||
| 7
    
        lEvGl 11.10.24✎ 23:08 | 
        ну нерусский точно)     | |||
| 8
    
        Волшебник 11.10.24✎ 23:09 | 
        (7) Наверняка.     | |||
| 9
    
        Волшебник 11.10.24✎ 23:10 | 
        3 часа он голову ломает...
 Падла... Башка-то у тебя есть? Сука! Мудила! | |||
| 10
    
        DiMel_77 13.10.24✎ 17:43 | 
        (0) А как вы в модуле менеджера открываете форму?
 То что вы хотите делается просто: 1) Добавляете предопределенную процедуру модуля менеджера ОбработкаПолученияФормы() 2) Прописываете условие типа Пользователи.РолиДоступны("ПолныеПрава") (Или администрирование) 3) Ставите обработчик переопределения выбранной формы. Код должен быть типа такого:    Если ВидФормы = "ФормаОбъекта" Тогда
	
		СтандартнаяОбработка = Ложь;
	Если Пользователи.РолиДоступны("ПолныеПрава") Тогда
	
	   ВыбраннаяФорма = "Справочник.Сотрудники.Форма.ФормаАдминистратора";
		Иначе
		   ВыбраннаяФорма = "Справочник.Сотрудники.Форма.ФормаПользователя";
		КонецЕсли;
   КонецЕсли;Только не лень вам формы плодить с одинаковым функционалом, проще разрулить ролями в одной форме... | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |