Программное удаление строк с табличной части, помогите правильно удалить #785367


#0 by location
Есть табличная часть с количеством допустим 10. Выбираем первые 2 строки из списка жмем кнопочку, и если все условия соблюдены, то данные строки удаляются. Но происходит следующие: При удалении первой строки, вторая строка получается первой. и при следующем обходе уже выбирается 3 строка которая была изначально до удаления. Как правильно удалять строки со смещением?
#1 by location
получается вторая строка остается не удаленной, так как номер строки у нее изменился. и на нее не попало.
#2 by DrShad
удаляй прямо строки, в чем проблема? а не по индексу или идентификатору собери сначала массив удаляемых строк и удаляй обходом массива
#3 by rbcvg
так ты по номеру строки удаляешь или по условию?
#4 by location
Для каждого Строка ИЗ Таблица Конеццикла
#5 by olegves
+ или обходи и удаляй таблицу с конца
#6 by Fish
Делай обход таблицы с конца.
#7 by polosov
#8 by location
как сделать обход с конца?
#9 by Fish
Через цикл Пока по индексу строки.
#10 by DrShad
у тебя же выборка нарушается - классическая ошибка, за которую надо увольнять
#11 by youalex
Для Сч = -ТЗ.Количество+ 1 ПО 0 Цикл         ТЗ.Удалить(-Сч);
#12 by EvgeniuXP
для нс = -тз.кол-во по -1 цикл
#13 by olegves
за это: ТЗ.Количество в цикле тоже надо увольнять
#14 by youalex
думаешь оно каждый раз считается?
#15 by НастоящееИмя
А почему нет-то?
#16 by youalex
потому что - число итераций определяется один раз, при инициализации цикла.
#17 by МимохожийОднако
Я бы выбрал или аналогичное
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С