JasperReports — це відкритий інструмент звітності для Java, який генерує звіти про додатки. Цей інструмент звітності підтримує експорт насиченого контенту звітів на екрани, принтери або різні формати файлів, такі як HTML, PDF, XLS, RTF, CSV, XML, ODT та TXT.
JasperReports також може використовуватися для додатків з підтримкою Java, таких як Java EE, або веб-додатків для створення динамічного контенту.
Встановити JasperReports
Встановіть Jasper Reports Community Edition звідси.
https://community.jaspersoft.com/community-download
Структура звіту Джаспера
Шаблон звіту .jrxml складається з наступних частин, як показано на діаграмі нижче.
1. Заголовок містить «заголовок» звіту. Вона з'являється лише один раз на початку звіту. Наприклад, звіт має назву «Студентський звіт».
2. Назва сторінки може містити інформацію про дату і час або назву закладу. Вона відображається у верхній частині кожної сторінки. Наприклад: назва сторінки може бути «Студентські записи».
3. Заголовки стовпців містять назви конкретних полів, які мають відображатися у звіті, таких як «Студентський посвідчення», «Ім'я студента», «Адреса студента» тощо.
4. Розділ детальної інформації показує записи для конкретних полів. Наприклад: Student ID=101, Student Name="den peek", Student Address="Pune".
5. Колонкові фундаменти можуть відображати суму будь-якого поля. Наприклад, «Загальний час навчання: 6 годин на день.»
6. У підніжжі може бути інформація про номер сторінки. Вона відображається внизу кожної сторінки, наприклад: «Номери сторінок 1, 2, 3 та всі номери сторінок.»
7. Анотація: Резюме звіту, написане принаймні один раз у анотації.
JasperReports — Життєвий цикл
Розробка звіту — На цьому етапі ми створимо файл JRXML, який є XML-документом із визначенням верстки звіту. Звіт про компіляцію — на цьому етапі JRXML компілюється у бінарний об'єкт під назвою Jasper (*.jasper). Заповнення даних у звіти — на цьому етапі дані з додатку заповнюються у складений звіт. Клас net.sf.jasperreports.engine.JasperFillManager надає необхідні функції для заповнення даних звіту. Система створює файл друку Jasper (*.jrprint), який можна використовувати для друку або експорту звітів. Звіт про експорт — на цьому етапі ми можемо використати JasperExportManager для експорту файлу друку, створеного на попередньому етапі, у будь-який формат.
Клас API
Існує багато класів для компіляції JRXML-звітів, заповнення звітів, друку звітів, експорту їх у форматі PDF, HTML та XML.
Який контент міститься у пакеті (net.sf.jasperreports.engine)?
· JasperCompileManager — використовується для компіляції шаблонів звітів JRXML. · JasperFillManager — використовується для заповнення звітів, використовуючи дані з джерел даних. · JasperPrintManager — використовується для друку документів, згенерованих бібліотекою JasperReports. · JasperExportManager — використовується для отримання PDF, HTML або XML-контенту документів, створених під час процесу заповнення звіту.
Джерело даних
Джерело даних — це структурований контейнер даних. Під час генерації звітів рушій JasperReports отримує дані з джерела даних. Дані можна отримати з баз даних, XML-файлів, масивів об'єктів та колекцій об'єктів.
Таблиця нижче узагальнює джерела даних та їх класи впровадження—
Елементи даних Jasper Reports
Параметри: $P $P{parameter_name)
· Вона використовується для індивідуальних цінностей у звіті.
· Дані, які не можуть бути передані через джерело даних, можуть проходити через параметри. Наприклад, назви звітів та інші дані.
· Шаблони JasperReports або JRXML можуть містити нуль або більше елементів параметрів.
Поле: $F $F{field_name}
· Поля звіту — це елементи, які відображають відображення даних між джерелами даних і шаблонами звітів.
Він використовується для зміни значень у кожній ітерації, іншими словами, для представлення рядка даних у таблиці.
Змінна: $V $V{variable_name}
· Він надається Jasper Reports.
Він також використовується для виконання обчислень на звітах Джаспера, таких як арифметичні операції.
Кроки для створення будь-якого звіту Jasper
1. Спроєктуйте шаблон, скопіювавши файл jrxml у папку Spring Resources
2. Створіть необхідні параметри
3. Створення джерел даних
4. Скомпілюйте шаблон .jrmxl, збережений у об'єкті JasperReport
5. Заповніть звіт — передаючи скомпільовані .jrxml-об'єкти, параметри та джерела даних.
6. Експортні звіти — використовуйте JasperExportManager
Приклад SpringBoot — JasperReports
Додайте залежності Maven.
Контролер
Служба
emp24.jrxml
Після запуску ви отримаєте згенерований звіт.http://localhost:8990/empapp/api/v1/reports/jasper/emp24?fileType=doc
JasperReports — приклад представлення підзвіту
Для підзвітів відкрийте існуючий шаблон emp.jrxml і додайте ще один шаблон user.jrxml як підзвіт.
Щоб додати дочірній звіт до основного звіту, відкрийте основний звіт, натисніть на дочірній звіт із панелі, перетягніть його до розділу підсумку та введіть такі деталі.
Виберіть «Створити лише дочірні елементи звіту», потім натисніть «Далі». Не використовуйте жодних з'єднань з базою даних, а потім переходьте до наступного кроку і завершуйте. Клацніть правою кнопкою миші > вирівняти > адаптувати до формату ширини/таблиці
Для підзвітів User.jrxml ми передаватимемо дані підзвіту з основного звіту як параметр. Щоб досягти цього, нам потрібні ......
Створіть новий параметр, наприклад subReport і тип даних JasperReport, як у головному звіті Створити нові параметри для subDatasource і типу даних JRBeanCollectionDataSource Створити нові параметри, підПараметри та тип даних Map
Тепер відкрийте властивості підзвіту
Вилучити $P{REPORT_CONNECTION} Вираз: $P{subReport} Вираз параметричного відображення: $P{subParameters} Вираз джерела даних: $P{subReportDataSource}
Тепер будь-які дані, які ми передаємо як параметр, будуть заповнені у підзвіті.
Приклад коду
empSubreport.jrxml
Перевірте його:http://localhost:8990/empapp/api/v1/reports/jasper/subreport?fileType=pdf
Посилання:Вхід за гіперпосиланням видно. Оригінальний:Вхід за гіперпосиланням видно. |