以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 Java/Eclipse 』  (http://bbs.xml.org.cn/list.asp?boardid=41)
----  用Java报表工具实现同期比[原创]  (http://bbs.xml.org.cn/dispbbs.asp?boardid=41&rootid=&id=77909)


--  作者:niceman007
--  发布时间:10/22/2009 3:09:00 PM

--  用Java报表工具实现同期比[原创]
同期比,指的是一个与时间相关的运算。

按此在新窗口浏览图片
上图[URL=http://www.finereport.com]报表[/URL]显示的就是在同一年内每一个月份与上一个月份的比值。

[B]下面我们来看一下实现上述报表的过程,工具[URL=http://www.finereport.com]finereport报表[/URL]
1.连接数据库frDemo
2.设计报表[/B]
2.1新建报表

2.2表样设计
按照下图设计好报表的基本框架

按此在新窗口浏览图片

2.3新建一数据集名为ds1
SQL语句:select 订单.订购日期,订单明细.单价,订单明细.数量,year(订单.订购日期)  as 订购年份,month(订单.订购日期) as 订购月份,订单明细.数量*订单明细.单价 as 订购金额 from 订单,订单明细 where 订单.订单ID = 订单明细.订单ID and 订单.订购日期 is not null

2.4绑定数据列

按此在新窗口浏览图片
按照下列表格将数据集的字段拖入对应单元格内,并作相应的设置。

按此在新窗口浏览图片

2.5同期比计算
    在D2中填入:’ =if(&D2==1 &&  &A2==1,,C2/C2[B2:-1])’
’ if(&D2==1 &&  &A2==1,,C2/C2[B2:-1])’:如果本记录为所在年份的第一个记录则为空,否则等于这个月的金额除以上个月的金额。层次坐标

3.保存预览
保存为
%FineReport_HOME%/WebReport/WEB-INF/reportlets/com/doc/4.4.cpt
启动服务器,在浏览器中输入以下地址进行浏览:
http://localhost:8079/WebReport/ReportServer?reportlet=/com/doc/4.4.cpt

[B]这样一张同期比的[URL=http://www.finereport.com]报表[/URL]图就做好了[/B]


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
4,607.422ms