Имя: Пароль:
1C
1С v8
Подписка на событие ОбработкаПолученияФормы
0 kiabs
 
23.10.12
17:45
Создаю подписку на событие ОбработкаПолученияФормы.
Хочу , что бы при открытие УФ процедура открывала Обычную Форму.
Вот процедура , которая отрабатывает:
Процедура kiabs_ОткрытиеУпрФормыНоменклОбработкаПолученияФормы(Источник, ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка) Экспорт
   СтандартнаяОбработка = Ложь;
   Объект = Параметры.Ключ;
   ВыбраннаяФорма = Объект.ПолучитьФорму("ФормаЭлемента");
   ВыбраннаяФорма.Открыть();    
КонецПроцедуры

Все работает нормально, открывается нужная форма НО с ошибкой
"Неправильный идентификатор формы"
Как этой ошибки избежать? Где этот идентификатор задается?
1 kiabs
 
23.10.12
17:50
Забавно, что если не менять СтандартнаяОбработка:
СтандартнаяОбработка = Истина;
то открываются обе формы (прописанная как основная в объекте) и нужная мне
2 kiabs
 
23.10.12
17:51
(1) Но уже Без ошибки!!!
3 zladenuw
 
23.10.12
17:52
ну в СП написано что

необходимо установить в параметре <ВыбраннаяФорма> другое имя формы или объект метаданных формы, которую требуется открыть

<ВыбраннаяФорма>

Содержит имя открываемой формы или объект метаданных Форма.
Если значение параметра изменено, то будет осуществлен поиск формы в пределах объекта, для которого открывается форма.
4 kiabs
 
23.10.12
18:21
(3) Даже когда вот так передаю все равно ошибка вылезает

ВыбраннаяФорма = метаданные.Справочники.Номенклатура.Формы.ФормаЭлемента;
5 zladenuw
 
23.10.12
18:22
а так ВыбраннаяФорма = "ФормаЭлемента";
6 kiabs
 
23.10.12
18:23
(5) тоже самое =(
7 zladenuw
 
23.10.12
18:32
а ты где вызываешь то ?
я вот открыл модуль менеджера. и вот так

Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка)
   // Вставить содержимое обработчика.
   СтандартнаяОбработка = Ложь;
   ВыбраннаяФорма = "ФормаЭлемента1";
КонецПроцедуры
                               

и все ок
8 zladenuw
 
23.10.12
18:38
пока весь код свой. нету ошибки.
9 kiabs
 
23.10.12
18:46
(7) у меня процедура вызывается подпиской на события.
10 zladenuw
 
23.10.12
18:55
сделал так же все ок. платформа какая ?
11 kiabs
 
23.10.12
20:33
Я разобрался. Ошибка возникает из-за того, что пытаюсь Обычную Форму вызвать, Если вызывать оправляемую, то все работает
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший