当前位置: 代码迷 >> 报表 >> 咨询一个复杂表格实现的思路
  详细解决方案

咨询一个复杂表格实现的思路

热度:84   发布时间:2016-05-05 07:43:13.0
咨询一个复杂报表实现的思路
在一个项目中,客户有个要求.就是报表显示的维度可自定义.
比如以区域.部门.年份.行业等各种方式来显示,并且维度的深度不限,各维度之间可以交叉.
在JAVA领域,达到这种目的有什么好的开源报表工具吗?

另外,要能显示柱状.饼状.曲线等图,同时能将报表导出WORD.PDF,这都是基本要求.

谢谢!!
------解决方案--------------------
引用:
在一个项目中,客户有个要求.就是报表显示的维度可自定义.
比如以区域.部门.年份.行业等各种方式来显示,并且维度的深度不限,各维度之间可以交叉.
在JAVA领域,达到这种目的有什么好的开源报表工具吗?

另外,要能显示柱状.饼状.曲线等图,同时能将报表导出WORD.PDF,这都是基本要求.

谢谢!!

1、这个问题首先要明确,你们公司是用商用报表工具还是开源的报表工具,如果是商用报表工具,不在我们讨论范围之内,因为完全有理由选择一家技术支持比较好点的。如果是开源的JasperReport是一种选择,当然功能相对单调。
2、用户需要自定义不同维度,这个不是一个非常苛刻的需求,可以说是一个比较正常的需求。

------解决方案--------------------
自定义一个xml,将自定义的维度设成变量。这样就可以根据页面的自定义维度来动态的显示数据了。
关于柱状、饼状、曲线图就更好弄了,查询结果都出来了,出图就easy了。至于导出可对查询出来的数据进行封装,根据要求,直接调用对应的导出方法。
------解决方案--------------------
不必用专门的报表工具,现有的报表工具通常很难满足所有要求,操作性、可定制性很难满足具体的项目需求。

我推荐使用xml + xsl以html格式来显示报表,特点就是灵活,什么功能都可以实现因为网页无所不能。 xml用来存储报表数据,xsl是样式表,以html方式展现报表,可以随意定制报表样式,当然xsl还可以写脚本访问数据库等。 通过IE打开xml就可以展现html样式报表了,打印就自然不成问题了,如果要保存成word、pdf需要配合IE控件、word com组件来使用,方法就是调用IE控件的拷贝全部页面功能,然后再调用word com组件的粘贴功能,再调用word com组件的另存功能这样就可以把网页的报表保存成word格式了,要保存pdf再安装一个office 2007 pdf插件就行了。 网上有很多介绍xsl的资料。
  相关解决方案