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