Приветствую Вас ГостьЧетверг, 16.01.2025, 00:46

Каталог статей


Разные формы откытия объекта

У документа есть несколько форм. Надо для для пользователя с определенной ролью открыть нужную форму.

Нашел несколько вариантов решения:

1. В модуле менеджера документа в событии ОбработкаПолученияФормы() добавить код:

Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка) 
    
    Если ВидФормы <> "ФормаДокумента" И ВидФормы <> "ФормаОбъекта" Тогда
        Возврат;
    КонецЕсли;
    
    // #Если НЕ ТолстыйКлиентОбычноеПриложение Тогда
    Если РольДоступна("РольКладовщик") Тогда
        СтандартнаяОбработка = Ложь;
        ВыбраннаяФорма = "Документ.ПоступлениеТоваровУслуг.Форма.ФормаДокумента_Кладовщик";
    КонецЕСли;
    //#КонецЕсли
    
КонецПроцедуры 

2. В форме списка обработка выбора: (не проверял, надо прверять)

Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
    
    СтандартнаяОбработка = Ложь;
    Если Не ВыбраннаяСтрока = Неопределено Тогда 
        Форма = ВыбраннаяСтрока.ПолучитьФорму("Документ.ПоступлениеТоваровУслуг.Форма.ФормаДокумента_Кладовщик");
        Форма.Открыть();
    КонецЕсли;
    
КонецПроцедуры 

3. В основной форме документа (тоже не проверял)

&НаКлиенте
Процедура ПриОткрытии(Отказ)
    Если РольДоступна("РольКладовщик") Тогда 
        Форма = ПолучитьФорму("Документ.ПоступлениеТоваровУслуг.Форма.ФормаДокумента_Кладовщик", );
        Форма.Открыть(); 
        Отказ = Истина;
    КонецЕсли; 
КонецПроцедуры
Категория: Формы | Добавил: leshic (28.10.2024)
Просмотров: 21 | Рейтинг: 0.0/0
Всего комментариев: 0
Вход на сайт
Поиск
Категории раздела
СКД [50]
Регистры [7]
Формы [47]
Администрирование [41]
Запросы [10]
Объекты конфигурации и типы данных [20]
Взаимодействие с другими базами, приложениями и источниками данных [16]
Программирование [41]
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0