Имя: Пароль:
1C
1С v8
Внешняя печатная форма ((.odt) Выручайте)))))
0 Юлианна_Н
 
07.08.20
16:05
АААА выручите кто нить.

Есть ПФ КП внешний файл...(.odt)

Все заполняется нормально НО, постоянно добавляет лишнюю строку в ТЧ.
Код Ниже:
Насколько я понимаю "Итератор" добавляет строку. Поэтому считаем количество строк в ТЧ, а потом ставим под условие... но не работает.


        // Заполняем табличную часть

    Итератор = 1;
    Итератор = Итератор + 1;
    МассивСтруктурТоваров = ВернутьСтруктуруТоваров(СсылкаНаОбъект);
    TextTables = ТекстовыйПроцессор.getTextTables();//список таблиц документа
    
        Table = TextTables.getByIndex(1);//получаем нужную таблицу
    Rows = Table.getRows();//список строк таблицы
            
    СчетчикКоличестваСтрокВТЧ = 0;
    
        Для каждого   СтруктураТовара Из МассивСтруктурТоваров Цикл  //считаем строки в ТЧ
        СчетчикКоличестваСтрокВТЧ = СчетчикКоличестваСтрокВТЧ + 1;
        КонецЦикла;

        Для Каждого СтруктураТовара Из МассивСтруктурТоваров Цикл
            СтрокаДок = Rows.insertByIndex(Итератор,1);
        Table.getCellByPosition(0,Итератор-1).setString(СтруктураТовара.Номер);
          Table.getCellByPosition(1,Итератор-1).setString(СтруктураТовара.Наименование);
        Table.getCellByPosition(2,Итератор-1).setString(СтруктураТовара.Артикул);  
        Table.getCellByPosition(3,Итератор-1).setString(СтруктураТовара.ЕдиницаИзмерения);        
        Table.getCellByPosition(4,Итератор-1).setString(СтруктураТовара.Количество);
        Table.getCellByPosition(5,Итератор-1).setString(СтруктураТовара.Цена);
        Table.getCellByPosition(6,Итератор-1).setString(СтруктураТовара.СуммаСНДС);
                
    Если НЕ (Счетчик2 = СчетчикКоличестваСтрокВТЧ) Тогда
        Итератор = Итератор + 1;
    КонецЕсли;
                
    Счетчик2 = Счетчик2 + 1
    
        КонецЦикла;


Хотя отладкой строка: ""СтрокаДок = Rows.insertByIndex(Итератор,1);"" добавляет строку... ниче не понимаю.

Дайте идею! Спасибо!
1 Юлианна_Н
 
07.08.20
16:22
Всё. Решено. После прочтения сообщения выше - поняла ошибку - исправила.

(Хотя отладкой строка: ""СтрокаДок = Rows.insertByIndex(Итератор,1);"" добавляет строку... ниче не понимаю.)
В этой строке была проблема, и за ее поведение - была исключена из Цикла ;)

И все окейчиком.
2 lamme
 
07.08.20
16:30
в угол ее ... и наказать
3 Юлианна_Н
 
07.08.20
16:36
Rovan del123 lammeshuhardДык ёМихаилМЦ_УЮлианна_Н - вверху список. это те кто смотрел тему?
4 lamme
 
07.08.20
16:39
да. они.
только потом этот список как=то меняется
или обнуляется.
по мне так - не сильно информационная строчка - ибо не понимаю ее смысла.
5 ReaLg
 
07.08.20
16:53
(3)(4) Это те, кто "сейчас" на сайте и заходил в тему.
"Сейчас" - сколько это точно не знаю, 5-10-20 мин...
6 lamme
 
07.08.20
16:55
(5)
а .. ну вот ... теперь понятно
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.