|
8.2 ФормаВыбора: выбор своей формы выбора при условии |
☑ |
0
News
14.05.12
✎
11:43
|
Доброго времени суток.
Кто нибудь сталкивался с такой проблемой:
При условии необходимо выбирать свою форму выбора (не та которая по умолчанию). Делаю так:
&НаСервере
Процедура УстановитьФормыВыбора()
Если ЗначениеЗаполнено(Объект.Условие) тогда
Элементы.Номенклатура.ФормаВыбора = "Справочник.Номенклатура.Форма.ФормаВыбораДоп";
Иначе
Элементы.Номенклатура.ФормаВыбора = "Справочник.Номенклатура.Форма.ФораВыбора";
Конецесли
КонецПроцедуры
&НаКлиенте
Процедура НоменклатураНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
УстановитьФормыВыбора();
КонецПроцедуры
При начале выбора первый раз открывается всегда форма выбора по умолчанию. Когда второй раз нажимаю, то открывается правильная форма выбора, заданная по условию.
|
|
1
experimentator76
14.05.12
✎
11:47
|
"ФораВыбора" ?
|
|
2
experimentator76
14.05.12
✎
11:48
|
или туда не попадает ?
|
|
3
News
14.05.12
✎
12:00
|
ой , "ФормаВыбора", пардон
|
|
4
vmv
14.05.12
✎
12:02
|
клиент не "видит" измерений на сервере пока серверная и клиентская формы не будут синхронизированы, делай выводы
|
|
5
News
14.05.12
✎
12:02
|
при первом нажатии открывается "ФормаВыбора" всегда (она по умолчанию), хотя условие срабатывает..это видимо из за того что на Сервере меняю форму выбора, может нужно что то на клиенте сделать?
|
|
6
vmv
14.05.12
✎
12:02
|
не видит модификаций формы
|
|
7
vmv
14.05.12
✎
12:05
|
Примечание:
В обработчике данного события нельзя использовать серверные методы формы с директивой компиляции &НаСервере.
задумайся зачем я это написал, сделай вывод и реализуй правильно. Помни, если ты допер и сделал сам - ты спец, если тебе все выложили - ты ничто
|
|
8
News
14.05.12
✎
12:06
|
(7) спасибо, допер
|
|
9
5 Элемент
14.05.12
✎
12:18
|
В 8.2 есть нормальный механизм для открытия нужной формы выбора
Использовать нужно событие ОбработкаПолученияФормы
|
|
10
News
14.05.12
✎
12:48
|
(9) Сделал через эту обработку, получилось. Спасибо 5 Элемент)
Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка)
Если ВидФормы = "ФормаВыбора" Тогда
Если Параметры.Отбор.Свойство("Условие") Тогда
СтандартнаяОбработка = Ложь;
ВыбраннаяФорма = "Справочник.Номенклатура.Форма.ФормаВыбораДоп";
КонецЕсли;
КонецЕсли;
КонецПроцедуры
|
|