![]() |
![]() |
![]() |
|
Табличное поле. Как указать владельца справочника при выборе значения в колонке? | ☑ | ||
---|---|---|---|---|
0
1Сергей
27.09.12
✎
12:53
|
Есть ТП с колонками Контрагент и Договоров - справочники-ссылки. Нужно, чтобы при выборе договора автоматически задавался владелец договора.
Пока сделал так Процедура ТабличноеПолеУсловияВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка) Если Колонка.Имя = "Договор" Тогда СтандартнаяОбработка = Ложь; Отбор = Новый Структура("Владелец", ВыбраннаяСтрока.Контрагент); П = Новый Структура("Отбор", Отбор); Форма = ПолучитьФорму("Справочник.ДоговорыКонтрагентов.ФормаВыбора", П); Договор = Форма.ОткрытьМодально(); Если ЗначениеЗаполнено(Договор) Тогда ТАР_Условие = ВыбраннаяСтрока.Ссылка.ПолучитьОбъект(); ТАР_Условие.Договор = Договор; ТАР_Условие.Записать(); ВыбраннаяСтрока.Договор = ТАР_Условие.Договор; КонецЕсли; КонецЕсли; КонецПроцедуры при двойном клике в ячейке отрабатывает нормально. Но через кнопку Tab сначала открывается справочник контрагентов, а потом уже договоров. Может есть какой-то другой способ указать владельца? И если нет, то какое событие возникает при начале выбора значения в колонке ТП по клавише Tab? |
|||
1
1Сергей
27.09.12
✎
12:54
|
Забыл уточнить, форма обычная
|
|||
2
hhhh
27.09.12
✎
13:00
|
(1) в свойствах поля ввода договора укажите владельца.
|
|||
3
1Сергей
27.09.12
✎
13:00
|
(2) какого поля ввода?
|
|||
4
1Сергей
27.09.12
✎
13:01
|
ТП генерится на лету
|
|||
5
hhhh
27.09.12
✎
13:04
|
(4) всё равно, генерится ведь и поле ввода, тоже на лету, и у этого поля ввода генерятся все его чудо-свойства, которые можно посмотреть в синтакс-помощнике.
|
|||
6
Kreont
27.09.12
✎
13:06
|
Форма = ПолучитьФорму("Справочник.ДоговорыКонтрагентов.ФормаВыбора");
Форма.Отбор.Владелец = ВыбраннаяСтрока.Контрагент; Договор = Форма.ОткрытьМодально(); |
|||
7
Mort
27.09.12
✎
13:06
|
На программную настройку связи по владельцу разработчики 1С забили болт.
|
|||
8
1Сергей
27.09.12
✎
13:12
|
(5) вот нету там свойства такого
|
|||
9
Kreont
27.09.12
✎
13:12
|
Точнее даже так вставить в середину (6):
Форма.Отбор.Владелец.ВидСравнения = ВидСравнения.Равно; Форма.Отбор.Владелец.Значение = ВыбраннаяСтрока.Контрагент; Форма.Отбор.Владелец.Использование = Истина; |
|||
10
Kreont
27.09.12
✎
13:13
|
(8) как, проверяешь, через подсказку после "." ? ТОгда да нету, вручную написать и будет :)
|
|||
11
1Сергей
27.09.12
✎
13:16
|
(10) через СП проверяю. Скажи название свойства ПоляВыбора, где указывается Владелец
|
|||
12
1Сергей
27.09.12
✎
13:23
|
Спасибо, ребята, помогли.
Сделал так: Процедура ТабличноеПолеУсловияПередНачаломИзменения(Элемент, Отказ) ЭлементыФормы.ТабличноеПолеУсловия.Колонки[7].ЭлементУправления.ВыборПоВладельцу = ЭлементыФормы.ТабличноеПолеУсловия.ТекущиеДанные.Контрагент; КонецПроцедуры |
|||
13
hhhh
27.09.12
✎
13:23
|
(10) что-то вы не туда совсем
(11) ЭлементыФормы.ТвоеТабличноеПоле.Колонки.Договор.ЭлементУправления.ВыборПоВладельцу = ЭлементыФормы.ТвоеТабличноеПоле.ТекущиеДанные.Контрагент; |
|||
14
zladenuw
27.09.12
✎
13:23
|
ЭлементыФормы.ТабличноеПоле.Колонки.Колонка1.ЭлементУправления.ВыборПоВладельцу = ЭлементыФормы.ТабличноеПоле.ТекущиеДанные.Колонка2;
(13) опередил :) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |