Основываясь на ваших комментариях, кажется, что происходит одна из двух вещей.
1) У вас есть под-отчет, определенный в диапазоне Detail
файла шаблона.
В этом случае это не сработает. Полоса Detail
в файле шаблона должна быть пустой. Если это так, то более вероятно, что вы просто игнорируете то, что у вас есть, и делаете все остальное. За дополнительной информацией обращайтесь к HOW-TO Use custum jrxml templates.
2) dynamicReportBuilder.addConcatenatedReport(subreport);
не делает, что вы думаете.
Этот метод добавляет второй отчет в конец первого отчета. Подумайте об этом больше как о партии. Это то же самое, что установка значения для JASPER_PRINT_LIST
в качестве параметра экспорта при непосредственном использовании API отчетов Jasper. За дополнительной информацией обращайтесь к HOW-TO Add Concatenated Reports.
Dynamic Jasper - отличная библиотека, но на самом деле предназначена только для работы со стандартными табличными отчетами. Он поддерживает некоторые дополнительные функции, включая суб-отчеты, но может быть ограниченным.
Из того, что я могу найти до сих пор, возможно, вы можете добавлять только суб-отчеты в верхние и нижние колонтитулы групп. Таким образом, в вашем случае вам, вероятно, потребуется добавить группу для отчета сначала, используя GroupBuilder
. Затем вы можете добавить вспомогательный отчет в нижний колонтитул группы. Трюк для группы состоит в том, чтобы убедиться, что каждая строка станет ее собственной группой, выбрав соответствующие поля для группировки.
Вы можете посмотреть примеры кода в HOW-TO Add labels in group header and footer, чтобы посмотреть, как создавать группы.
Чтобы посмотреть, как добавить к отчету отчеты, вы можете использовать метод DynamicReportBuilder.addSubreportInGroupFooter()
. Для получения дополнительной информации об этой части и примере см. HOW-TO Add Subreports (fast way).
Другой вариант, который у вас есть, - не использовать Dynamic Jasper для этого конкретного отчета и просто использовать файлы jrxml и API Jasper Report для этого. Это может быть или не быть проще в зависимости от вашей установки.
Это не ясно, в вашем вопросе, что вы пытаетесь сделать. Можете ли вы объяснить больше или, может быть, создать картинку, чтобы попытаться объяснить, что именно вы пытаетесь сделать? –
Если я использую 'dynamicReportBuilder.setTemplateFile (TEMPLATE);' и 'dynamicReportBuilder.addConcatenatedReport (subreport);', чтобы вставлять вложенные отчеты в подробный отчет, который загружается из шаблона, предыдущие определенные элементы в диалоговом окне Детали шаблона отчета ива. Поэтому я ищу способ сохранить эти элементы. –