Имя: Пароль:
1C
 
Текущая строка таблицы управляемой формы
0 ildary
 
17.01.21
19:35
Уважаемые специалисты, подскажите пожалуйста, что за странное поведение:

1С 8.3.14.1993, на форму выведена таблица значений ВТ, надо получить её текущую строку на сервере, но когда делаю вот так:

ТекСтр = Элементы.ВТ.ТекущаяСтрока;
ТекДанныеВТ = ВТ.НайтиПоИдентификатору(ТекСтр);

Очень часто в ТекущаяСтрока попадает значение, отличающееся от идентификатора строки (больше на 1 или 2) - например в ТекСтр 9, а ВТ[1].ПолучитьИдентификатор() = 7.

Скажите пожалуста, почему так и главное, как с этим бороться?
1 Ёпрст
 
17.01.21
19:41
Никак не бороться, ибо не счем илентификатор строки не обязательно равен номеру строки..
2 Ёпрст
 
17.01.21
19:42
Собственна для этого и есть методтпоиска по идентификатору
3 ildary
 
17.01.21
19:54
(1) я понимаю, что идентификатор не равен номеру строки, поэтому я и использую НайтиПоИдентификатору(). Проблема в том, что идентификатор (Элементы.ВТ.ТекущаяСтрока) не равен идентификатору! Я зная, что мне нужна вторая строка делаю ВТ[1].ПолучитьИдентификатор() - и там величина, не равная Элементы.ВТ.ТекущаяСтрока
4 Ненавижу 1С
 
гуру
17.01.21
20:24
(3) может теперь это другая строка? поменялся порядок/состав?
5 RomanYS
 
17.01.21
20:29
(0) а зачем вообще такая конструкция? почему не просто
ТекДанныеВТ = Элементы.ВТ.ТекущиеДанные;
?
6 Ёпрст
 
17.01.21
21:22
(3)  с чего это не равен ?
7 Ёпрст
 
17.01.21
21:24
схренали у тебя вт[1] ? а не вт[2] и не [0] номер строки ты откедыва взял ?
8 Ёпрст
 
17.01.21
21:27
Может, всё же так посмотришь, что ле ?

ТекСтр = Элементы.ВТ.ТекущаяСтрока;
ТекДанныеВТ = ВТ.НайтиПоИдентификатору(ТекСтр);
Идентификатор = ТекДанныеВТ.ПолучитьИдентификатор()
9 ildary
 
17.01.21
21:58
(6) потому что после

ТекСтр = Элементы.ВТ.ТекущаяСтрока;
ТекДанныеВТ = ВТ.НайтиПоИдентификатору(ТекСтр);

в ТекДанныеВТ возвращается Неопределено.

(7) Потому что я в отладчике знаю, какая строка мне нужна и для проверки обращаюсь через вт[1].

(8) это я сделать не могу, потому что ТекДанныеВТ = Неопределено, я сам понимаю, что данный выглядит как бред, сам в шоке и вот сюда написал.
10 RomanYS
 
17.01.21
22:17
(9) А Элементы.ВТ и ВТ точно связаны? Может там другой источник (например Объект.ВТ)?
11 ildary
 
18.01.21
00:55
(10) связаны, специально проверил и переопределения нет
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.