|
Как программно установить курсор на текущее поле ввода в табличной части обычной формы? | ☑ | ||
---|---|---|---|---|
0
Mikhail Volkov
12.12.21
✎
14:49
|
Перед записью документа с табличной частью Состав проверяется заполненность реквизитов Сделка. Если Сделка не заполнена, то происходит отказ от записи. И желательно, чтобы курсор встал на это поле - стало активным. Написал так:
Для каждого Строка Из Состав Цикл Если обЗначениеНеЗаполнено(Строка.Сделка) Тогда ЭтаФорма.ЭлементыФормы.Состав.ТекущаяСтрока = Строка; ЭтаФорма.ЭлементыФормы.Состав.ТекущаяКолонка = Строка.Сделка; : КонецЕсли; КонецЦикла; Но в описании ТекущаяКолонка сказано: если устанавливается значение Неопределено, то активная колонка сбрасывается. У меня курсор вообще исчезает!? Если убрать ЭтаФорма.ЭлементыФормы.Состав.ТекущаяКолонка = Строка.Сделка; то курсор встает на нужную строку, но колонка прежняя. Как установить курсор на нужную колонку? |
|||
1
vicof
12.12.21
✎
14:54
|
А тип у текущей колонки какой?
|
|||
2
vicof
12.12.21
✎
14:55
|
точней у ТекущаяКолонка
|
|||
3
Мимохожий Однако
12.12.21
✎
15:29
|
В оформлении ячейки Отметка не заполненного установить в истину.
|
|||
4
Mikhail Volkov
12.12.21
✎
15:32
|
(1) Документ, обычно Заказ-наряд, или какая ни будь Реализация...
(2) Переписал: ЭтаФорма.ЭлементыФормы.Состав.ТекущаяКолонка = ТипЗнч(Строка.Сделка); Ошибка при установке значения атрибута контекста (ТекущаяКолонка) по причине: Несоответствие типов. Как правильно написать тип колонки? |
|||
5
Mikhail Volkov
12.12.21
✎
15:33
|
(3) Это как?
|
|||
6
Мимохожий Однако
12.12.21
✎
16:00
|
(5) В нужном поле использовать АвтоОтметкаНезаполненного.
.. Или пример из СП Сообщение = Новый СообщениеПользователю(); Сообщение.Текст = НСтр("ru = 'В строке 11 табличной части Номенклатура не хватает " + "; en = 'In line 11 of tabular section Nomenclature is missing' ") + НедостающееКоличество + " " + ЕдиницаИзмеренияНоменклатуры; Сообщение.Поле = "Номенклатура[10].Количество"; Сообщение.УстановитьДанные(ОбъектДанных); Сообщение.Сообщить(); |
|||
7
Mikhail Volkov
12.12.21
✎
16:13
|
(6) А как это сделать? Пример не понял, к чему?
Переписал конкретно: ЭтаФорма.ЭлементыФормы.Состав.ТекущаяКолонка = Тип("ДокументСсылка.РеализацияТоваров") - та же ошибка!? Из описания ТекущаяКолонка: Содержит текущую колонку табличного поля. Если данному свойству присвоить КолонкаТабличногоПоля, то произойдет активизация указанной колонки. Как присвоить КолонкаТабличногоПоля? |
|||
8
hhhh
12.12.21
✎
16:42
|
(7) как это может такое быть? Текущая колонка равна типу??
|
|||
9
hhhh
12.12.21
✎
16:42
|
бред какой-то
|
|||
10
hhhh
12.12.21
✎
16:43
|
(7) отладчиком пройдите и посмотрите, что находится в ЭтаФорма.ЭлементыФормы.Состав.ТекущаяКолонка
|
|||
11
Ёпрст
12.12.21
✎
17:45
|
(0)
ЭлементыФормы.Состав.ТекущаяКолонка = элементыФормы.Состав.Колонки.Сделка; |
|||
12
Mikhail Volkov
12.12.21
✎
18:27
|
(10) Ничего, даже написал: КолонкаТабличногоПоля = ЭтаФорма.ЭлементыФормы.Состав.ТекущаяКолонка; - ничего не вижу, в этих строках Строка.Сделка не заполнена. А в заполненных - документы сделок. Это (2) меня сбил, ну и: Ошибка при установке значения атрибута контекста (ТекущаяКолонка) по причине: Несоответствие типов.
(11) Спс, так сработало! Вроде раньше пробовал так... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |