Леди и джентельмены, доброго времени суток.
Пишу в форум, так как просто уже некуда больше.
Столкнулся с мерзкой проблемой в навижне при создании отчета одного... попробую ее описать.
Отчет состоит из двух Dataitem - H (хедер) и L (лайн). Связаны по номеру документа. На реквест-форме есть галка - печатать заголовки Да/Нет.
Из секций есть бади по L (низкий по высоте) и Н (высокий). Если галка стоит в "Да", то печатаются оба бади, если "Нет", то только бади по L (на PreSection бади по Н стоит что-нить типа CurrReport.SHOWOUTPUT(галка = "Да")).
Теперь о самой проблеме.
Представьте себе два документа один по тридцать строк (на лист влазит, скажем, 45) и хедер высотой 16(!) строк. При галке равной "Нет" (Н ВЫВОДИТСЯ НЕ ДОЛЖЕН!!!) имеем следующее: строки первого документа нормально выводятся и... нет бы продолжить вывод строк второго документа на той же странице (ведь 15 строк еще осталось!), а навижн страницу переводит...
После мучительных раздумий пришел к след. выводу:
когда навижну нужно выводит след. секцию, он смотрит на ее высоту, и если она больше, чем осталось места на странице (16>15!), переводит страницу!!! А только потом смотрит код на PreSection, понимает, что выводить ее не нужно и не выводит! НО СТРАНИЦУ ОН УЖЕ ПЕРЕВЕЛ!!!
Таково мое мнение, только не легче мне от этого нисколько...
Жду любых комментариев и советов!
|