AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.07.2013, 14:39   #1  
Kadawrik is offline
Kadawrik
Участник
 
279 / 11 (1) +
Регистрация: 04.11.2010
Объясните мне, пожалуйста, как работает эта установка?
Имеется отчет. В нем куча секций.
К примеру:
DataItem3.Body(9)
DataItem3.Footer(10)
DataItem3.Footer(11)
DataItem3.Footer(12)
DataItem2.Footer(13)
У каждой из них установлено KeepWithNext = Yes
В описании этого признака стоит, avoid page breaks between a section and a following section of the same type.
Что подразумевается под "the same type"? Значит ли это, что приведенные выше три DataItem3.Footer-секции (они же все с типом Footer и относятся к одному DataItem) обязательно будут напечатаны вместе на одном листе?
Я почему спрашиваю: у меня возникла проблема. При печати отчета на первом листе выводится последняя из секций DataItem2.body, затем, несмотря на то, что на листе еще прилично места (9 см до края листа /4.5 см до нижнего поля), секция DataItem3.Footer(10) печатается на новой странице (высота этой секции 1,8 см). Т.е. по моей логике она должна была бы уместиться еще на первом листе. Но в действительности этого не происходит :-/ Еще момент: из трех секций DataItem3.Footer печатается всегда только одна (так заданы условия ShowOutput)
Как сделать так, чтобы максимально использовать место на бумаге?
Старый 05.07.2013, 14:44   #2  
romeo is offline
romeo
Участник
Аватар для romeo
 
564 / 10 (2) +
Регистрация: 31.03.2004
Есть в секциях код, написанный в onPostSection(), который печать этой секции скипает?
Старый 05.07.2013, 15:45   #3  
Kadawrik is offline
Kadawrik
Участник
 
279 / 11 (1) +
Регистрация: 04.11.2010
Цитата:
Сообщение от romeo Посмотреть сообщение
Есть в секциях код, написанный в onPostSection(), который печать этой секции скипает?
Нет, в onPostSection кода нет ни у одной из секций. Только в OnPreSection задано CurrReport.SHOWOUTPUT
Старый 05.07.2013, 15:54   #4  
romeo is offline
romeo
Участник
Аватар для romeo
 
564 / 10 (2) +
Регистрация: 31.03.2004
Видимо при форматировании отчета перед его выводом на экран для секций одного типа (боди, футер), связанных KeepWithNext, рассчитывается общая высота (несколько секций как-бы сливаются в одну) и если все это влезает на остаток страницы, то выводится на ней, если нет - переносится на след. страницу.
Про onPostSection() я почему спрашивал.. Точно не помню, но почти уверен, что если SHOWOUTPUTом запретить показ в этом триггере, то в репорте останется пустое место, под эту секцию зарезервированное.. Поэтому определение того, что секцию не выводим лучше делать в onPreSection() как у вас и написано.
Старый 05.07.2013, 16:24   #5  
Alex NF is offline
Alex NF
Участник
 
10 / 10 (1) +
Регистрация: 16.02.2005
DataItem2.body нет в списке секций, непонятно, стоит ли там KeepWithNext.
Старый 05.07.2013, 16:28   #6  
Kadawrik is offline
Kadawrik
Участник
 
279 / 11 (1) +
Регистрация: 04.11.2010
Цитата:
Сообщение от Alex NF Посмотреть сообщение
DataItem2.body нет в списке секций, непонятно, стоит ли там KeepWithNext.
KeepWithNext = Yes у ВСЕХ секций
Старый 05.07.2013, 16:35   #7  
romeo is offline
romeo
Участник
Аватар для romeo
 
564 / 10 (2) +
Регистрация: 31.03.2004
Цитата:
Сообщение от Kadawrik Посмотреть сообщение
KeepWithNext = Yes у ВСЕХ секций
Думаю в таком случае на новый лист будут переноситься все секции одного типа (боди, футер, групфутер), если их суммарная высота не влезает на оставшееся место на листе.
Старый 05.07.2013, 16:38   #8  
Kadawrik is offline
Kadawrik
Участник
 
279 / 11 (1) +
Регистрация: 04.11.2010
Цитата:
Сообщение от romeo Посмотреть сообщение
Думаю в таком случае на новый лист будут переноситься все секции одного типа (боди, футер, групфутер), если их суммарная высота не влезает на оставшееся место на листе.
Судя по всему так оно и происходит. Несмотря на то, что многие секции на печать не выводятся (согласно условиям в ShowOutput), тем не менее их высота учитывается при распределении текста по листам ;-/
Млин!
Старый 06.07.2013, 12:49   #9  
alexb_imported is offline
alexb_imported
Участник
 
256 / 12 (1) ++
Регистрация: 25.08.2006
Цитата:
Сообщение от Kadawrik Посмотреть сообщение
Млин!
"Wenn ich könnte wie ich wollte wisst ihr was ich täte..."
 

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 22:59.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.