Имя: Пароль:
1C
1С v8
Как в форме определить из какого элемента начат выбор?
0 tciban
 
28.09.11
08:49
Уважаемые коллеги! Заранее прошу прощения за глупый вопрос, но
как в форме, в обработчике "ОбработкаВыбора", определить из какого элемента начат выбор? Просто на форме есть несколько реквизитов типа строка, которые должны заполнятся наименованием выбранного в выборе элемента справочника.
1 Alex375
 
28.09.11
08:59
ОбработкаВыбора формы это событие которое возникает при выборе элемента в подчиненной форме, то есть не в этой. Если тебе надо обрабатывать выбор конкретных реквизитов, тогда и обработки делай не у формы, а у реквизитов. У каждого свою обработку сделай и задача решена
2 vmv
 
28.09.11
09:01
поймать фокус выбора непросто
3 tciban
 
28.09.11
09:10
(1) событие Обработка выбора возникает в форме, открывшей форму выбора после того как в открытой подчиненной форме будет сделан выбор.

(2) и что же делать?
4 Alex375
 
28.09.11
09:13
(3) чем тебе мой ответ не понравился? Я сказал все тоже самое. Только предложил еще и решение.
5 tciban
 
28.09.11
09:25
(4) Я хотел сказать в (3) что ОбработкаВыбора вызывается в той же форме, из которой вызывали форму выбора. Попробую подробнее объяснить в чем моя проблема. У меня реквизиты имеют тип "строка". Но при нажатии педальки я выполняю в событии НачалоВыбора вызов формы выбора справочника:

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

   ФормаВыбора.Открыть();

После выбора в этой форме, в фрме где был начат выбор вызывается событие ОбработкаВыбора(ЗначениеВыбора, Источник)

И в нем исходя из переданного ЗначенияВыбора я длжен сам заполнить значение реквизита, в поле которого был начат выбор. Но как мне в ОбработкаВыбора(..) узнать откуда был начат выбор, из какого реквизита?
6 Kaushly
 
28.09.11
09:44
В событии НачалоВыбора у каждого элемента пиши ФормаВыбора = Справочники.КонтактныеЛицаКонтрагентов.ПолучитьФормуВыбора(,Элемент)
7 Kaushly
 
28.09.11
09:45
+6 И событие ОбработкаВыбора прописывай у каждого элемента
8 tciban
 
28.09.11
09:51
(7) Не понял - как это обработку выбора прописать у каждого элемента? ОбработкаВыбора Описание:
Возникает при выборе объекта в одной из подчиненных форм
9 FIXXXL
 
28.09.11
10:07
(0) мож тебе нужно ПриИзменении конкретного реквизита?
изменилось - меняй строковые реквизиты
10 tciban
 
28.09.11
10:18
Не, не проканает ввиду разного типа.
11 СвинТуз
 
28.09.11
10:25
<Владелец> (необязательный)

Тип: Форма; Элемент управления. Объект, который будет являться владельцем открываемой формы.
12 FIXXXL
 
28.09.11
11:18
(10) чего не проканает?
ПриИзменении анализируй значение и заполняй чего надо
13 tciban
 
28.09.11
13:08
Спасибо всем! Все получилось.