7.7 Проблема с таблицей значений

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем IgorSys9966, 18 дек 2006.

  1. TopicStarter Overlay
    IgorSys9966
    Offline

    IgorSys9966

    Регистрация:
    18 дек 2006
    Сообщения:
    1
    Симпатии:
    0
    Баллы:
    1
    Доброго аремени суток всем. Такая ситуевина - выгружаю табличную часть документа в ТЗ
    Из ТЗ пытаюсь удалить строки по условию, но почему-то перескакивает через строку!


    Код:
    ТЗ1.выбратьстроки();
    Пока ТЗ1.получитьстроку()=1 Цикл
    если ТЗ1.количество < КолОТБ Тогда
    Сообщить("Товар   "+ТЗ1.номенклатура+"  будет удален!!");
    ТЗ1.удалитьстроку(); 
    
    
    конецесли;
    КонецЦикла;
    
    
    В чем дело? Причем если комментить ТЗ1.удалитьстроку(); то по сообщению удаляет все правильно..
  2. Неглупый
    Offline

    Неглупый

    Регистрация:
    23 окт 2006
    Сообщения:
    29
    Симпатии:
    1
    Баллы:
    1
    Ответ очень прост..... удаляя строку ты автоматом переходишь на следующую.... а потом ты опять делаешь получить строку.... вот тебе одну строку ты пропускаешь
  3. John Ripper
    Offline

    John Ripper

    Регистрация:
    20 июн 2006
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    +1. Решение - Переносить нужные строки в другую ТЗ :)
  4. Amishechka
    Offline

    Amishechka Опытный в 1С

    Регистрация:
    8 сен 2006
    Сообщения:
    361
    Симпатии:
    1
    Баллы:
    26
    Зачем переносить строки? Организуй переборку по другому:
    Код:
    Сч=1;
    Пока Сч<ТЗ.КоличествоСтрок() Цикл
    Если ТЗ.ПолучитьЗначение(Сч,"Количество") < КолОТБ Тогда
    Сообщить("Товар   "+ТЗ.ПолучитьЗначение(Сч,"Номенклатура")+"  будет удален!!");
    ТЗ.УдалитьСтроку(Сч);
    Иначе
    Сч=Сч+1;
    КонецЕсли;
    КонецЦикла;
    

Поделиться этой страницей