Как установить текущую строку в табличном поле 8.1
Простая, в два шага, схема программной установки нужной нам строки активной.
Как установить строку в 8.2 (Управляемые формы) читайте здесь.
Для начала хочу напомнить, что данные табличной части документа(или таблицы значений) и табличное поле – это разные объекты. Для того чтобы сделать какие-то визуальные действия мы работаем с табличным полем. В данном случае, мы будем использовать его свойство "ТекущаяСтрока", как раз оно и отвечает за то, какая строка активна.
Чтобы выделить в табличном поле необходимую нам строку понадобится два шага:
1. Найти нужную нам строку в объекте данных которые отображает табличное поле
Подчеркну что здесь понадобиться именно объект данных. Например, у нас имеется документ РеализацияТоваровУслуг у которого есть табличная часть «Товары» и мы решили сделать активной 2-ю строку на форме документа. Тогда в модуле формы документа мы напишем:
// у второй строки индекс равен одному
НужнаяСтрока = Товары[1];
Или мы знаем, что во второй строке в колонке Номенклатура у элемента Код равен «001» тогда мы используем конструкцию:
// сначала находим элемент справочника Номенклатура по коду
// а затем ищем его в Табличной части «Товары»
НужнаяСтрока = Товары.Найти(Справочники.Номенклатура.НайтиПоКоду(«001»));
2. Установить значением текущей строки найденную строку
Теперь нам нужно присвоить значение переменной НужнаяСтрока свойству табличного поля ТекущаяСтрока:
// если табличное поле у нас тоже называется Товары
ЭлементыФормы.Товары.Текущаястрока = НужнаяСтрока;
Или
// если табличное поле называется ТабличноеПоле1
ЭлементыФормы.ТабличноеПоле1.Текущаястрока = НужнаяСтрока;
В итоге строки кода могут выглядеть вот так:
НужнаяСтрока = Товары.Найти(Справочники.Номенклатура.НайтиПоКоду(«001»));
ЭлементыФормы.ТабличноеПоле1.Текущаястрока = НужнаяСтрока;