Бесконечный цикл в подотчете кросс-таблицы с длинным текстом - PullRequest
1 голос
/ 03 марта 2012

Хорошо, вот мои настройки.

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

Мне кажется, что это ошибка, но мне интересно, стоит ли мне идти к этому отчету иначе, чтобы избежатьЭта проблема.Возможно, есть еще один элемент управления, который я могу использовать для отображения динамических столбцов, таких как кросс-таблица, с поддержкой также более длинного текста?

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

Сообщение об ошибке:

ОШИБКА JRFillSubreport - Заполнить 1: исключение net.sf.jasperreports.engine.JRRuntimeException: Кросс-таблица не напечатала ничего на 3 последовательных страницах,вероятный бесконечный цикл

Ответы [ 2 ]

0 голосов
/ 05 марта 2012

У меня была проблема с бесконечным циклом в производственных системах при использовании отчетов Jasper - Crosstab. Я не мог знать точную причину, по которой это происходило, так как не было зарегистрировано ни одной ошибки / исключения. Единственный намек заключался в том, что это происходило только в нескольких случаях, когда данные столбца кросс-таблицы были длинными и должны были перетекать на следующую страницу. Я понял, что элементы с «растяжкой с переполнением» могут запутать движок Jasper и попасть в «бесконечный цикл». Понятно, что Crosstab не может сделать все, что вы просите, так как некоторые «растягивающие» функции нецелесообразны. Что касается дизайна моего отчета, я настроил немного кросс-таблицы, имея дополнительные элементы (занимающие дополнительное пространство) и некоторые элементы с функциональностью «Растянуть с переполнением».

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

0 голосов
/ 05 марта 2012

У меня была та же проблема, когда я использовал кросс-таблицу отчетов, так как некоторые из моих ячеек были 1,5К + символов ... Я обрисовал в общих чертах, как я это сделал здесь .

По сути, я использовал дополнительный набор данных, а не дополнительный отчет. Также самым важным для меня были значения высоты и ширины, которые я установил для элементов crosstabCell и reportElement.

Я обнаружил, что мне пришлось немного взломать XML, чтобы все заработало, но в итоге все работает.

Надеюсь, это поможет:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...