Имя: Пароль:
1C
1С v8
Проблема текущей строкой таблицы в управляемой форме
0 1cv78
 
13.08.15
13:14
Столкнулся с ужасным глюком в таблице формы. Интерфейс Такси 8.3, послдений релиз, тонкий клиент.
Изначально требуется несколько раз перезаполнять таблицу в форме и запоминать каждый раз выбранную строку. Таблица привязана к одноименному реквизиту формы с идентичными реквизитами
При каждом перезаполнении визуально проблем не замечаю, но когда пытаешься обратиться к свойству "Элементы.ТабличнаяЧасть.ТекущаяСтрока", то в это свойство накручивается число добавленных ранее строк, которые давно уже удалены, поскольку каждый раз для реквизита используется метод "Загрузить"... Пробовал и очищать реквизит - ситуация та же. пока форму не закроешь, залипают несуществующие строки.
Кто-то пробовал с этим бороться?
1 Asmody
 
13.08.15
13:16
ТекущаяСтрока ? Номер строки
2 1cv78
 
13.08.15
13:17
Забыл написать. Щас уже обращаюсь так:
Элементы.ТабличнаяЧасть.ТекущиеДанные.НомерСтроки

Но это не спасает. Мне потом нужно устанавливать эту строку, но это уже нереально...
3 Asmody
 
13.08.15
13:17
блин.
ТекущаяСтрока это не Номер строки.
4 1cv78
 
13.08.15
13:18
Хорошо, а как установить-то заполненным выбором при следующем заполнении? Номер уже знаю.
5 Asmody
 
13.08.15
13:18
ПолучитьИдентификатор()
НайтиПоИдентификатору()
6 1cv78
 
13.08.15
13:20
Чот среди методов такой отсутствует.
Это же не рекивзит формы, а элемент...
7 Asmody
 
13.08.15
13:22
(6) Обратись к ДенисЧ, он регулярно устраивает распродажи СП
8 1cv78
 
13.08.15
13:22
Ой. Сорри, почитал...
9 1cv78
 
13.08.15
13:22
Спасибо, ща попробую!
10 1cv78
 
13.08.15
13:45
Не, чот не прикручивается...
Даже если я что-то найду по идентификатору, как мне поставить курсор на нужную строку?

(3) Текущая строка - это как раз номер строки. В отладчике видно. Пока второй раз не перезаполнишь ТЧ, там все верно показывает и устанавливает на нужную строку.
11 Asmody
 
13.08.15
13:53
(10) Плохо читал

ТаблицаФормы (FormTable)
ТекущаяСтрока (CurrentRow)
Использование:

Чтение и запись.
Описание:

Тип: Произвольный.
Идентификатор текущей строки таблицы.
12 Asmody
 
13.08.15
13:58
Получение строки, выбранной на форме:
ТабЧасть.НайтиПоИндентификатору(Элементы.ТабЧасть.ТекущаяСтрока);

Выделение на форме нужной строки:
НужнаяСтрокаТЧ = ТабЧасть[1]; // например
Элементы.ТабЧасть.ТекущаяСтрока = НужнаяСтрокаТЧ.ПолучитьИдентификатор();
13 1cv78
 
13.08.15
14:14
ОМГ!!! Взлетело!!!
Спасибо огромное!
Если честно, меня отладчик смутил, он четко сказал, что значение типа число, хотя в справочнике всё верно было написано...
14 1cv78
 
13.08.15
14:17
Хотя да, туплю же, может быть и число...
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс