Другой заголовок на первой странице отчета о рождении

Таким образом, уже существует эта тема, в которой есть пример создания заголовок первой страницы отличается от остальных страниц. Я могу скачать этот пример и запустить его нормально.

Когда я попытался воспроизвести этот пример, у меня не получилось (Пояснение: после изменения источника на базу данных собственного источника заголовок изменился бы неправильно). В конце концов я начал копировать отдельные части своего отчета в образец, чтобы увидеть, что вызвало проблему (Пояснение: я удалял различия между моим отчетом и примером шаг за шагом, чтобы точно определить различие, вызвавшее проблему). В итоге это был мой стол.

По какой-то причине, которую я не могу объяснить, если я добавлю новый собственный набор данных, удалю таблицу, используя образец базы данных, и добавлю таблицу, используя мой набор данных, это не сработает. Когда я говорю, что это не сработает, я имею в виду, что заголовок внезапно становится одинаковым на каждой странице и не будет меняться для последующих страниц, как ожидалось.

Если я запущу отладчик и поставлю точку останова на сценарий, который принудительно изменит содержимое первой и другой страниц (показано ниже), то, похоже, произойдет то, что с образцом таблицы базы данных событие onRender вызывается на каждой странице... но с моей таблицей он вызывается только один раз. Это заставляет главную страницу проверять сценарий onRender только один раз в начале, когда переменная pageNumber = 1. Я занимался этим часами и очень хотел бы, чтобы кто-то, кто может знать, почему это так, помог мне, пожалуйста .

Вот код:

if( pageNumber > 1 ){
    this.getStyle().display = "none";
}

Ваша помощь и знания очень ценятся,

-Асаф


person Asaf    schedule 12.07.2012    source источник


Ответы (1)


Вы указываете

Я пытался сымитировать этот пример, у меня не получилось

так что, по-видимому, вы где-то пропустили шаг. Существует DevShare BIRT: Несколько главных страниц и поддерживающая запись в блоге BIRT: несколько главных страниц без сценариев, которые должны помочь вам в этом процессе.

ИЗМЕНИТЬ На основании разъяснения.

Изменение существующего отчета в BIRT (особенно в бесплатной версии) с помощью редактора «Макет» не всегда может корректно обновляться в XML. XML является фактической основой для отчета. Воссоздание отчета с нуля и использование только примера в качестве руководства должно решить указанную вами проблему.

Когда вы (или ваш клиент) не совсем уверены, каким в конечном итоге будет отчет, управление версиями предоставляет безопасный метод «отмены выполнения», потому что в этой версии это никогда не делалось. Я всегда сохраняю версию (и документирую в описании отчета), прежде чем пробовать что-то новое.

Версия

person James Jenkins    schedule 23.04.2013
comment
Прежде всего, прошу прощения, если мне подводит память, я задавал этот вопрос довольно давно. На самом деле так долго, что я сменил работу и поэтому больше не использую BIRT. При этом я помню, что я имел в виду, и я вижу, что я был неясен, поэтому после этого комментария я отредактирую и правильно объясню. Сначала я написал в предыдущей строке, что могу загрузить этот пример и запустить его нормально. Так что у меня не было проблем с тем, чтобы пример работал так, как он есть. Теперь, когда я говорю «подражать», я имею в виду, что я изменил пример (использовал собственный источник базы данных), и именно тогда заголовок не изменился правильно. - person Asaf; 24.04.2013
comment
Насколько я понимаю, вы сказали, что пытались изменить загруженный пример, а не создавать его с нуля. Это отличный способ понять, как все устроено, но не очень хорошо для создания функциональных отчетов в BIRT. Как и многие приложения, BIRT использует графический интерфейс для создания XML-файла, где XML-файл является фактической «программой», а то, что вы видите в графическом интерфейсе, является просто представлением XML. Когда вы перетаскиваете, опускаете и изменяете; XML не всегда корректно обновляется. BIRT, являющийся продуктом с открытым исходным кодом (бесплатным), это происходит чаще, чем вы ожидаете в платном инструменте. (продолжение) - person James Jenkins; 24.04.2013
comment
(продолжение) Повторное создание из точки сохранения или с нуля — это то, как я обычно восстанавливаюсь после этих событий, хотя иногда, когда возникает ошибка привязки к чему-то, что я удалил или переименовал, я просто захожу в XML и вношу изменения. Пробуя что-то новое, я всегда делаю сохранение, как прежде, чем отправиться в непроверенном направлении. - person James Jenkins; 24.04.2013
comment
Спасибо, что нашли время, чтобы попытаться ответить на мой вопрос. Как я уже сказал, этот вопрос задавали давно, но на момент, когда я его задал, я уже написал более 100 отчетов BIRT. Поэтому я прекрасно понимал, что за отчетом стоит XML. Все отчеты также были переведены в SVN, а Eclipse позволяет отслеживать локальную историю, и все это я использовал. Вы можете видеть в вопросе, что я также добавил точку останова и попытался отладить проблему. При этом BIRT, возможно, выпустил новые версии с тех пор... (продолжение в следующем комментарии) - person Asaf; 24.04.2013
comment
(продолжение) Поскольку вы предоставили несколько ссылок на примеры и объяснили, и поскольку у меня нет времени на проверку, я приму ваш ответ. Спасибо за помощь. Наконец, я вспоминаю, что решил эту проблему, проигнорировав мастер-страницу и просто добавив заголовок в основной документ. В итоге он появился только на первой странице, конечно. - person Asaf; 24.04.2013