helpf.pro
Регистрация
 -5 
Распечатать

Табличное поле ~ Как установить текущую строку в табличном поле?

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

Или мы знаем, что во второй строке в колонке Номенклатура у элемента Код равен «001» тогда мы используем конструкцию:
Код 1C v 8.х
 // сначала находим элемент справочника Номенклатура по коду
// а затем ищем его в Табличной части «Товары»
НужнаяСтрока = Товары.Найти(Справочники.Номенклатура.НайтиПоКоду(«001»));

2. Установить значением текущей строки найденную строку
Теперь нам нужно присвоить значение переменной НужнаяСтрока свойству табличного поля ТекущаяСтрока:
Код 1C v 8.х
 // если табличное поле у нас тоже называется Товары
ЭлементыФормы.Товары.Текущаястрока = НужнаяСтрока;

Или
Код 1C v 8.х
 // если табличное поле называется ТабличноеПоле1
ЭлементыФормы.ТабличноеПоле1.Текущаястрока = НужнаяСтрока;

В итоге строки кода могут выглядеть вот так:
Код 1C v 8.х
 НужнаяСтрока = Товары.Найти(Справочники.Номенклатура.НайтиПоКоду(«001»));
ЭлементыФормы.ТабличноеПоле1.Текущаястрока = НужнаяСтрока;
Разместил:   Версии: | 8.x |  Дата:   Прочитано: 98706
 -5 
Распечатать
Возможно, вас также заинтересует
Как заполнить табличную часть формы программно? 8
Нужно по кнопке Заполнить - сформировать данные для заполнения табличных частей и заполнить их. Форма имеет вид: Рядом с кнопкой Записать и закрыть добавлена кнопка Заполнить документ , код ее команды: // Код заполнения ТЧ НаСервере П
17 правил для составления оптимального ЗАПРОСа к данным базы 1С 50
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получ
1C и Google Maps 21
была поставлена задача отображения на географической карте медицинских учреждений. После обзора предлагаемых решений был выбран сервис google. Но так же подобного рода подход будет работать и с картами сервиса yandex. Во время решения задачи было реш
1С 7.x : Как получить курсы валют с сайта НБУ http://www.bank.gov.ua/ за любую дату ? 6
Функция ПолучитьТаблицуКурсовНБУ(ДатаКурса, Ежедневно = 1) // если в качестве второго параметра указать число отличное от 1 - получем валюты, которые котируются на ежемесячной основе Перем Reader, Url, Точки, HtmlTab, Строк, Р, НомСтроки, НомЯче
1С 8.x : Как убрать лидирующие нули в номере Документа (вариант2) 0
Скопировать строку с номером, с лидирующими нулями, в числовом поле (с форматом без групп, без группировки), и вернуть(скопировать) обратно в строковом поле с номером. Возвращает без нулей.
Посмотреть все результаты поиска похожих
Комментарии
ivnik
28.07.2016 00:19Комментарий: 2
ivnik

А у меня при использовании этой "конструкции" почему-то возникает ошибка!

Код 1C v 8.2 УП
 Для Каждого ТекСтрока Из ТЗОшибок Цикл  // Дозаполним таблицы сопоставления Видов расчета   
Код 1C v 8.2 УП
 ТС = СинхрОснВР.Добавить();   
Код 1C v 8.2 УП
 ТС.ВидРасчетаЗиК = ТекСтрока.ВидРасчета;   
Код 1C v 8.2 УП
 НомПоследнейСтроки = ТС.НомерСтроки;   
Код 1C v 8.2 УП
 КонецЦикла;   
Код 1C v 8.2 УП
 ЭлементыФормы.СинхрОснВР.ТекущаяСтрока = НомПоследнейСтроки;   
Код 1C v 8.2 УП
 ЭтаФорма.Панель.ТекущаяСтраница = ЭтаФорма.Панель.Страницы.НастройкаВР;   

Ошибка:

{Форма.Форма.Форма(187)}: Ошибка при установке значения атрибута контекста (ТекущаяСтрока)

ЭлементыФормы.СинхрОснВР.ТекущаяСтрока = НомПоследнейСтроки;

по причине: Отсутствует ключ строки

t63723
31.03.2014 09:33Комментарий: 1
t63723
Для управляемых форм, если установка идет на сервере нужно добавить к строке ПолучитьИдентификатор();

Код 1C v 8.2 УП
 
НужнаяСтрока = Товары.Найти(Справочники.Номенклатура.НайтиПоКоду(«001»));
ЭлементыФормы.ТабличноеПоле1.Текущаястрока = НужнаяСтрока.ПолучитьИдентификатор();
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.