«Документ не имеет страниц» в iReport и ничего в OpenReports - PullRequest
3 голосов
/ 05 мая 2010

У меня проблема с JasperReports, которую я не могу решить. Я использую Eclipse, OpenReports 3.2 и IReport 3.7

У меня проблема в том, что отчет ничего не делает. При предварительном просмотре отчета в IReport я, по крайней мере, могу получить сообщение «В документе нет страниц», но когда я пытаюсь открыть его с помощью OpenReports, он ничего не делает. Я получаю заголовок открытых отчетов и сообщение об авторских правах, но между ними ничего нет.

Мне удалось отследить его до строки 150 в ReportRunAction.java в OpenReports. Эта строка:

jasperPrint = jasperEngine.fillReport(reportInput);

По крайней мере, это та строка, на которой умирает страница. Он отключает блок catch, внутри которого находится строка, но ошибка пуста. Когда я пытаюсь напечатать описание, оно пустое. Я не могу поклясться, что проблема не в этом параметре. Посмотрев вокруг, все, что я смог найти, кое-что о том, как отчет должен быть скомпилирован с той же версией jasperreports.jar, которую использует OpenReports. Я понятия не имею, как сказать, если / какая версия отчетов jasper включена в файл .jasper, хотя.

Это моя проблема? Если так, как я могу сказать / установить версию баночки, которая идет в комплекте? Если не; помощь!

Ответы [ 6 ]

4 голосов
/ 03 ноября 2017

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

Есть несколько вещей, которые вы можете попробовать:

  1. установить выражение фильтра на:

    new Boolean (true)

Это каким-то образом сбрасывает выражение вашего фильтра.

  • Щелкните правой кнопкой мыши по отчету о яшме
  • свойства
  • найди больше. ..

    и установите для свойства отчета «Когда нет данных» на «Все разделы без подробностей» , чтобы вы могли видеть хотя бы остальную часть отчета.

Спасибо.

3 голосов
/ 05 мая 2010

Если вы используете подробный бандепорт, то вам понадобится запрос данных для отчета. Так как он возвращает «Нет страниц» в iReport, у вас нет запроса. Или просто ваш запрос не возвращает никаких строк.

В старом iReport в меню «Данные» выберите «Запрос отчета» и напишите здесь свой запрос. Если вам нужна только одна запись (то есть детальная полоса только один раз), вы можете использовать фиктивную таблицу. Как:

SELECT 'a' FROM DUMMY

В противном случае, если вы не хотите использовать подробный диапазон, у вас есть возможность просмотреть другие диапазоны без использования запроса. В меню Edit выберите Report Properties, на вкладке More... установите флаг When no data на All Sections, no detail

Ваша проблема не в исключениях или ошибках, просто нет данных для отображения.

1 голос
/ 19 марта 2015

Любой пустой источник данных тоже справится с задачей.

0 голосов
/ 14 февраля 2017

У меня была такая же проблема, и после поиска я обнаружил, что не предоставил пароль для подключения.

поэтому я добавляю эти строки в свой код Java.

Class.forName("com.mysql.jdbc.Driver");
con =DriverManager.getConnection("jdbc:mysql://localhost:3306/stock_mngt","root","your password");

теперь мой код работает.

0 голосов
/ 18 сентября 2016

Я уже давно сталкиваюсь с этой ошибкой. В моем случае эта ошибка произошла из-за изображения. Если у вас есть изображения в файле отчета, вы будете вынуждены заполнить изображение действительными данными, когда вы хотите использовать отчет. Если вы этого не сделаете, вы увидите эту ошибку «Документ не имеет страницы». Для решения этой проблемы просто установите поле «on error type» в окне свойств (просто нажмите на изображение, которое вы увидите в окне свойств) на «blank».

Сильное желание.

0 голосов
/ 07 мая 2010

Я столкнулся с той же ошибкой при использовании IReports, когда у меня был вложенный отчет, который содержал только другие вложенные отчеты и не содержал фактического запроса. Добавление фиктивного запроса в соответствии с рекомендациями medopal исправляет ошибку no pages и позволяет всем работать правильно.

Смотри также: http://jasperforge.org/plugins/espforum/view.php?group_id=83&forumid=101&topicid=49315

...