|
Как удалить строки вне отбора в табличной части документа
| ☑ |
0
pedagog
22.09.15
✎
22:06
|
Есть табличная часть документа "ТОвары". Допустим Установили отбор Цена>=500. Как удалить строки, которые стали не видны, т.е. цена которых <500.
|
|
1
RomanYS
22.09.15
✎
22:08
|
обычные формы?
|
|
2
pedagog
22.09.15
✎
22:10
|
да
|
|
3
фобка
22.09.15
✎
22:10
|
Не отбирать прост,, а удалять
|
|
4
RomanYS
22.09.15
✎
22:24
|
(0) поможет ПроверитьСтроку()
|
|
5
pedagog
22.09.15
✎
22:24
|
именно удалить нужно
|
|
6
Amra
22.09.15
✎
22:28
|
(0) Вроде же ответили в Удалить позиции вне отбора ?
|
|
7
фобка
22.09.15
✎
22:31
|
(6) забавно...
|
|
8
RomanYS
22.09.15
✎
22:32
|
(7) очень... каждый квартал... поздно вечером...
|
|
9
pedagog
22.09.15
✎
22:36
|
задача так и не решена.
|
|
10
фобка
22.09.15
✎
22:37
|
(8) ждем в 20х числах декабря теперь
|
|
11
фобка
22.09.15
✎
22:39
|
(9) сказали же: выгружаешь результат отбора в тз (любым способом), чистишь тч, заполняешь из тз
|
|
12
RomanYS
22.09.15
✎
22:40
|
(9) интересно какие усилия приложил, чтобы ее решить
инд = ТабличнаяЧасть1.Количество();
Пока инд > 0 Цикл
инд = инд - 1;
Стр = ТабличнаяЧасть1[инд];
Если НЕ ЭлементыФормы.ТабличнаяЧасть1.ПроверитьСтроку(Стр) Тогда
ТабличнаяЧасть1.Удалить(Стр);
КонецЕсли;
КонецЦикла;
|
|
13
pedagog
22.09.15
✎
23:39
|
спасибо. все заработало.
|
|
14
ICWiner
23.09.15
✎
06:33
|
(12) Мир больше никогда не будет прежнем... Когда первый раз столкнулся с задачей про перебор и чистку ТЗ, то пошел по стандартному пути - инкрементировал итератор. В этом случае нельзя удалять строки сразу, ибо тогда строка после удаленной не проверится, только после прохода по всей таблице. Приходилось создавать новый массив, запоминать строки для удаления и потом уже проходя по элементам массива чистить ТЗ. С того времени, все эти года пользовался протаренной дорожкой. Боже, насколько
|
|