Показать сообщение отдельно
Старый 09.04.2004, 19:53   #1  
SAM_imported is offline
SAM_imported
Участник
 
1 / 10 (1) +
Регистрация: 09.04.2004
Леди и джентельмены, доброго времени суток.

Пишу в форум, так как просто уже некуда больше.

Столкнулся с мерзкой проблемой в навижне при создании отчета одного... попробую ее описать.

Отчет состоит из двух Dataitem - H (хедер) и L (лайн). Связаны по номеру документа. На реквест-форме есть галка - печатать заголовки Да/Нет.

Из секций есть бади по L (низкий по высоте) и Н (высокий). Если галка стоит в "Да", то печатаются оба бади, если "Нет", то только бади по L (на PreSection бади по Н стоит что-нить типа CurrReport.SHOWOUTPUT(галка = "Да")).

Теперь о самой проблеме.
Представьте себе два документа один по тридцать строк (на лист влазит, скажем, 45) и хедер высотой 16(!) строк. При галке равной "Нет" (Н ВЫВОДИТСЯ НЕ ДОЛЖЕН!!!) имеем следующее: строки первого документа нормально выводятся и... нет бы продолжить вывод строк второго документа на той же странице (ведь 15 строк еще осталось!), а навижн страницу переводит...

После мучительных раздумий пришел к след. выводу:
когда навижну нужно выводит след. секцию, он смотрит на ее высоту, и если она больше, чем осталось места на странице (16>15!), переводит страницу!!! А только потом смотрит код на PreSection, понимает, что выводить ее не нужно и не выводит! НО СТРАНИЦУ ОН УЖЕ ПЕРЕВЕЛ!!!

Таково мое мнение, только не легче мне от этого нисколько...

Жду любых комментариев и советов!