![]() |
|
ВыделенныеСтроки расчет значение индекса после каждого использования | ☑ | ||
---|---|---|---|---|
0
Jenstel
05.12.18
✎
11:27
|
&НаСервере
Процедура ПолучитьРезультатыНаСервере() ТЧ = Объект.Запросы; ВыделенныеСтроки = Элементы.СписокЗапросов.ВыделенныеСтроки; Для Каждого ТекСтрока Из ВыделенныеСтроки Цикл ПолучениеРезультата(ТЧ[ТекСтрока]); КонецЦикла; ОбновитьСписокЗаявок(); КонецПроцедуры Доброго времени суток. Использую такой код для перебора выделенных в таблице строк и выполнения по ним запроса, но с каждым повторным выполнением этой процедуры значение ТекСтрока увеличивается на количество строк в таблице. Что не так? |
|||
1
dezss
05.12.18
✎
11:32
|
Такое может быть, если ТЧ перезаполняется.
|
|||
2
hhhh
05.12.18
✎
11:35
|
(0) ТекСтрока - это не индекс теперь. Это раньше был индекс, в обычных формах.
|
|||
3
dezss
05.12.18
✎
11:40
|
(2) ТаблицаФормы (FormTable)
ВыделенныеСтроки (SelectedRows) Использование: Только чтение. Описание: Тип: Массив. Содержит массив идентификаторов выделенных строк. А идентификатор - это ж и есть индекс, если не ошибаюсь... |
|||
4
Cyberhawk
05.12.18
✎
11:42
|
(3) Ошибаешься
|
|||
5
Jenstel
05.12.18
✎
11:42
|
(1) А как сделать правильно?
|
|||
6
dezss
05.12.18
✎
11:43
|
(4) а что это тогда?
|
|||
7
Jenstel
05.12.18
✎
11:43
|
Список перезаполняетя, и я так понимаю значение индекса увеличивается с каждым перезаполнением. Как правильно тогда обращаться в выделенным строкам? Можно кусок кода?
|
|||
8
Cyberhawk
05.12.18
✎
11:45
|
(6) Идентификатор - то, что позволяет однозначно идентифицировать
|
|||
9
dezss
05.12.18
✎
11:45
|
(7) А что тебя не устраивает в (0)?
Может тебе не надо каждый раз перезаполнять, а только добавлять/изменять/сортировать? |
|||
10
dezss
05.12.18
✎
11:45
|
(8) хм...ну так индекс, не?)))
|
|||
11
Cyberhawk
05.12.18
✎
11:45
|
Вероятно, обычный инкремент. С индексом не соотносится, т.к. индекс всегда с нуля, а идентификатор - нет.
|
|||
12
Cyberhawk
05.12.18
✎
11:46
|
(10) При первом открытии вероятно совпадает с индексом. При сношениях с таблицей формы начинает расходиться.
|
|||
13
Jenstel
05.12.18
✎
11:46
|
(8) А можно кусок кода как по идентификатору перебирать выделенные строки?
|
|||
14
dezss
05.12.18
✎
11:48
|
(13) Ты их и так по нему перебираешь перебираешь)
(11) (12) Э, у нас, видимо, проблема с использованием разной терминологии. С чего уверенность, что индекс всегда с 0 начинается? |
|||
15
dezss
05.12.18
✎
11:49
|
(11) Из вики:
И́ндекс (лат. index — список, реестр, указатель, а также указательный палец) — число, буквы или другая комбинация символов, указывающая место элемента в совокупности или характеризующая состояние некоторой системы, например показатель активности, производительности, развития, изменения чего-либо. Идентифика́тор, ID (англ. data name, identifier — опознаватель) — уникальный признак объекта, позволяющий отличать его от других объектов, т.е. идентифицировать. |
|||
16
Cyberhawk
05.12.18
✎
11:49
|
(13) Смотри в разделе "См. также" в СП для "ТекущаяСтрока"
|
|||
17
Cyberhawk
05.12.18
✎
11:50
|
(15) Ты повторил в (8), все усложнив
|
|||
18
Jenstel
05.12.18
✎
11:50
|
Для Каждого ТекСтрока Из ВыделенныеСтроки Цикл
ПолучениеРезультата(ТЧ.НайтиПоИдентификатору(ТекСтрока)); КонецЦикла; Вот так работает |
|||
19
dezss
05.12.18
✎
11:50
|
(17) ага...только идентификатор и индекс, в данном контексте - это одно и то же)
|
|||
20
Cyberhawk
05.12.18
✎
11:51
|
(14) "С чего уверенность, что индекс всегда с 0 начинается?" // С того, что индекс определяет положение, нумерация с нуля
|
|||
21
Cyberhawk
05.12.18
✎
11:51
|
(19) Могу только отправить в (4)
|
|||
22
dezss
05.12.18
✎
11:52
|
(20) Слишком узко мыслишь)
|
|||
23
Cyberhawk
05.12.18
✎
11:53
|
(22) В 1С только так
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |