Skip to content
lixia edited this page Jun 30, 2014 · 12 revisions

概要说明

对于图表/报表,框架涉及如下几方面:

Chart/Plot: 对于一些客户需要很炫的在线图表功能,虽然Flash不失为一个选择,但是更倾向于类似linkJQuery Flot这样的Javascript插件。

JasperReport: JasperReport通过多种组合工具可以支持绝大部分不同层面的企业报表需求:

Applet:一般报表/单据都涉及打印需求,尤其还涉及到像快递单这样的套打票据,需要精确控制打印尺寸和纸张方向等特性,一般单纯的浏览器客户端无法提供这些特性,一些常见的解决方案是包括借助额外的C/S程序或者ActiveX浏览器控件等。JasperReport提供一个基于Applet的JRViewer组件,虽然基于Applet的实现方式也饱受诟病,包括需要用户机器安装JRE,下载一系列JAR组件,浏览器权限配置等,但是结合一些项目的经验和各方面因素综合考虑,在不考虑带宽等限制,一致的系统开发实施管理流程等,对于一般运行与企业内网的企业应用,采用Applet方案也算是个不错的选择。Applet需要客户端安装JRE运行环境及相关配置,具体可参考报表预览页面的提示链接“如果无法正常显示报表组件,请点击查看配置说明”,按照安装配置说明一步步配置客户端运行环境。

框架采用JasperReport+Applet方式实现打印报表的在线预览/在线编辑/多格式数据导出/精确套打等常见业务需求,目前此套方案已在实际项目中使用,可以实现常见的发货单/快递单等单据的针式打印的准确分页切纸走位。框架在JRViewer Applet基础上扩展,提供一个比较常见的个性需求:在预览界面,可以方便的 在线修改相关数据,以便以修改后的数据直接打印或导出数据。另外,框架扩展做了 报表的缓存和刷新检测处理,自动检测JasperReport的jrxml模板文件的时间戳,如果有更新则重新编译缓存报表文件,便于开发和生产环境的随时更新报表模板定义。

订单销售趋势图

TODO 基于JQuery Flot的销售趋势图,折线图/饼状图/柱状图等

商品条码清单

对于进销存系统,一般会配备扫描枪快速录入商品,实际操作无需把一堆实物商品堆在工位,可以通过打印常用销售商品的条码清单,只需简单扫描纸质清单列表上的商品条码即可快速录入商品条码。

模板文件路径:prototype/src/main/webapp/WEB-INF/template/jasper/COMMODITY_BARCODE_LIST.jrxml

  • Jaspersoft Studio报表可视化设计,对于需要提供在线编辑的属性,按照如下图设置超链接属性即可:

rpt-design

  • 在业务界面集成

rpt-select

  • 调用打印预览输出

rpt-preview

  • 在线修改可编辑属性(LinkType=XEdit)

rpt-xedit

  • 点击左上角的保存按钮,支持多种格式导出,如PDF,Excel等

rpt-export1

  • 导出到Excel文件,以便线下自由编辑使用

rpt-export2

(打印)销售发货单

rpt-sd1

rpt-sd2

(打印)物流快递单

典型的套打业务:

rpt-exp

Clone this wiki locally