|
v7: Как сделать выбор подчиненного справочника в таблице значений | ☑ | ||
---|---|---|---|---|
0
malev35
22.08.12
✎
21:32
|
Как сделать выбор подчиненного справочника в таблице значений?
тз - тз на форме, РеквКонтрагент,РеквДоговор рекв-ты на форме //******************************************* Процедура ПриОткрытии() тз.новаяКолонка ("Контрагент"); тз.новаяколонка ("договор"); КонецПроцедуры // ПриОткрытии Процедура Сформировать() тз.новаяСтрока(); тз.Контрагент=РеквКонтрагент; тз.договор=РеквДоговор; КонецПроцедуры //====================================================================== Процедура ОбрВыбораЗначТЗ() ЗначЯч=тз.ПолучитьЗначение(тз.ТекущаяСтрока(),тз.ТекущаяКолонка());; Если тз.ТекущаяКолонка()="Контрагент" Тогда ВвестиЗначение(ЗначЯч,"контрагент","Справочник.Контрагенты"); Иначе ЗначЯч.ИспользоватьВладельца(ЗначЯч.Владелец); //ЗначЯч.Выбрать("","ФормаСписка"); //не работает ВвестиЗначение(ЗначЯч,"Договор","Справочник.Договоры"); КонецЕсли; КонецПроцедуры // ОбрВыбораЗначТЗ() |
|||
1
malev35
22.08.12
✎
21:42
|
ОбрВыбораЗначТЗ() соответственно процедура повешенная на тз, отвечает за обработку выбора ячеек в таблице значений.
|
|||
2
Злопчинский
22.08.12
✎
21:51
|
СпрД = СО("Справочник.Договоры")
СпрД.ИспользоватьВладельца(текущеезначениевладельца); СпрД.Выбрать(...); . ??? |
|||
3
viktor_vv
22.08.12
✎
21:52
|
ОткрытьПодбор();
|
|||
4
viktor_vv
22.08.12
✎
21:52
|
И в чем вопрос ? Как для каждой колонки свой обработчик организовать или что ?
|
|||
5
Злопчинский
22.08.12
✎
21:53
|
(4) как владельца установить
|
|||
6
viktor_vv
22.08.12
✎
21:55
|
До конца не уверен
ОткрытьПодбор(<Объект>,<ИмяФормы>,<КонтекстФормы>,<ФлагМножВыбора>,<ТекЗнач>) КонтекстФормы.Владелец = ЗначЯч.Владелец ; |
|||
7
viktor_vv
22.08.12
✎
21:57
|
(6)+ Скорее
КонтекстФормы.ИспользоватьВладельца(Владелец); |
|||
8
malev35
22.08.12
✎
21:58
|
(3) не работает не устанавливается владелец
(2) проверяю... |
|||
9
Злопчинский
22.08.12
✎
22:00
|
(8) ну? НУ?
|
|||
10
Злопчинский
22.08.12
✎
22:00
|
в принципеЮ и (3) должен работать...
|
|||
11
malev35
22.08.12
✎
22:04
|
(8) минутку дочка мел кушает
|
|||
12
malev35
22.08.12
✎
22:07
|
(2) экселент! работает
|
|||
13
viktor_vv
22.08.12
✎
22:08
|
(8) (6)+(7) работает, только если обработчик нужен для разных колонок, то еще нужна будет переменная модуля куда писать колонку откуда выбираешь для ОбработкиПодбора().
|
|||
14
malev35
22.08.12
✎
22:12
|
Жаль что без создание объекта не обойтись
(13) не совсем понял как владельца установить в Вашем случае, тз.ТекущаяКолонка() вроде как нормально обрабатывает выбор |
|||
15
malev35
22.08.12
✎
22:15
|
и да, если требуется изменение в коде самого справочника, то не подходит
|
|||
16
Злопчинский
22.08.12
✎
22:16
|
(14) если создание объекта мешает - тогда копай ОткрытьПодбор - должно работать.
. но что-то мне подсказывает что Спр.Выбрать в твеоем случае будет лучше - так как вряд ли тебе надо множество объектов - и можно сразу обработать выбор из справочника, а открытьподбор - требует для обработки выбора - отдельной предопределенной процедуры - а вней может быть недоступен контекст той процедуры из которой открываешь подбор |
|||
17
viktor_vv
22.08.12
✎
22:17
|
(14)
Процедура Сформировать() Перем Конт ; ОткрытьПодбор("Справочник.ПрайсПоСкладам",,Конт,0); Конт.ИспользоватьВладельца(фасТовар,0); КонецПроцедуры |
|||
18
malev35
22.08.12
✎
22:23
|
так не работает открывается справочник контрагентов
Процедура ОбрВыбораЗначТЗ() Перем Конт; СпрД = СоздатьОбъект("Справочник.Договоры"); ЗначЯч=тз.ПолучитьЗначение(тз.ТекущаяСтрока(),тз.ТекущаяКолонка());; Если тз.ТекущаяКолонка()="Контрагент" Тогда ВвестиЗначение(ЗначЯч,"контрагент","Справочник.Контрагенты"); Иначе //СпрД.ИспользоватьВладельца(ЗначЯч.Владелец); //СпрД.Выбрать("","ФормаСписка"); ОткрытьПодбор("Справочник.Договоры",,Конт,0); Конт.ИспользоватьВладельца(ЗначЯч.Владелец,0); КонецЕсли; КонецПроцедуры |
|||
19
viktor_vv
22.08.12
✎
22:25
|
(18) Ну не знаю, в (17) рабочий код. В ЗначЯч есть что-то ?
|
|||
20
Злопчинский
22.08.12
✎
22:27
|
(18) обозначь конкретную ФОРМУ ДЛЯ ПОДБОРА при вызове
возможно что при открытии подбора подчиненного справочника - если не определен владелец - в форме спр.договора принудительно открывается для выбора владельца |
|||
21
viktor_vv
22.08.12
✎
22:29
|
(20) Не, с пустым владельцем ругается на неверное значение, но открывает форму подчиненного справочника. Но форму таки лучше определить явно.
|
|||
22
malev35
23.08.12
✎
22:57
|
ммм, а ФормаСписка есть у всех справочников, если ее указать для подбора то работает.
|
|||
23
malev35
23.08.12
✎
23:15
|
просто для примера указан справочник.договоры в оригинале может быть любой
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |