介绍

Jaspersoft:这是基于Eclipse软件开发的图形化报表设计工具。

疾速上手

创立我的项目与模板

  1. 创立我的项目
  2. 抉择我的项目类型
  3. 输出项目名称
  4. 创立模板
  5. 抉择模型
  6. 模板名称

我的项目目录构造展现

OutLine元素列表

根本元素

<font color="red">模板参数(罕用)</font>


Report Name : 模板名称,留神,如果你复制了一份模板文件,这个中央是没有批改的。
Description : 模板形容,这个模板文件是干什么的,起正文作用。
Language : 有三种 Java | groovy | javascript, 这里指定报表表达式应用的语言。
Imports : 引入其余包,自定义,或者第三方
Format Factory Class : 翻译 (指定实现要与此报表一起应用的接口的类的名称。如果省略,将创立的实例)
When No Data Type: (当打印的报表数据源中没有数据的状况下,也就是数据源为空的状况下)
null: 默认,不抉择。
No Pages: 不打印数据。
Blank Pages:返回一个空白的页面。
All Sections No Detail: 打印除了Detail 之外的所有页面。
No Data Section: 把No Data的Band 的也打印进去。
Report 属性 形容
Title On A New Page 示意 Tilte Band 独自一页打印。
Summary On A New Page 示意 Summary 独自一页打印。
Summary With Page Header And Footer 示意在Sumnmary最初一页,也显示Header头 和 Footer脚
Float Column Footer 在最初一页,Column Foot(列脚)是否紧挨着最初一个Details
Ignore Pagination 疏忽分页
Create bookmarks 创立书签
Dataset 参数
When Resource Missing Type:(当资源的属性谬误时)
Null: 默认,为Null。
Empty: 为空。
Key: 输入key
Error:报错,异样。
Scriptlet Class: (网上百度)自定义scriptlet,可在报表生成时自定义一些行为。
Resource Bundle: 资源绑定,报表所用资源文件。
Default Data Adapter: 默认数据源,在这里,能够抉择数据源配置在哪里
_
数据源配置

Page Format:报表格式化

简略报表

新建模板

  1. 保留Title和Detail1
  2. 配置主表中的数据源和查问集
  3. 如图
  4. 能够通过vairiable变量表达式进行汇集函数运算的作用

    <font color="red">主报表与子报表互相传参</font>

    主报表配置

    为什么应用主报表和子报表?
    因为Detail1代表一条数据,所以须要展现一对多的款式(要求居中垂直)时只凭一张报表无奈胜任,这个时候应用subreport组件就是解决方案之一,然而编译的时候会将子报表也进行编译。

  5. 款式配置
  6. 配置数据源

    子报表配置

  7. 款式配置
    只须要保留Detail即可

    依据报表的格局进行设置,将Detail的宽度和高度和外面的元素大小保持一致
  8. 创立参数
    须要和主报表传过来的参数保持一致,主报表中的参数前面会讲到如何设置。
    将子报表配置放在后面是因为在拖拽subreport时须要抉择已存在模板。
  9. 配置数据源和查问条件
    右键OutLine中以后报表,抉择 DataSet and Query...
    选项
  10. 预览

    在主报表中配置SubReport组件

  11. 拖拽SubReport组件至主报表中
  12. 抉择文件

  13. 抉择雷同连贯
  14. 设置参数

    <font color="red">细节调整</font>

  15. 如果主表中的表格高度无奈匹配子报表中的数据,那么须要手动设置主表单元格的参数
    1.1 更改Position Type
    1.2 更改Stretch Type
    如图

    主报表的表格动静高度设置

    <font color="red">报表上传时的注意事项</font>

  16. 目前须要将奴才报表进行打包成zip格局
  17. 须要在压缩包里存在一个xml文件,用来形容奴才报表的关系,示例如下

    <jrxml name="Main"><item name="Sub"/></jrxml>

    <font color="red">合并行内容的第二种计划:应用CrossTable组件</font>

    应用crosstable的须要提前设计好表格的款式(须要展现多少个属性,展现在什么中央)
    CrossTab须要放在Summry的Band中

    应用sql语句查问的时候多搁置一个字段

    select uname,itemname,insure,insurepor,opermoney,extramoney,opermorate,1 a  from insure where   opermoney >$P{condition}order by uname

    设置横列

    用多余的就能够,留神是否须要total

    设置竖列

    展现多少个属性

    设置穿插值

    用竖列的其中一个属性就能够

    设置Cloumn group高度

    设置高度为0px

    设置程度居中、垂直居中

    合并行的第三种计划:勾销属性Print Repeated Values(不举荐)

    这种计划只是提供一种思路,倡议还是通过subreport或者crosstable组件来实现行的合并

    报表款式配置


    一般来说须要合并的都会展现在最右边

    设置属性


    将Print Pepeated Values这一项设置勾销勾选

    退出一个Line组件

    因为左侧会勾销打印反复的行,所以这个时候的左侧除第一行外会空进去一部分,所以须要退出一个Line组件并设置location和size为float和ContainerBottom。

    <font color="red">应用Table组件</font>

  18. 拖拽Table组件
  19. 配置数据源
    右键DataSet1和主报表中设置数据源的形式统一。
  20. 合并单元格

    细节调整

  21. table组件的detail不能超过主报表中的高度,否则会报错
  22. 设置variable变量来进行聚合运算的时候将表达式转换为数值型,否则可能不会失效

    柱状图和饼图

    柱状图

  23. 应用Chart组件,抉择BarChart
  24. 设置四维参数 Series、Value、Category和Label
    与常见统计的highchart和echart相似
    假如我要统计1991年到2021年各产业的GDP,Value就是只GDP的具体数值,Category就是指年份[1991~ 2021],而Series就是指第一产业到第三产业。
    注:label一般来说不须要关注,如果只显示最初一个值的话那么就将Lable和Category设置成一样的。

    留神:value为数值类型如Long、Double等,否则预览时会出错。
  25. 创立DataSet并传递参数

    点击上一步的DataSet中的parameters就能够设置参数
    须要向以后的SubDataSet中传入参数,能够是Main DataSet中的Fields中的其中一个属性。
  26. 如果是单柱状图,则不须要Series,将Properties中的Show Legend设置为false。

    饼图

  27. 应用Chart组件,抉择PieChart
  28. 设置Series、Key、Lable、Value
  29. 设置DataSet
    和柱状图一样依据须要传递参数
    <font color="red">肯定要设置图表的字体,以后电脑的字体和与服务器反对的字体不统一,所以须要手动设置字体</font>

    报表平台上传模板文件

  30. 查看是否有对应数据源,如果没有须要新建
  31. 报表治理中上传
  32. 实例化
  33. 预览

    SpringBoot中集成Jaspersoft

    新建SpringBoot我的项目

    导入依赖

    增加模板的动态资源

    在生成pdf时可能会有乱码的问题呈现,所以须要增加字体的动态资源

    在应用Jaspersoft软件的过程中也须要设置字体

  34. 将字体文件增加到字体库中
  35. 批改模板格局
  36. 调用export办法生成html或者pdf