|
алгоритм ПроверитьВывод() | ☑ | ||
---|---|---|---|---|
0
Sergafan
10.11.14
✎
15:22
|
[CODE]
Шапка = Макет.ПолучитьОбласть("Шапка"); Строка = Макет.ПолучитьОбласть("Строка"); Подвал = Макет.ПолучитьОбласть("Подвал"); СтрокаСШапкой = Новый Массив; Для Каждого х из ТЗ Цикл СтрокаСШапкой.Добавить(Шапка); Если НЕ ТабДок.ПроверитьВывод(СтрокаСШапкой) Тогда ТабДок.ВывестиГоризонтальныйРазделительСтраниц(); СтрокаСШапкой.Очистить(); СтрокаСШапкой.Добавить(Шапка); КонецЕсли; ТабДок.Вывести(Шапка); Для Каждого у из Выгрузка Цикл СтрокаСШапкой.Добавить(Строка); ТабДок.Вывести(Строка); КонецЦикла; СтрокаСШапкой.Добавить(Подвал); ТабДок.Вывести(Подвал); [/CODE] Доброго времени суток, всем! Прошу помощи. Этот код оставляет много пустого места на странице, хотя Шапка(а иногда и строки с подвалом) могли бы уместиться на одной? |
|||
1
vicof
10.11.14
✎
15:24
|
Слишком много областей напихал в массив
|
|||
2
Drac0
10.11.14
✎
15:25
|
(0) (1) ПроверитьВывод(), как и КоличествоСтраниц()криво работают. Там какая-то дикая погрешность в расчетах. На 8.3.5.1088 все так же.
|
|||
3
vicof
10.11.14
✎
15:33
|
(2) У меня на 8.2.17 нормально :)
|
|||
4
Drac0
10.11.14
✎
15:35
|
(3) Бывают ситуации, когда этот метод дает корректный результат даже на 8.3. :) Но логику я понять не смог...
|
|||
5
Fish
10.11.14
✎
15:41
|
(4) Да нормально работает ПроверитьВывод(). Но есть маленький нюанс, касающийся многострочных строк, где установлена автовысота и автоперенос текста.
|
|||
6
1sanekmaloi1
10.11.14
✎
15:50
|
Работает оно как надо, но каждый чих влияет на результат: параметры для текдока, параметры для принтера по умолчанию, сохраненные настройки пользователя, и можно перечислять до бесконечности
|
|||
7
1sanekmaloi1
10.11.14
✎
15:52
|
а в (0) не правильно заполняет массив для проверки
|
|||
8
Drac0
10.11.14
✎
16:08
|
(5) И какой же?
(6) Криво работает. Даже когда эти параметры не трогаются. Тупо промахивается в моем случае на пару строк. Причем это идет нарастающим итогом. Хотели сделать шапку табличной части на каждой странице, где есть табличная часть - не взлетело: 1С 8.3.4. Проблема в работе метода КоличествоСтраниц() табличного документа |
|||
9
Sergafan
10.11.14
✎
16:21
|
У меня есть тоже предположение, что это косяк 1С. Потому что как ни пробовал, сколько массивов не пихал, - лучше не становилось. Платформа 8.3.5.1119
|
|||
10
Sergafan
10.11.14
✎
16:24
|
(4) Автовысота отключена, автоперенос вырубал - тухляк.
|
|||
11
1sanekmaloi1
10.11.14
✎
16:30
|
а типовой торг12 в БП, как ведет себя у вас, там этот метод используется для переноса строк?
|
|||
12
Drac0
10.11.14
✎
16:31
|
(11) нет. Там тупо считают количество строк. Похоже, в 1С в курсе об этом баге :)
|
|||
13
1sanekmaloi1
10.11.14
✎
16:34
|
хм, значит в ут 11, я буквально месяц назад смотрел, тестил на 3х компах, все было ок, на этих же 3х машинах и разработанная форма вела себя ок, а на 4м и торг 12 и моя форма глючили, потом куча манипуляций с принтерами, с чисткой кеша и т.д. на 4м тоже заработало.
|
|||
14
1sanekmaloi1
10.11.14
✎
16:35
|
+(13) выяснить причину увы не удалось
|
|||
15
Drac0
10.11.14
✎
16:37
|
(13) Вроде в УТ тоже раньше тупо считало количество строк. Надо глянуть будет.
|
|||
16
1sanekmaloi1
10.11.14
✎
16:43
|
буху 3.0 посмотрел, там используется именно ПроверитьВывод()
|
|||
17
1sanekmaloi1
10.11.14
✎
16:44
|
Если НЕ ОбщегоНазначенияБПВызовСервера.ПроверитьВыводТабличногоДокумента(ТабличныйДокумент, СтрокаСПодвалом) Тогда
|
|||
18
Drac0
10.11.14
✎
16:47
|
(17) Хм, любопытно. У нас на 2-х релизах 8.3 такой косяк на всех абсолютно компах. Надо копать, что не так.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |