7.7 Снова ТЗ

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

  1. TopicStarter Overlay
    igorekkrav
    Offline

    igorekkrav Опытный в 1С

    Регистрация:
    29 апр 2010
    Сообщения:
    223
    Симпатии:
    0
    Баллы:
    26
    Всем привет! Трабл следующий ( Пишет ДатаСледующая1 = ТЗ.ПолучитьЗначение(к + 1, "ДатаСЛКонтакта");
    {Отчет.Планирование.Форма.Модуль(134)}: Номер за пределами значения!


    Код:
    Для к=2 По ТЗ.КоличествоСтрок() Цикл 
    Компания = ТЗ.ПолучитьЗначение(к, "Компания");
    Менеджер = ТЗ.ПолучитьЗначение(к, "Менеджер");
    КомпанияПредыдущая = ТЗ.ПолучитьЗначение(к - 1, "Компания");
    КомпанияТекущая = ТЗ.ПолучитьЗначение(к, "Компания");
    
    ДатаПредыдущая = ТЗ.ПолучитьЗначение(к - 1, "ДатаКонтакта");
    ДатаТекущая = ТЗ.ПолучитьЗначение(к, "ДатаКонтакта"); 
    ДатаТекущая1 = ТЗ.ПолучитьЗначение(к, "ДатаСЛКонтакта"); 
    ДатаПредыдущая1 = ТЗ.ПолучитьЗначение(к - 1, "ДатаСЛКонтакта"); 
    ДатаСледующая1 = ТЗ.ПолучитьЗначение(к + 1, "ДатаСЛКонтакта");  
    КомпанияСледующая = ТЗ.ПолучитьЗначение(к + 1, "Компания");
    
    
    Если (КомпанияСледующая <> КомпанияТекущая) и (ДатаТекущая1 < ДатаТекущая) и      (ПустоеЗначение(ДатаТекущая1)=0)  и (рд2=1)   Тогда
    Таб.ВывестиСекцию("Рабочая"); 
    КонецЕсли;     
    
    КонецЦикла;        
    
    
    
    Я так понял он в конце обхода ТЗ упирается в последнюю строку и не может привить +1 так как ничего нет. Как можно ограничить последней строкой обход ТЗ , но при этом получать значения КомпанияСледующая
  2. Flamepayne
    Offline

    Flamepayne Опытный в 1С

    Регистрация:
    16 мар 2011
    Сообщения:
    113
    Симпатии:
    0
    Баллы:
    26
    А как он у Вас получит значения компанияСледующая для последнего шага, если ее просто нет? Или она у Вас где-то занесена?
  3. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    ошибка кроется здесь
    к + 1 - обращаетесь к несуществующей строке

    цикл должен тыть таким
    Код:
    Для к=2 По ТЗ.КоличествоСтрок()-1 Цикл 
    
    
    
    т.к. анализируете ТРИ элемента а не два... (к-1,к,к+1)
Похожие темы
  1. mialord
    Ответов:
    4
    Просмотров:
    993
  2. American
    Ответов:
    1
    Просмотров:
    506
Загрузка...

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