![]() |
Удаление строк активного документа Вроде бы задача простая, до боли Есть кнопка на которой стоит процедура: ВыбратьСтроки(); Пока ПолучитьСтроку()=1 Цикл Если ПемеченоНаУдаление = 1 Тогда УдалитьСтроку(); КонецЕсли; КонецЦикла; Строк в документе Очень много (инвентаризационная ведомость) При каждом нажатии удаляется часть строк, но не все строки отвечающие условию, не понимаю почему... После 3-10 нажатий документ чистый |
так попробуй ВыбратьСтроки(); Пока ПолучитьСтроку()=1 Цикл Если ПемеченоНаУдаление = 1 Тогда УдалитьСтроку(); ВыбратьСтроки(); КонецЕсли; КонецЦикла; |
Номера помеченных строк - перепиши в список значений. Затем - в цикле по этому списку (начиная с конца!!!!!): ПолучитьСтрокуПоНомеру(<Номер>); УдалитьСтроку(); |
Сортировка Пузырьком. Способ пузырька |
to all. Ну вы ж еще и объясните. :) человек же просит. 0-Sergey315 > [em]не понимаю почему...[/em] Потому что выборку "сбиваешь". ты внутри самой выборки динамически меняешь количество выбранных элементов. таким образом, выборка "сбивается". А решений разных. тебе уже предоставили. |
>>>Если ПемеченоНаУдаление = 1 Тогда УдалитьСтроку() Полный бред, САМОЛИКВИДАЦИЯ, СУИЦИД |
(0) Как вариант, тупо выгрузи в другую ТЗ, запомни позиции, (условий мало) а там извращайся |
всё велосипед изобретаете? ну-ну |
ну тогда и я свой баян запостЮ: ВыбратьСтроки(); Пока ПолучитьСтроку() = 1 Цикл Пока ПемеченоНаУдаление = 1 Цикл УдалитьСтроку(); КонецЦикла КонецЦикла; ЗЫ. по-моему, красиво. Сам себя не похвалишь, никто не похвалит :) |
Текущее время: 23:35. Часовой пояс GMT +3. |