|
Множественный подбор при вызове формы выбора | ☑ | ||
---|---|---|---|---|
0
Rollam
05.11.14
✎
17:26
|
Вызываю форму выбора следующим образом:
Процедура КоманднаяПанель1ГрузчикиНабПодбор(Кнопка) ФормаПодбора = Справочники.ФизическиеЛица.ПолучитьФормуВыбора("ФормаВыбора","ЭлементыФормы."); ФормаПодбора.РежимВыбора=Истина; ФормаПодбора .МножественныйВыбор = Истина; ФормаПодбора .ЗакрыватьПриВыборе=Ложь; ФормаПодбора .ОткрытьМодально(); КонецПроцедуры |
|||
1
Rollam
05.11.14
✎
17:31
|
"ОткрытьМодально()" не возвращает значение множественного подбора. Процедура обработки выбора в форме выбора справочника "Физические лица", где можно было бы работать с результатом выбора, не вызывается.
И форму выбора вызываю следующим образом (выше написано неверно): ФормаПодбора = Справочники.ФизическиеЛица.ПолучитьФормуВыбора(, ЭтаФорма); Логика работы механизма выбора начала от меня ускользать... Помогите) |
|||
2
vicof
05.11.14
✎
17:33
|
Модально не нужно,
Второй параметр в получить форму нормально напиши |
|||
3
vicof
05.11.14
✎
17:33
|
ФормаПодбора = Справочники.ФизическиеЛица.ПолучитьФормуВыбора(, ЭтаФорма)
значит в форме или обработчик обработка выбора |
|||
4
vicof
05.11.14
✎
17:34
|
ищи*
|
|||
5
Rollam
06.11.14
✎
09:14
|
Это все я уже поправил, просто невнимательность при копировании (мое второе сообщение).
Открывать модально или немодально - все равно не получаю никакого результата. Модальное открытие формы, по крайней мере, может вернуть одно значение. Я вот совсем не понимаю, почему не происходит вызов обработки выбора в форме выбора справочника. |
|||
6
Rollam
06.11.14
✎
11:55
|
Нашел описание метода в документации. Описано все тоже, что и делаю я, но он не работает!
Описание из документации: При таком выборе пользователь может выделить сразу несколько элементов (например, с помощью клавиши Ctrl) и после нажатия кнопки "Выбрать" система вернет массив выбранных элементов, а не один элемент, как в первом случае. Процедура кпТоварыПодбор(Кнопка) ФормаПодбора = Справочники.Номенклатура.ПолучитьФормуВыбора(,ЭтаФорма); ФормаПодбора.МножественныйВыбор = Истина; ФормаПодбора.ЗакрыватьПриВыборе = Ложь; ФормаПодбора.Открыть(); КонецПроцедуры Тогда обработчик события ОбработкаВыбора можно написать так: Процедура ОбработкаВыбора(ЗначениеВыбора, Источник) МассивВыбранныхЭлементов = Новый Массив; Если ТипЗнч(ЗначениеВыбора) = Тип("СправочникСсылка.Номенклатура") Тогда МассивВыбранныхЭлементов.Добавить(ЗначениеВыбора); ИначеЕсли ТипЗнч(ЗначениеВыбора) = Тип("Массив") Тогда МассивВыбранныхЭлементов = ЗначениеВыбора; КонецЕсли; Для каждого Элемент Из МассивВыбранныхЭлементов Цикл //действия с очередным элементом КонецЦикла; КонецПроцедуры |
|||
7
Йохохо
06.11.14
✎
11:58
|
(6) РежимВыбора потерялся
|
|||
8
Rollam
06.11.14
✎
11:59
|
(7) Режим выбора я указываю.
Процедура КоманднаяПанель1ГрузчикиНабПодбор(Кнопка) ФормаПодбора = Справочники.ФизическиеЛица.ПолучитьФормуВыбора(, ЭтаФорма); ФормаПодбора.РежимВыбора=Истина; ФормаПодбора .МножественныйВыбор = Истина; ФормаПодбора .ЗакрыватьПриВыборе=Ложь; ФормаПодбора .ОткрытьМодально(); КонецПроцедуры |
|||
9
marvak
06.11.14
✎
12:01
|
(0)
А как выбор в вызываемой форме делаешь? Действия -> Выбрать? |
|||
10
Rollam
06.11.14
✎
12:12
|
(9) По кнопке "Выбор". Слева вверху которая.
|
|||
11
Rollam
06.11.14
✎
16:54
|
Кстати, подбор пытаюсь реализовать на неуправляемых формах.
|
|||
12
vicof
06.11.14
✎
16:56
|
ОповеститьОВыборе() сделай при окончаниии выбора
|
|||
13
Rollam
06.11.14
✎
17:01
|
(12) В обработчике "ОбработкаВыбора()"?
|
|||
14
vicof
06.11.14
✎
17:05
|
(13) При закрытии формы подбора
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |