|
Удаление строк из табличной части
| ☑ |
0
never_be
06.02.13
✎
17:07
|
Вроде простая задача но 1с как-то плющит, вот такой код при нажатии на кнопку:
Для Каждого Тек ИЗ РасходыТП Цикл
Если Тек.Сумма = 0 Тогда
РасходыТП.Удалить(Тек);
КонецЕсли;
КонецЦикла;
В табличной части 3 записи, нажимаю кнопку остается 1на, хотя сумма у нее тоже 0, нажимаю еще раз исчезает и она, в чем проблема ?
|
|
1
salvator
06.02.13
✎
17:07
|
Используй метод НайтиСтроки
|
|
2
salvator
06.02.13
✎
17:11
|
НулевыеСтроки = Таблица.НайтиСтроки(Новый Структура("Сумма",0));
Для каждого СтрокаТаблицы Из НулевыеСтроки Цикл
Таблица.Удалить(СтрокаТаблицы)
КонецЦикла;
|
|
3
Serg_1960
06.02.13
✎
17:11
|
(6) При "прямом" обходе строк, удаление "плющит"(тс) индексы - они плывут. В типовых используется или "обратных" обход строк, или запоминание/накопление строк "к удалению" с последующим удалением, или - (1). Азбука.
|
|
4
Serg_1960
06.02.13
✎
17:13
|
(3) Упс, ссылка не на 6 - а на (0) Обращение к будущему посту забабахал случайно :)
|
|
5
never_be
06.02.13
✎
17:16
|
Всем спасибо.
|
|
6
Stim
06.02.13
✎
17:18
|
один из вопросов на собеседовани
|
|
7
Alex S D
06.02.13
✎
17:18
|
Род занятий: Руководитель ИТ отдела
Во чем нынче руководители занимаются))
|
|
8
never_be
06.02.13
✎
18:30
|
(7) Бывает, внедряем УТП своими силами без поддержки )
|
|