|
Пропускает строки при печати печатной формы | ☑ | ||
---|---|---|---|---|
0
konst1231
10.06.14
✎
12:05
|
Здравсвуйте,
Не могу разобраться - есть печатная форма док-та, при выводе которой в таб. документ в некоторых случаях появляются пропуски при выводе строк. Смотрел в отладчике, св-во табличного документа ТабДок.ВысотаТаблицы при очередной итерации цикла менятся с 3 на 5 и т.д. Код простой, макет тоже. ТабДок=Новый ТабличныйДокумент; Макет=ПолучитьМакет("Печать"); Область=Макет.ПолучитьОбласть("Шапка"); ТабДок.Вывести(Область); Область=Макет.ПолучитьОбласть("Строка"); Для Каждого СтрокаТЗ из ТЗ Цикл Область.Параметры.Заполнить(СтрокаТЗ); ТабДок.Вывести(Область); КонецЦикла; |
|||
1
dj_serega
10.06.14
✎
12:06
|
А сколько строк в области "Строка"?
|
|||
2
godmod80
10.06.14
✎
12:09
|
может в ТЗ пустые строки
|
|||
3
konst1231
10.06.14
✎
12:13
|
(1) одна
|
|||
4
konst1231
10.06.14
✎
12:14
|
(2) нет, нет пустых строк, смотрел в отладчике
|
|||
5
konst1231
10.06.14
✎
12:18
|
(2) в секции строка есть не только параметры, но и просто текст, он то в любом случае должен выводится.
|
|||
6
Крошка Ру
10.06.14
✎
12:21
|
(5) А чисто случайно, нет параметров, которые могут не помещаться в одну строку?
|
|||
7
konst1231
10.06.14
✎
12:22
|
||||
8
konst1231
10.06.14
✎
12:23
|
(6) вроде нет
|
|||
9
singlych
10.06.14
✎
12:38
|
Область=Макет.ПолучитьОбласть("Строка");
в цикл засунь |
|||
10
dj_serega
10.06.14
✎
12:41
|
(0) а у тебя дальше по коду (после цикла) используется область "Строка"?
|
|||
11
kosts
10.06.14
✎
12:47
|
(0) Больше, больше кода...
|
|||
12
konst1231
10.06.14
✎
12:50
|
Нашел причину,
чтобы не перегружать коллег немного сократил код в (0), в цикле есть еще строка Если СтрокаТЗ.РазницаКоличество<>0 Тогда Область.Область(НомерСтроки,6,НомерСтроки,6).ЦветТекста = WebЦвета.Красный; КонецЕсли; при комментировании, которой пропуски исчезают |
|||
13
konst1231
10.06.14
✎
12:53
|
ТабДок=Новый ТабличныйДокумент;
Макет=ПолучитьМакет("Печать"); Область=Макет.ПолучитьОбласть("Шапка"); ТабДок.Вывести(Область); НомерСтроки=1; Для Каждого СтрокаТЗ из ТЗ Цикл Область=Макет.ПолучитьОбласть("Строка"); Область.Параметры.Заполнить(СтрокаТЗ); Если СтрокаТЗ.РазницаКоличество<>0 Тогда Область.Область(НомерСтроки,6,НомерСтроки,6).ЦветТекста = WebЦвета.Красный; КонецЕсли; ТабДок.Вывести(Область); НомерСтроки=НомерСтроки+1; КонецЦикла; Возврат ТабДок; |
|||
14
konst1231
10.06.14
✎
12:55
|
А в чем проблема в этой строке:
Область.Область(НомерСтроки,6,НомерСтроки,6).ЦветТекста = WebЦвета.Красный ? |
|||
15
konst1231
10.06.14
✎
13:29
|
Господа всем спасибо за ответы
|
|||
16
kosts
10.06.14
✎
13:29
|
(14) Скорее всего смещает курсор ...
|
|||
17
Крошка Ру
10.06.14
✎
13:56
|
(12)"чтобы не перегружать коллег немного сократил код в (0)"
konst1231, ты садист! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |