|
ОбработкаВыбора в управляемой форме срабатывает дважды | ☑ | ||
---|---|---|---|---|
0
Управляемые Формы
06.02.12
✎
18:03
|
Есть документ, в котором есть команда, суть которой - выбрать обработчик из модуля "ОбработкаЗаполнения"
В модуле формы документа: &НаКлиенте Процедура ДобавитьЗаказПокупателя(Команда) СтруктураОтбора = Новый Структура; СтруктураОтбора.Вставить("Контрагент",Объект.Контрагент); СтруктураОтбора.Вставить("ДоговорКонтрагента",Объект.ДоговорКонтрагента); СтруктураОтбора.Вставить("Склад",Объект.Склад); СтруктураОтбора.Вставить("СписокЗаказов",Сервер_СписокЗаказов()); ФормаСпискаЗаказов = ОткрытьФорму("Документ.ЗаказПокупателя.Форма.ФормаВыбораУпр", СтруктураОтбора, ЭтаФорма); КонецПроцедуры Вызывается управляемая форма списка, в которой есть код: &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(Список.Отбор, "Контрагент", Параметры.Контрагент); ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(Список.Отбор, "ДоговорКонтрагента", Параметры.ДоговорКонтрагента); ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(Список.Отбор, "СкладГруппа", Параметры.Склад); ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(Список.Отбор, "Ссылка", Параметры.СписокЗаказов, ВидСравненияКомпоновкиДанных.НеВСписке); ЭтаФорма.ЗакрыватьПриВыборе = Ложь; КонецПроцедуры &НаКлиенте Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) ОповеститьОВыборе(ВыбраннаяСтрока); ТекущийСписокОтбора = Список.Отбор.Элементы[3].ПравоеЗначение; ТекущийСписокОтбора.Добавить(ВыбраннаяСтрока); ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(Список.Отбор, "Ссылка", ТекущийСписокОтбора, ВидСравненияКомпоновкиДанных.НеВСписке); КонецПроцедуры В модуле формы документа есть еще &НаКлиенте Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора) Если Не ВыбранноеЗначение = Неопределено Тогда Сервер_ЗаполнитьПоЗаказуПокупателя(ВыбранноеЗначение); Элементы.Товары.Обновить(); КонецЕсли; КонецПроцедуры Так вот, Выбираю в форме выбора двойным кликом заказ покупателя, а в процедуру "ОбработкаВыбора" заходит дважды. Что я не так делаю? |
|||
1
Управляемые Формы
06.02.12
✎
18:05
|
&НаКлиенте
Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) //ЗАБЫЛ // СтандартнаяОбработка = Ложь; // ОповеститьОВыборе(ВыбраннаяСтрока); ТекущийСписокОтбора = Список.Отбор.Элементы[3].ПравоеЗначение; ТекущийСписокОтбора.Добавить(ВыбраннаяСтрока); ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(Список.Отбор, "Ссылка", ТекущийСписокОтбора, ВидСравненияКомпоновкиДанных.НеВСписке); КонецПроцедуры |
|||
2
Mort
06.02.12
✎
18:14
|
ОповеститьОВыборе(ВыбраннаяСтрока) - раз, стандартная обработка - два
|
|||
3
Управляемые Формы
06.02.12
✎
18:21
|
(2) Спасибо! Разобрался )
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |