Posted on 2011-10-31 15:20
FineReport——报表技术领跑者 阅读(301)
评论(0) 编辑 收藏 所属分类:
Java报表技术知识
函数定义规则
FineReport报表已经提供了大量的自带函数,在正常情况下足够满足用户的报表制作需求,但是在一些特殊领域,可能需要一些特殊的函数,在这种情况下,Java报表软件提供了自定义函数机制,可以由用户根据业务需要自己来定义一些函数,但这些函数必须满足FineReport函数定义规则。
FineReport函数定义规则:Functionname(Para,Para,...),其中Functionname为函数名,Para为参数。
函数原理
在FineReport报表中,每一个函数都被定义成一个类,这个类必须要实现Function这个接口,在运算的时候首先通过函数名反射取得这个类,然后调用它的run(Object[] agrs)方法。下面以SUM这个函数为例。
http://www.finereport.com/forumimages/e433.png
http://www.finereport.com/forumimages/e434.png
由程序可以看到,SUM类用来运算SUM函数,他继承了NormalFunction类,而NormalFunction实现了Function这个接口。
当函数运算的时候,先根据函数名取得运算该函数的类,如SUM(2,4,true)这个函数先根据函数名取得SUM这个类,然后调用SUM类的run(Object[] args)方法,args中存放的是SUM函数的参数,运算的时候可以从args中取得参数进行运算。如执行结果为SUM(2,4,true)=2+4+1=7。
自定义函数使用步骤
Java报表软件中自定义函数使用分为四个步骤,如下:
自定义函数
编译自定义函数
注册自定义函数
使用自定义函数
文章来自:http://blog.vsharing.com/fanfanzheng/A1438726.html